Update file

This commit is contained in:
2025-07-14 14:43:13 -05:00
parent 0861d33552
commit 658a2625da

View File

@ -1,20 +1,23 @@
async def translate_with_free_google(self, text: str, source_lang: str, target_lang: str) -> Optional[str]: # Strategy 1: Try local NLLB model first (best quality)
"""Translate using free Google Translate (no API key required)""" if self.nllb_model:
try: translated_text = await self.translate_with_nllb(text, source_lang, target_lang)
if not self.free_google_translator: if translated_text:
return None service_used = "nllb_local"
# Use the free Google Translate service # Strategy 2: Try free Google Translate (excellent quality, no API key)
result = self.free_google_translator.translate(text, dest=target_lang, src=source_lang) if not translated_text:
translated_text = await self.translate_with_free_google(text, source_lang, target_lang)
if result and result.text and result.text != text: if translated_text:
return result.text.strip() service_used = "google_free"
return None # Strategy 3: Try Argos Translate (offline backup)
if not translated_text:
except Exception as e: translated_text = await self.translate_with_argos(text, source_lang, target_lang)
logger.error("Error in free Google translation", if translated_text:
error=str(e), source=source_lang, target=target_lang) service_used = "argos_offline"
return None
# Strategy 4: Try MyMemory API (free online backup)
async def translate_with_argos(self, text: str, source_lang: str, target_lang: str) -> Optional[str]: if not translated_text:
translated_text = await self.translate_with_mymemory(text, source_lang, target_lang)
if translated_text:
service_used = "mymemory_free"