Update app.py
Browse files
app.py
CHANGED
|
@@ -10,18 +10,27 @@ base_model_name = "facebook/nllb-200-distilled-600M"
|
|
| 10 |
adapter_en_to_no = "entropy25/mt_en_no_oil"
|
| 11 |
adapter_no_to_en = "entropy25/mt_no_en_oil"
|
| 12 |
|
| 13 |
-
# 加载 tokenizer
|
| 14 |
tokenizer = AutoTokenizer.from_pretrained(base_model_name)
|
| 15 |
-
|
|
|
|
|
|
|
|
|
|
| 16 |
base_model_name,
|
| 17 |
torch_dtype=torch.float16,
|
| 18 |
low_cpu_mem_usage=True,
|
| 19 |
device_map="auto"
|
| 20 |
)
|
|
|
|
| 21 |
|
| 22 |
-
|
| 23 |
-
|
| 24 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 25 |
|
| 26 |
def translate(text, source_lang, target_lang):
|
| 27 |
if not text.strip():
|
|
|
|
| 10 |
adapter_en_to_no = "entropy25/mt_en_no_oil"
|
| 11 |
adapter_no_to_en = "entropy25/mt_no_en_oil"
|
| 12 |
|
| 13 |
+
# 加载 tokenizer
|
| 14 |
tokenizer = AutoTokenizer.from_pretrained(base_model_name)
|
| 15 |
+
|
| 16 |
+
# 方法1:为每个方向加载独立的基础模型
|
| 17 |
+
print("Loading English to Norwegian model...")
|
| 18 |
+
base_model_en_to_no = AutoModelForSeq2SeqLM.from_pretrained(
|
| 19 |
base_model_name,
|
| 20 |
torch_dtype=torch.float16,
|
| 21 |
low_cpu_mem_usage=True,
|
| 22 |
device_map="auto"
|
| 23 |
)
|
| 24 |
+
model_en_to_no = PeftModel.from_pretrained(base_model_en_to_no, adapter_en_to_no)
|
| 25 |
|
| 26 |
+
print("Loading Norwegian to English model...")
|
| 27 |
+
base_model_no_to_en = AutoModelForSeq2SeqLM.from_pretrained(
|
| 28 |
+
base_model_name,
|
| 29 |
+
torch_dtype=torch.float16,
|
| 30 |
+
low_cpu_mem_usage=True,
|
| 31 |
+
device_map="auto"
|
| 32 |
+
)
|
| 33 |
+
model_no_to_en = PeftModel.from_pretrained(base_model_no_to_en, adapter_no_to_en)
|
| 34 |
|
| 35 |
def translate(text, source_lang, target_lang):
|
| 36 |
if not text.strip():
|