Sugerencias automáticas¶
Distinto en la versión 4.13: Antes de Weblate 4.13, los servicios se configuraban en la Configuración.
Se ha incorporado el apoyo a varios servicios de traducción automática y memoria de traducción. Cada servicio puede ser activado por el administrador para toda la página (en Sugerencias automáticas en Interfaz administrativa) o en los ajustes del proyecto:
Nota
They come subject to their terms of use, so ensure you are allowed to use them how you want. Third-party services can receive source strings, translations, and related context from Weblate.
Los servicios se traducen del idioma de origen según lo configurado en Configuración de componentes, consulte Idioma del código fuente.
La sugerencia automática por proyecto también se puede configurar a través del API REST de Weblate.
Ver también
Prioridad de los servicios de traducción automática y memoria de traducción¶
Memoria de Traducción Weblate las coincidencias con una puntuación del 100% tienen prioridad sobre los servicios de traducción automática. Si se encuentra una coincidencia del 100% en la memoria de traducción, no se realiza traducción automática. Si se producen varias coincidencias del 100%, se utiliza la primera devuelta por la base de datos.
Cada servicio de traducción automática tiene una puntuación máxima predefinida que puede generar. El uso de los servicios de traducción instalados se ordena según su puntuación máxima. Para cada cadena con una puntuación de traducción inferior al máximo del servicio, se le solicita al servicio que produzca una traducción. Se aceptan traducciones con una puntuación superior a la actual.
Cadenas de origen para la traducción automática¶
Added in version 5.11.
Se puede configurar el origen de las cadenas de origen para todos los servicios de terceros. Esto se puede utilizar para modificar el servicio y obtener los mejores resultados. Las siguientes opciones están disponibles:
- Selección automática
Elige el mejor idioma de origen automáticamente.
Este es el comportamiento por defecto.
- Idioma del componente origen
Utiliza el componente del idioma origen.
Este fue el comportamiento antes de la liberación de 5.11.
- Idioma secundario definido en el proyecto o componente
Emplea proyecto Idioma secundario o componente Idioma secundario.
Vuelve a la sección automática del idioma origen en el idioma secundario no configurado.
LLM translation context¶
LLM-based automatic suggestion services receive additional context about each translated string, when available. This includes the string context or monolingual key, additional explanation, configured secondary-language translation, plural information, failing quality checks, and placeholder contents. The added metadata is used only to guide the generated suggestion; the returned translation still has to preserve the source placeholders and markup.
Alibabá¶
Added in version 5.3.
- Identificación del servicio:
alibaba- Puntuación máxima:
80
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componentekeyIdentificador de la clave de acceso
secretsecret de la clave de acceso
regionID de la región
Alibaba Translate es un servicio de traducción automática neuronal para traducción de texto y admite hasta 214 pares de idiomas.
Ver también
Antrópico¶
Added in version 5.16.
- Identificación del servicio:
anthropic- Puntuación máxima:
90
- Características avanzadas:
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componentebase_urlURL de API Anthropic
URL de base del API de Anthropic. Déjelo vacío para utilizar la URL por defecto.
modelModelo Anthropic
Elecciones disponibles:
claude-sonnet-4-5– Claude Sonnet 4.5 (Recomendado)claude-haiku-4-5— Claude Haiku 4.5claude-opus-4-5— Claude Opus 4.5custom– Modelo adaptadopersonaTraductor
Describe la personalidad del traductor para mejorar la precisión de la traducción. Por ejemplo: «Eres un criador de ardillas.»
styleEstilo de traductor
Describe el estilo de traducción. Por ejemplo: «Utilice un lenguaje informal.»
keyClave API
custom_modelNombre del modelo personalizado
Solo es necesario cuando el modelo está configurado como “Modelo personalizado”
max_tokensMáx de vales
Número máximo de vales para generar en la respuesta.
Realiza la traducción usando modelos Anthropic’s Claude.
El API de Anthropic proporciona acceso a la familia de modelos Claude, los cuales se conocen para sus sólidas capacidades de razonamiento y lenguaje. Necesita una clave API de Anthropic para usar este servicio.
Utilice campos de persona y estilos para más tarde ajustar traducciones. Esto será utilizado en una solicitud para Claude y le concede cambiar el estilo de las traducciones.
El servicio utiliza automáticamente Glosario, ver Glosarios en sugerencia automática.
Ver también
APy de Apertium¶
- Identificación del servicio:
apertium-apy- Puntuación máxima:
88
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componenteurlURL DE API
Una plataforma de traducción automática de software libre que proporciona traducciones a un conjunto limitado de idiomas.
La forma recomendada de usar Apertium es ejecutar su propio servidor Apertium-APy.
Ver también
Traductor de Amazon¶
- Identificación del servicio:
aws- Puntuación máxima:
88
- Características avanzadas:
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componentekeyIdentificador de la clave de acceso
secretClave secreta de la aplicación
regionNombre de la región
El traductor de Amazon es un servicio de traducción automática neuronal para traducir texto desde y hacia el inglés en una amplia gama de idiomas compatibles. El servicio requiere la Directiva de Gestión TranslateFullAccess.
El servicio utiliza automáticamente Glosario, ver Glosarios en sugerencia automática.
Azure OpenAI¶
Added in version 5.8.
- Identificación del servicio:
azure-openai- Puntuación máxima:
90
- Características avanzadas:
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componentebase_urlURL DE API
modelModelo LLM
personaTraductor
Describe la personalidad del traductor para mejorar la precisión de la traducción. Por ejemplo: «Eres un criador de ardillas.»
styleEstilo de traductor
Describe el estilo de traducción. Por ejemplo: «Utilice un lenguaje informal.»
keyClave API
azure_endpointURL del punto final de Azure OpenAI
URL del punto final de la instancia, por ejemplo: https://my-instance.openai.azure.com.
deploymentImplementación de Azure OpenAI
Nombre único de despliegue del modelo.
Realiza una traducción utilizando OpenAI hospedada en Azure.
Ver también
Baidu¶
- Identificación del servicio:
baidu- Puntuación máxima:
90
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componentekeyIdentificación del cliente
secretSecreto del cliente
Máquina de servicio de traducción proporcionada por Baidu.
Este servicio utiliza un API y necesita obtener un clave ID y API desde Baidu para utilizarlo.
Ver también
CyrTranslit¶
Added in version 5.7.
- Identificación del servicio:
cyrtranslit- Puntuación máxima:
100
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componente
Servicio de máquina de traducción utilizando la biblioteca Cyrtranslit.
Este servicio convierte texto entre guiones Cirílico y Latino para idiomas que tengan ambos guiones.
Ver también
DeepL¶
- Identificación del servicio:
deepl- Puntuación máxima:
91
- Características avanzadas:
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componenteurlURL DE API
keyClave API
formalityFormal
Utiliza la formalidad especificada si la lengua no está especificada como (in)formal
contextContexto de la traducción
Describa el contexto de la traducción para mejorar la precisión de la misma.
next_genUsar el modelo de próxima generación
Prefiero el LLM de siguiente generación por sobre el modelo clasico de traducción.
DeepL es un servicio de pago que proporciona una buena traducción automática para algunos idiomas. Necesita comprar la suscripción a Api de DeepL, o puede usar el plan heredado de DeepL Pro (clásico).
URL del API para utilizar con el servicio DeepL. En el momento de escribir estas líneas, existe la API v1, así como una versión gratuita y otra de pago de la API v2.
https://api.deepl.com/v2/(por defecto en Weblate)Está destinado al uso de API en el plan pago y la suscripción se basa en el uso.
https://api-free.deepl.com/v2/Está destinado al uso de API en el plan libre, y la suscripción se basa en el uso.
https://api.deepl.com/v1/Está destinado a herramientas CAT y se puede utilizar con una suscripción por usuario.
Nota
Anteriormente, DeepL clasificaba Weblate como una herramienta CAT, por lo que se suponía que debía usar la API v1, pero ahora se supone que debe usar el API v2. Por lo tanto, el valor predeterminado es v2, y puede cambiarlo a v1 en caso de que tenga una suscripción CAT existente y desee que Weblate la use.
Weblate admite formalmente DeepL, elegirá coincidencia una vez basada en el idioma (por ejemplo, hay de@formal y de@informal).
The translation context can optionally be specified to improve translations quality. Read more on that in DeepL translation context documentation.
El servicio utiliza automáticamente Glosario, ver Glosarios en sugerencia automática.
Ver también
Glosbe¶
- Identificación del servicio:
glosbe- Puntuación máxima:
90
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componente
Diccionario libre y memoria de traducción para la mayoría de cada idioma vivo.
El uso del API es gratuito, pero la utilización de las traducciones está sujeta a la licencia de la fuente de datos utilizada. Hay un límite de llamadas que se pueden hacer desde una IP en un periodo de tiempo determinado, para evitar abusos.
Ver también
Google Cloud Translation Basic¶
- Identificación del servicio:
google-translate- Puntuación máxima:
90
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componentekeyClave API
Servicio de traducción automática proporcionado por los servicios en la nube de Google.
Este servicio utiliza el API v2 de Google Translation, y necesita obtener una clave API y activar en la factura en la consola de Google API.
Ver también
Google Cloud Translation Advanced¶
- Identificación del servicio:
google-translate-api-v3- Puntuación máxima:
90
- Características avanzadas:
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componentecredentialsInformación de la cuenta del Traductor de Google
Ingrese una clave JSON para la cuenta de servicio.
projectProyecto del Traductor de Google
Ingresa el ID numérico o alfanumérico de tu proyecto de Google Cloud.
locationLugar del Traductor de Google
Elija una región de Google Cloud Translation que se utilice para el proyecto de Google Cloud o que esté más cerca de usted.
bucket_nameNombre de Google Storage Bucket
Introduzca el nombre del bucket de Google Cloud Storage que se utiliza para almacenar los archivos del Glosario.
Servicio de traducción automática proporcionado por los servicios en la nube de Google.
Este servicio utiliza la API de traducción de Google v3 y necesita credenciales en formato JSON para acceder a él.
Para utilizar este servicio, primero debe seguir los siguientes pasos:
Opcionalmente, puede configurar el servicio para utilizar Glosario configurando un Bucket:
Traductor de lenguaje IBM Watson¶
Removed in version 5.13.1: El proveedor retiró este servicio a partir del 10 de diciembre de 2024.
LibreTranslate¶
Added in version 4.7.1.
- Identificación del servicio:
libretranslate- Puntuación máxima:
89
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componenteurlURL DE API
keyClave API
LibreTranslate es un servicio gratuito y de código abierto para traducciones automáticas. La instancia pública requiere una clave API, pero LibreTranslate puede autoalojarse y hay varias réplicas disponibles para utilizar el API de forma gratuita.
https://libretranslate.com/(instancia pública oficial)Necesita una clave API para usar fuera del sitio web.
LTEngine¶
Added in version 5.17.1.
- Identificación del servicio:
ltengine- Puntuación máxima:
89
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componenteurlURL DE API
keyClave API
LTEngine proporciona un API local compatible con LibreTranslate, respaldada por modelos de lenguaje extensos. Para muchas instalaciones de Weblate, los servicios LLM nativos, como Ollama, pueden ser una mejor opción, ya que Weblate puede enviar el contexto de traducción directamente al modelo. Utilice LTEngine cuando necesite específicamente su motor de traducción local o futuras mejoras de traducción de LTEngine.
Traductor con inteligencia artificial de Azure¶
- Identificación del servicio:
microsoft-translator- Puntuación máxima:
90
- Características avanzadas:
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componentekeyClave API
base_urlLa url base de la aplicación
Elecciones disponibles:
api.cognitive.microsofttranslator.com– Global (no regional)api-apc.cognitive.microsofttranslator.com– Asia Pacíficoapi-eur.cognitive.microsofttranslator.com– Europaapi-nam.cognitive.microsofttranslator.com– Norteaméricaapi.translator.azure.cn– Chinaapi.cognitive.microsofttranslator.us– Nube Azure del Gobierno de EUAendpoint_urlURL del servicio de autenticación
Regional o multi-servicio puede ser especificado usando el campo de region a continuación.
Elecciones disponibles:
api.cognitive.microsoft.com– Globalapi.cognitive.azure.cn– Chinaapi.cognitive.microsoft.us– Nube Azure EE.UU. del GobiernoregionRegión del servicio de autenticación
categoryCategoría
Especifique un ID de categoría de sistema personalizado para utilizarlo en lugar del general.
Servicio de traducción por máquina proporcionada por Microsoft en el portal Azure como uno de los Servicios Cognitivos.
Weblate implementa Traductor API V3.
El servicio utiliza automáticamente Glosario a través de dynamic dictionary, véase Glosarios en sugerencia automática.
Traductor de texto API V2¶
La clave que utiliza con el Traductor API V2 puede utilizarse con el API 3.
Traductor de texto API V3¶
Necesita registrar en el portal Azure y utilizar la clave obtenida allí. Con las claves nuevas de Azure, además necesita establecer region para localizar su servicio.
También puedes especificar una categoría personalizada para utilizar el traductor personalizado.
Consejo
Para Azure China, utilice su punto final desde el Portal Azure.
ModernMT¶
Added in version 4.2.
- Identificación del servicio:
modernmt- Puntuación máxima:
90
- Características avanzadas:
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componenteurlURL DE API
keyClave API
context_vectorVector del contexto
Lista separada por comas de ID de memoria:peso. p. ej.: 1234:0.123,4567:0.456
El servicio utiliza automáticamente Glosario, ver Glosarios en sugerencia automática.
Ver también
MyMemory¶
- Identificación del servicio:
mymemory- Puntuación máxima:
100
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componenteemailEmail de contacto
usernameApodo
keyClave API
Enorme memoria de traducción que ofrece traducciones automáticas.
El uso gratuito y anónimo actualmente está limitado a 100 solicitudes/día, o a 1000 solicitudes/día cuando proporciona una dirección de correo electrónico de contacto en email. También puedes preguntar por más.
Ver también
Vista de Netease¶
- Identificación del servicio:
netease-sight- Puntuación máxima:
90
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componentekeyIdentificación del cliente
secretSecreto del cliente
Servicio de traducción automática proporcionado por NetEase.
Este servicio utiliza un API y debe adquirir una clave y secreto de NetEase.
Ver también
Ollama¶
Added in version 5.15.
- Identificación del servicio:
ollama- Puntuación máxima:
90
- Características avanzadas:
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componentebase_urlURL DE API
URL base del API Ollama, host local y puerto 11.434 por defecto.
modelModelo Ollama
Nombre del modelo descrito en catálogo Ollama.
personaTraductor
Describe la personalidad del traductor para mejorar la precisión de la traducción. Por ejemplo: «Eres un criador de ardillas.»
styleEstilo de traductor
Describe el estilo de traducción. Por ejemplo: «Utilice un lenguaje informal.»
Realiza la traducción usando modelos Ollama.
El API Ollama concede el uso de modelos de fuente abierta para traducciones o bien localmente instalada o accediendo remotamente por medio del servicio Ollama. Note que antes de configurar sus modelos, tendría Ollama instalada y descargados los modelos que desea utilizar.
Utilice campos de persona y estilos para más tarde ajustar traducciones. Esto será utilizado en una solicitud para Ollama y le concede cambiar el estilo de las traducciones.
El servicio utiliza automáticamente Glosario, ver Glosarios en sugerencia automática.
Ver también
Los modelos Ollama
OpenAI¶
Added in version 5.3.
- Identificación del servicio:
openai- Puntuación máxima:
90
- Características avanzadas:
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componentebase_urlURL del API de OpenAI
URL del API de OpenAI, si difiere de la URL por defecto de OpenAI
modelModelo OpenAI
Elecciones disponibles:
auto– Selección automáticagpt-5-nano– GPT-5-nanogpt-5-mini– GPT-5-minigpt-5.2– GPT-5.2gpt-5.1– GPT-5.1gpt-5– GPT-5gpt-4.1-nano– GPT-4.1-nanogpt-4.1-mini– GPT-4.1-minigpt-4.1– GPT-4.1gpt-4o-mini– GPT-4o minigpt-4o– GPT-4oo3-mini– o3-minio3– o3o1-mini– o1-minio1– o1o1-pro– o1-procustom– Modelo adaptadopersonaTraductor
Describe la personalidad del traductor para mejorar la precisión de la traducción. Por ejemplo: «Eres un criador de ardillas.»
styleEstilo de traductor
Describe el estilo de traducción. Por ejemplo: «Utilice un lenguaje informal.»
keyClave API
custom_modelNombre del modelo personalizado
Solo es necesario cuando el modelo está configurado como “Modelo personalizado”
Realiza la traducción usando OpenAI.
El API OpenAI está desarrollado por un conjunto diverso de modelos con diferentes capacidades y precios. La selección automática elige el mejor modelo disponible, pero puede desear elegir un modelo específico que coincide con sus necesidades.
Utilice campos de persona y estilos para más tarde ajustar traducciones. Esto será utilizado en una réplica para OpenAI y le concede cambiar el estilo de las traducciones.
El servicio utiliza automáticamente Glosario, ver Glosarios en sugerencia automática.
Distinto en la versión 5.7: Admite modelo adaptado y fue agregada base de URL.
Ver también
Los modelos OpenAI
Hub de Traducción de SAP¶
- Identificación del servicio:
sap-translation-hub- Puntuación máxima:
100
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componenteurlURL DE API
keyClave API
usernameApodo de SAP
passwordContraseña de SAP
enable_mtActivar la traducción automática
domainDominio de traducción
El ID de un dominio de traducción, por ejemplo, BC. Si no se especifica un dominio, el método busca las traducciones en todos los dominios disponibles.
Servicio de traducción automática proporcionado por SAP.
Necesita tener una cuenta SAP (y SAP Translation Hub habilitado en SAP Cloud Platform) para utilizar este servicio.
También puede configurar si desea utilizar servicios de traducción automática, además de la base de datos de términos.
Nota
Para acceso el API Sandbox, necesita establecer url y `key.
Para acceso al API productivo, necesita establecer url, username y password.
Ver también
` API del centro de traducción de SAP <https://api.sap.com/api/translationhub/overview>`_
sistema¶
- Identificación del servicio:
systran- Puntuación máxima:
90
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componentekeyClave API
Máquina de servicio de traducción proporcionada por Systran.
Este servicio utiliza un API, y necesita obtener una clave API en <https://translate.systran.net/en/account>.
tmserver¶
- Identificación del servicio:
tmserver- Puntuación máxima:
100
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componenteurlURL DE API
Puede ejecutar su propio servidor de memoria de traducción utilizando un protocolo tmserver.
El tmserver original estuvo vinculado con el kit de herramientas de traducción.
El servidor amaGama es una versión mejorada de tmserver.
Nota
Actualmente no parece haber un servidor mantenido para esto.
Weblate¶
- Identificación del servicio:
weblate- Puntuación máxima:
100
- Configuración:
Este servicio no tiene configuración.
El servicio de traducción automática de Weblate puede proporcionar traducciones basadas en las coincidencias exactas de una cadena en las cadenas existentes actualmente en un Translated, Approved, o Read-only states dentro de Weblate.
Memoria de Traducción Weblate¶
- Identificación del servicio:
weblate-translation-memory- Puntuación máxima:
100
- Configuración:
Este servicio no tiene configuración.
Utilice Memoria de traducción como servicio de traducción automática. Cualquier cadena que haya sido traducida anteriormente (o cargada en la memoria de traducción) puede ser traducida de esta forma. Esta fuente de sugerencias funciona con concordancia difusa.
Nota
Recrear Memoria de traducción reduce las capacidades de esta fuente de TM.
Yandex¶
- Identificación del servicio:
yandex- Puntuación máxima:
90
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componentekeyClave API
Servicio de traducción automática ofrecido por Yandex.
Este servicio utiliza un API de TRanslation, y necesita obtener una clave API desde Yandex.
Yandex v2¶
Added in version 5.1.
- Identificación del servicio:
yandex-v2- Puntuación máxima:
90
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componentekeyClave API
Servicio de traducción automática ofrecido por Yandex.
Este servicio utiliza un API de traducción y necesita obtener una clave API de Yandex Cloud.
Ver también
Youdao Zhiyun¶
- Identificación del servicio:
youdao-zhiyun- Puntuación máxima:
90
- Configuración:
source_languageSelección del idioma origen
Elecciones disponibles:
auto– Selección automáticasource– Idioma de origen del componentesecondary– Idioma secundario definido en el proyecto o componentekeyIdentificación del cliente
secretSecreto del cliente
Servicio de traducciones automáticas proporcionado por Youdao.
Este servicio utiliza un API; habrá de obtener un identificador y una clave de API de Youdao.
Traducción automática personalizada¶
Además puede implementar su propia máquina de servicios de traducción utilizando unas pocas líneas del código Python. Coloque el código en un módulo de Weblate puede importar (consulte Crear un módulo de Python o Personalización del código y añada nombre de clase completamente cualificada a WEBLATE_MACHINERY.
"""
Machine translation example.
This example uses fictional http://example.com/ service to translate the
strings.
"""
from __future__ import annotations
from typing import TYPE_CHECKING
from weblate.machinery.base import MACHINERY_DEFAULT_THRESHOLD, MachineTranslation
if TYPE_CHECKING:
from weblate.auth.models import User
from weblate.machinery.base import DownloadTranslations
from weblate.trans.models import Unit
class SampleTranslation(MachineTranslation):
"""Sample machine translation interface."""
name = "Sample"
def download_languages(self):
"""Return list of languages your machine translation supports."""
response = self.request("get", "http://example.com/languages")
return response.json()["languages"]
def download_translations(
self,
source_language,
target_language,
text: str,
unit: Unit | None,
user: User | None,
threshold: int = MACHINERY_DEFAULT_THRESHOLD,
) -> DownloadTranslations:
"""Return tuple with translations."""
response = self.request(
"get",
"http://example.com/translate",
params={
"source_language": source_language,
"target_language": target_language,
"text": text,
},
)
for translation in response.json()["translations"]:
yield {
"text": translation,
"quality": 100,
"service": self.name,
"source": text,
}