ranbac commited on
Commit
ed1efd9
·
verified ·
1 Parent(s): d2cf0ca

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +29 -24
app.py CHANGED
@@ -1,35 +1,40 @@
1
  import gradio as gr
2
- from transformers import pipeline
3
 
4
- # Khởi tạo pipeline dịch thuật với mô hình Helsinki-NLP
5
- translator = pipeline("translation_zh_to_vi", model="Helsinki-NLP/opus-mt-zh-vi")
6
 
7
- def translate_zh_to_vi(text):
8
- # Xử lý trường hợp đầu vào rỗng
9
- if not text or text.strip() == "":
 
 
 
 
10
  return ""
11
-
12
- # Thực hiện dịch
13
- result = translator(text)
14
- return result[0]['translation_text']
15
 
16
- # Thiết lập giao diện Gradio
17
- interface = gr.Interface(
18
- fn=translate_zh_to_vi,
19
  inputs=gr.Textbox(
20
- lines=5,
21
- label="Nhập văn bản tiếng Trung (Chinese)",
22
- placeholder=" dụ: 你好,欢迎来到越南!"
23
  ),
24
  outputs=gr.Textbox(
25
- lines=5,
26
- label="Bản dịch tiếng Việt (Vietnamese)"
27
  ),
28
- title="Trình dịch Trung - Việt (Helsinki-NLP)",
29
- description="Ứng dụng dịch thuật sử dụng mô hình mã nguồn mở `Helsinki-NLP/opus-mt-zh-vi`.",
30
- theme="default",
 
 
 
 
 
31
  )
32
 
33
- # Khởi chạy ứng dụng
34
- if __name__ == "__main__":
35
- interface.launch()
 
1
  import gradio as gr
2
+ from transformers import MarianMTModel, MarianTokenizer
3
 
4
+ MODEL_NAME = "Helsinki-NLP/opus-mt-zh-vi"
 
5
 
6
+ print("Đang tải model...")
7
+ tokenizer = MarianTokenizer.from_pretrained(MODEL_NAME)
8
+ model = MarianMTModel.from_pretrained(MODEL_NAME)
9
+ print("Tải model thành công!")
10
+
11
+ def translate(text: str) -> str:
12
+ if not text.strip():
13
  return ""
14
+ inputs = tokenizer(text, return_tensors="pt", padding=True, truncation=True, max_length=512)
15
+ translated = model.generate(**inputs)
16
+ result = tokenizer.decode(translated[0], skip_special_tokens=True)
17
+ return result
18
 
19
+ demo = gr.Interface(
20
+ fn=translate,
 
21
  inputs=gr.Textbox(
22
+ lines=5,
23
+ placeholder="Nhập văn bản tiếng Trung...",
24
+ label="📝 Văn bản tiếng Trung (中文)"
25
  ),
26
  outputs=gr.Textbox(
27
+ lines=5,
28
+ label="🇻🇳 Bản dịch tiếng Việt"
29
  ),
30
+ title="🈶 Dịch Trung Việt",
31
+ description="Sử dụng model Helsinki-NLP/opus-mt-zh-vi để dịch văn bản từ tiếng Trung sang tiếng Việt.",
32
+ examples=[
33
+ ["你好,世界!"],
34
+ ["今天天气很好。"],
35
+ ["我想学习越南语。"],
36
+ ],
37
+ flagging_mode="never"
38
  )
39
 
40
+ demo.launch()