Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -342,6 +342,21 @@ class Translators:
|
|
342 |
translated_text = '\n'.join(split_translated_text[:input_text.count('\n')+1])
|
343 |
return translated_text
|
344 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
345 |
@spaces.GPU
|
346 |
def translate_text(input_text: str, s_language: str, t_language: str, model_name: str) -> tuple[str, str]:
|
347 |
"""
|
@@ -424,6 +439,9 @@ def translate_text(input_text: str, s_language: str, t_language: str, model_name
|
|
424 |
|
425 |
elif model_name == "winninghealth/WiNGPT-Babel-2":
|
426 |
translated_text = Translators(model_name, s_language, t_language, input_text).wingpt()
|
|
|
|
|
|
|
427 |
|
428 |
except Exception as error:
|
429 |
translated_text = error
|
|
|
342 |
translated_text = '\n'.join(split_translated_text[:input_text.count('\n')+1])
|
343 |
return translated_text
|
344 |
|
345 |
+
def bergamot(model_name: str = 'deen', sl: str = 'de', tl: str = 'en', input_text: str):
|
346 |
+
try:
|
347 |
+
import bergamot
|
348 |
+
# input_text = [input_text] if isinstance(input_text, str) else input_text
|
349 |
+
config = bergamot.ServiceConfig(numWorkers=4)
|
350 |
+
service = bergamot.Service(config)
|
351 |
+
model = service.modelFromConfigPath(f"./{model_name}/bergamot.config.yml")
|
352 |
+
options = bergamot.ResponseOptions(alignment=False, qualityScores=False, HTML=False)
|
353 |
+
rawresponse = service.translate(model, bergamot.VectorString(input_text), options)
|
354 |
+
translated_text: str = next(iter(rawresponse)).target.text
|
355 |
+
message_text = f"Translated from {sl} to {tl} with {model_name}."
|
356 |
+
except Exception as error:
|
357 |
+
response = error
|
358 |
+
return translated_text, message_text
|
359 |
+
|
360 |
@spaces.GPU
|
361 |
def translate_text(input_text: str, s_language: str, t_language: str, model_name: str) -> tuple[str, str]:
|
362 |
"""
|
|
|
439 |
|
440 |
elif model_name == "winninghealth/WiNGPT-Babel-2":
|
441 |
translated_text = Translators(model_name, s_language, t_language, input_text).wingpt()
|
442 |
+
|
443 |
+
elif model_name == "Bergamot":
|
444 |
+
translated_text, message_text = bergamot(model_name, s_language, t_language, input_text)
|
445 |
|
446 |
except Exception as error:
|
447 |
translated_text = error
|