Spaces:
Sleeping
Sleeping
M2M100 translator
Browse files
app.py
CHANGED
@@ -1,6 +1,7 @@
|
|
1 |
from smolagents import CodeAgent,DuckDuckGoSearchTool, HfApiModel,load_tool,tool
|
2 |
#from googletrans import Translator
|
3 |
-
from deep_translator import GoogleTranslator
|
|
|
4 |
import datetime
|
5 |
import requests
|
6 |
import pytz
|
@@ -125,8 +126,23 @@ def native_language_translator(text: str, target_lang: str) -> str:
|
|
125 |
target_lang: Target language code (e.g., 'be', 'es', 'fr', 'zh')
|
126 |
"""
|
127 |
try:
|
128 |
-
|
129 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
130 |
except Exception as e:
|
131 |
return f"Translation failed: {str(e)}"
|
132 |
|
|
|
1 |
from smolagents import CodeAgent,DuckDuckGoSearchTool, HfApiModel,load_tool,tool
|
2 |
#from googletrans import Translator
|
3 |
+
#from deep_translator import GoogleTranslator
|
4 |
+
from transformers import M2M100ForConditionalGeneration, M2M100Tokenizer
|
5 |
import datetime
|
6 |
import requests
|
7 |
import pytz
|
|
|
126 |
target_lang: Target language code (e.g., 'be', 'es', 'fr', 'zh')
|
127 |
"""
|
128 |
try:
|
129 |
+
# Load the model and tokenizer
|
130 |
+
model_name = "facebook/m2m100_418M"
|
131 |
+
tokenizer = M2M100Tokenizer.from_pretrained(model_name)
|
132 |
+
model = M2M100ForConditionalGeneration.from_pretrained(model_name)
|
133 |
+
|
134 |
+
# Set the target language
|
135 |
+
tokenizer.src_lang = "en" # Assume input is in English
|
136 |
+
tokenizer.tgt_lang = target_lang
|
137 |
+
|
138 |
+
# Tokenize the input text
|
139 |
+
encoded_text = tokenizer(text, return_tensors="pt")
|
140 |
+
|
141 |
+
# Generate translation
|
142 |
+
generated_tokens = model.generate(
|
143 |
+
**encoded_text,
|
144 |
+
forced_bos_token_id=tokenizer.get_lang_id(target_lang)
|
145 |
+
translation = tokenizer.decode(generated_tokens[0], skip_special_tokens=True)
|
146 |
except Exception as e:
|
147 |
return f"Translation failed: {str(e)}"
|
148 |
|