shikata4622 commited on
Commit
fd2ee5f
·
verified ·
1 Parent(s): 28c5b8c

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +35 -0
app.py ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ from transformers import MBartForConditionalGeneration, MBart50TokenizerFast
3
+
4
+ # Load model and tokenizer
5
+ model_name = "facebook/mbart-large-50"
6
+ model = MBartForConditionalGeneration.from_pretrained(model_name)
7
+ tokenizer = MBart50TokenizerFast.from_pretrained(model_name)
8
+
9
+ def translate(text, direction):
10
+ if direction == "Arab → Indonesia":
11
+ src_lang = "ar_AR"
12
+ tgt_lang = "id_ID"
13
+ else:
14
+ src_lang = "id_ID"
15
+ tgt_lang = "ar_AR"
16
+
17
+ tokenizer.src_lang = src_lang
18
+ inputs = tokenizer(text, return_tensors="pt", padding=True, truncation=True)
19
+ generated_tokens = model.generate(**inputs, forced_bos_token_id=tokenizer.lang_code_to_id[tgt_lang])
20
+ translation = tokenizer.batch_decode(generated_tokens, skip_special_tokens=True)[0]
21
+ return translation
22
+
23
+ # Define UI
24
+ demo = gr.Interface(
25
+ fn=translate,
26
+ inputs=[
27
+ gr.Textbox(label="Masukkan teks"),
28
+ gr.Radio(["Arab → Indonesia", "Indonesia → Arab"], label="Arah Terjemahan")
29
+ ],
30
+ outputs=gr.Textbox(label="Hasil Terjemahan"),
31
+ title="Penerjemah Arab - Indonesia dengan mBART50",
32
+ description="Masukkan teks dalam bahasa Arab atau Indonesia dan pilih arah terjemahan."
33
+ )
34
+
35
+ demo.launch()