angular-translator / worker-ETMOXAVA.js
charlycop's picture
Upload 8 files
1e5a0aa verified
raw
history blame contribute delete
No virus
683 Bytes
import*as i from"https://cdn.jsdelivr.net/npm/@xenova/transformers@2.14.0";var{pipeline:o}=i,e=class{static task="translation";static model="Xenova/opus-mt-en-fr";static instance=null;static async getInstance(t=null){return this.instance===null&&(this.instance=await o(this.task,this.model,{progress_callback:t})),this.instance}};self.addEventListener("message",async a=>{let t=await e.getInstance(s=>{self.postMessage(s)}),n=await t(a.data.text,{top_k:0,do_sample:!1,num_beams:1,callback_function:s=>{self.postMessage({status:"update",output:t.tokenizer.decode(s[0].output_token_ids,{skip_special_tokens:!0})})}});self.postMessage({status:"complete",output:n[0].generated_text})});