Traducción automática

Built-in support for several machine translation services and can be turned on by the administrator using MT_SERVICES for each one. They come subject to their terms of use, so ensure you are allowed to use them how you want.

The source language can be configured at Configuración de proyectos.


Special installation of tmserver run by the authors of Virtaal.

Turn on this service by adding weblate.machinery.tmserver.AmagamaTranslation to MT_SERVICES.


A libre software machine translation platform providing translations to a limited set of languages.

The recommended way to use Apertium is to run your own Apertium-APy server.

Turn on this service by adding weblate.machinery.apertium.ApertiumAPYTranslation to MT_SERVICES and set MT_APERTIUM_APY.


Nuevo en la versión 3.1.

Amazon Translate is a neural machine translation service for translating text to and from English across a breadth of supported languages.

1. Turn on this service by adding to MT_SERVICES.

  1. Install the boto3 module.

  2. Configure Weblate.

Baidu API machine translation

Nuevo en la versión 3.2.

Machine translation service provided by Baidu.

This service uses an API and you need to obtain an ID and API key from Baidu to use it.

Turn on this service by adding to MT_SERVICES and set MT_BAIDU_ID and MT_BAIDU_SECRET.


Nuevo en la versión 2.20.

DeepL is paid service providing good machine translation for a few languages. You need to purchase DeepL API subscription or you can use legacy DeepL Pro (classic) plan.

Turn on this service by adding weblate.machinery.deepl.DeepLTranslation to MT_SERVICES and set MT_DEEPL_KEY.


In case you have subscription for CAT tools, you are supposed to use «v1 API» instead of default «v2» used by Weblate (it is not really an API version in this case). You can toggle this by MT_DEEPL_API_VERSION.


Free dictionary and translation memory for almost every living language.

The API is gratis to use, but subject to the used data source license. There is a limit of calls that may be done from one IP in a set period of time, to prevent abuse.

Turn on this service by adding weblate.machinery.glosbe.GlosbeTranslation to MT_SERVICES.

Ver también

Glosbe website

Google Translate

Machine translation service provided by Google.

This service uses the Google Translation API, and you need to obtain an API key and turn on billing in the Google API console.

To turn on this service, add to MT_SERVICES and set MT_GOOGLE_KEY.

Google Translate API V3 (Advanced)

Machine translation service provided by Google Cloud services.

This service differs from the former one in how it authenticates. To enable service, add weblate.machinery.googlev3.GoogleV3Translation to MT_SERVICES and set

If location fails, you may also need to specify MT_GOOGLE_LOCATION.

Microsoft Cognitive Services Translator

Nuevo en la versión 2.10.

Machine translation service provided by Microsoft in Azure portal as a one of Cognitive Services.

Weblate implements Translator API V3.

To enable this service, add to MT_SERVICES and set MT_MICROSOFT_COGNITIVE_KEY.

Translator Text API V2

The key you use with Translator API V2 can be used with API 3.

Translator Text API V3

You need to register at Azure portal and use the key you obtain there. With new Azure keys, you also need to set MT_MICROSOFT_REGION to locale of your service.

Servicio terminológico de Microsoft

Nuevo en la versión 2.19.

The Microsoft Terminology Service API allows you to programmatically access the terminology, definitions and user interface (UI) strings available in the Language Portal through a web service.

Turn this service on by adding weblate.machinery.microsoftterminology.MicrosoftTerminologyService to MT_SERVICES.


Nuevo en la versión 4.2.

Turn this service on by adding weblate.machinery.modernmt.ModernMTTranslation to MT_SERVICES and configure MT_MODERNMT_KEY.


Enorme memoria de traducción que ofrece traducciones automáticas.

Free, anonymous usage is currently limited to 100 requests/day, or to 1000 requests/day when you provide a contact e-mail address in MT_MYMEMORY_EMAIL. You can also ask them for more.

Turn on this service by adding weblate.machinery.mymemory.MyMemoryTranslation to MT_SERVICES and set MT_MYMEMORY_EMAIL.

Traducción automática por API de NetEase Sight

Nuevo en la versión 3.3.

Servicio de traducción automática brindado por NetEase.

Este servicio utiliza una API y debe adquirir una clave y secreto de NetEase.

Turn on this service by adding weblate.machinery.youdao.NeteaseSightTranslation to MT_SERVICES and set MT_NETEASE_KEY and MT_NETEASE_SECRET.


You can run your own translation memory server by using the one bundled with Translate-toolkit and let Weblate talk to it. You can also use it with an amaGama server, which is an enhanced version of tmserver.

  1. Lo primero que querrá hacer es importar algunos datos en la memoria de traducción:

2. Turn on this service by adding weblate.machinery.tmserver.TMServerTranslation to MT_SERVICES.

build_tmdb -d /var/lib/tm/db -s en -t cs locale/cs/LC_MESSAGES/django.po
build_tmdb -d /var/lib/tm/db -s en -t de locale/de/LC_MESSAGES/django.po
build_tmdb -d /var/lib/tm/db -s en -t fr locale/fr/LC_MESSAGES/django.po
  1. Inicie el tmserver para que escuche sus peticiones:

tmserver -d /var/lib/tm/db
  1. Configure Weblate para que se comunique con este:

MT_TMSERVER = "http://localhost:8888/tmserver/"

Yandex Translate

Servicio de traducción automática ofrecido por Yandex.

This service uses a Translation API, and you need to obtain an API key from Yandex.

Turn on this service by adding to MT_SERVICES, and set MT_YANDEX_KEY.

Youdao Zhiyun API machine translation

Nuevo en la versión 3.2.

El servicio de traducciones automáticas lo brinda Youdao.

Este servicio utiliza una API; habrá de obtener un identificador y una clave de API de Youdao.

Turn on this service by adding weblate.machinery.youdao.YoudaoTranslation to MT_SERVICES and set MT_YOUDAO_ID and MT_YOUDAO_SECRET.


Weblate can be the source of machine translations as well. It is based on the Woosh fulltext engine, and provides both exact and inexact matches.

Turn on these services by adding weblate.machinery.weblatetm.WeblateTranslation to MT_SERVICES.

Weblate Translation Memory

Nuevo en la versión 2.20.

The Memoria de traducción can be used as a source for machine translation suggestions as well.

Turn on these services by adding weblate.memory.machine.WeblateMemory to the MT_SERVICES. This service is turned on by default.

SAP Translation Hub

Machine translation service provided by SAP.

You need to have a SAP account (and enabled the SAP Translation Hub in the SAP Cloud Platform) to use this service.

Turn on this service by adding weblate.machinery.saptranslationhub.SAPTranslationHub to MT_SERVICES and set the appropriate access to either sandbox or the productive API.


To access the Sandbox API, you need to set MT_SAP_BASE_URL and MT_SAP_SANDBOX_APIKEY.

To access the productive API, you need to set MT_SAP_BASE_URL, MT_SAP_USERNAME and MT_SAP_PASSWORD.

Traducción automática personalizada

You can also implement your own machine translation services using a few lines of Python code. This example implements machine translation in a fixed list of languages using dictionary Python module:

# Copyright © 2012 - 2021 Michal Čihař <>
# This file is part of Weblate <>
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <>.
"""Machine translation example."""

import dictionary

from weblate.machinery.base import MachineTranslation

class SampleTranslation(MachineTranslation):
    """Sample machine translation interface."""

    name = "Sample"

    def download_languages(self):
        """Return list of languages your machine translation supports."""
        return {"cs"}

    def download_translations(
        text: str,
        search: bool,
        threshold: int = 75,
        """Return tuple with translations."""
        for t in dictionary.translate(text):
            yield {"text": t, "quality": 100, "service":, "source": text}

You can list own class in MT_SERVICES and Weblate will start using that.