Arrcttacsrks commited on
Commit
7c97d72
1 Parent(s): 19017a0

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 AutoTokenizer, AutoModelForSeq2SeqLM
3
+ import torch
4
+
5
+ # Tải mô hình và tokenizer
6
+ model_name = "VietAI/envit5-translation"
7
+ tokenizer = AutoTokenizer.from_pretrained(model_name)
8
+ model = AutoModelForSeq2SeqLM.from_pretrained(model_name)
9
+
10
+ # Chuyển mô hình sang GPU nếu có
11
+ device = "cuda" if torch.cuda.is_available() else "cpu"
12
+ model = model.to(device)
13
+
14
+ # Hàm dịch ngôn ngữ với tùy chọn ngôn ngữ
15
+ def translate(text, language):
16
+ prefix = "vi: " if language == "Tiếng Việt -> Tiếng Anh" else "en: "
17
+ inputs = tokenizer(prefix + text, return_tensors="pt", padding=True).input_ids.to(device)
18
+ outputs = model.generate(inputs, max_length=512)
19
+ translation = tokenizer.decode(outputs[0], skip_special_tokens=True, clean_up_tokenization_spaces=True)
20
+ return translation
21
+
22
+ # Tạo giao diện với Gradio và thêm nút chọn ngôn ngữ
23
+ interface = gr.Interface(
24
+ fn=translate,
25
+ inputs=[
26
+ gr.Textbox(label="Nhập văn bản cần dịch"),
27
+ gr.Dropdown(choices=["Tiếng Việt -> Tiếng Anh", "Tiếng Anh -> Tiếng Việt"], label="Chọn ngôn ngữ")
28
+ ],
29
+ outputs="text",
30
+ title="Ứng dụng dịch ngôn ngữ",
31
+ description="Dịch từ tiếng Việt sang tiếng Anh và ngược lại."
32
+ )
33
+
34
+ # Khởi chạy ứng dụng
35
+ interface.launch()