Suggestions automatiques

Modifié dans la version 4.13: Prior to Weblate 4.13, the services were configured in the Configuration.

The support for several machine translation and translation memory services is built-in. Each service can be turned on by the administrator for whole site (under Automatic suggestions in Interface de gestion) or at the project settings:

../_images/project-machinery.webp

Note

They come subject to their terms of use, so ensure you are allowed to use them how you want.

The services translate from the source language as configured at Configuration des composants, see Langue source.

Alibaba

Added in version 5.3.

Service ID:

alibaba

Configuration:

key

ID de la clé d’accès

secret

Secret de la clé d’accès

region

ID de la région

Alibaba Translate is a neural machine translation service for translating text and it supports up to 214 language pairs.

Amagama

Service ID:

amagama

Configuration:

This service has no configuration.

Special installation of tmserver run by the authors of Virtaal.

Apertium APy

Service ID:

apertium-apy

Configuration:

url

URL de l’API

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.

Amazon Translate

Service ID:

aws

Configuration:

key

ID de la clé d’accès

secret

Clé secrète d’API

region

Nom de la région

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

Baidu

Service ID:

baidu

Configuration:

key

ID client

secret

Secret client

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.

Voir aussi

Baidu Translate API

DeepL

Service ID:

deepl

Configuration:

url

URL de l’API

key

Clé d’API

formality

Formalité

Utilise la formalité spécifiée si la langue n’est pas spécifiée comme (in)formelle

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.

API URL to use with the DeepL service. At the time of writing, there is the v1 API as well as a free and a paid version of the v2 API.

https://api.deepl.com/v2/ (default in Weblate)

Is meant for API usage on the paid plan, and the subscription is usage-based.

https://api-free.deepl.com/v2/

Is meant for API usage on the free plan, and the subscription is usage-based.

https://api.deepl.com/v1/

Is meant for CAT tools and is usable with a per-user subscription.

Previously Weblate was classified as a CAT tool by DeepL, so it was supposed to use the v1 API, but now is supposed to use the v2 API. Therefore it defaults to v2, and you can change it to v1 in case you have an existing CAT subscription and want Weblate to use that.

The easiest way to find out which one to use is to open an URL like the following in your browser:

https://api.deepl.com/v2/translate?text=Hello&target_lang=FR&auth_key=XXX

Replace the XXX with your auth_key. If you receive a JSON object which contains « Bonjour », you have the correct URL; if not, try the other three.

Weblate supports DeepL formality, it will choose matching one based on the language (for example, there is de@formal and de@informal).

The service automatically uses Glossaire, see Glossaries in automatic suggestion.

Glosbe

Service ID:

glosbe

Configuration:

This service has no configuration.

Free dictionary and translation memory for almost every living language.

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

Voir aussi

Glosbe website

Google Cloud Translation Basic

Service ID:

google-translate

Configuration:

key

Clé d’API

Machine translation service provided by the Google Cloud services.

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

Google Cloud Translation Advanced

Service ID:

google-translate-api-v3

Configuration:

credentials

Informations du compte pour le service Google Translate

Saisissez une clé JSON pour le compte de service.

project

Projet Google Translate

Saisissez l’identifiant numérique ou alphanumérique de votre projet Google Cloud.

location

Emplacement de Google Traduction

Choisissez une région Google Cloud Translation utilisée pour le projet Google Cloud ou la plus proche de chez vous.

Machine translation service provided by the Google Cloud services.

This service uses the Google Translation API v3 and you need credentials in JSON format to access it.

In order to use this service, you first need to go through the following steps:

  1. Select or create a Cloud Platform project.

  2. Enable billing for your project.

  3. Enable the Cloud Translation.

  4. Setup Authentication.

Traducteur linguistique IBM Watson

Added in version 4.16.

Service ID:

ibm

Configuration:

url

URL de l’API

key

Clé d’API

Avertissement

This service is deprecated by vendor and will be withdrawn entirely as of 10 December 2024.

IBM Watson Language Translator translates text from one language to another. The service offers multiple domain-specific models.

LibreTranslate

Added in version 4.7.1.

Service ID:

libretranslate

Configuration:

url

URL de l’API

key

Clé d’API

LibreTranslate is a free and open-source service for machine translations. The public instance requires an API key, but LibreTranslate can be self-hosted and there are several mirrors available to use the API for free.

https://libretranslate.com/ (official public instance)

Requires an API key to use outside of the website.

Azure AI Translator

Service ID:

microsoft-translator

Configuration:

key

Clé d’API

base_url

URL racine de l’application

Choix disponibles :

api.cognitive.microsofttranslator.com – Global (non-regional)

api-apc.cognitive.microsofttranslator.com – Asia Pacific

api-eur.cognitive.microsofttranslator.com – Europe

api-nam.cognitive.microsofttranslator.com – North America

api.translator.azure.cn – China

api.cognitive.microsofttranslator.us – Azure US Government cloud

endpoint_url

URL du service d’authentification

La région ou le multi-services peuvent être définis en utilisant le champ Région ci-dessous.

Choix disponibles :

api.cognitive.microsoft.com – Global

api.cognitive.azure.cn – China

api.cognitive.microsoft.us – Azure US Government cloud

region

Région du service d’authentification

category

Catégorie

Specify a customized system category ID to use it instead of general one.

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

Weblate implements Translator API V3.

The service automatically uses Glossaire, see Glossaries in automatic suggestion.

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 region to locale of your service.

You can also specify a custom category to use custom translator.

Indication

For Azure China, please use your endpoint from the Azure Portal.

ModernMT

Added in version 4.2.

Service ID:

modernmt

Configuration:

url

URL de l’API

key

Clé d’API

Voir aussi

ModernMT API

MyMemory

Service ID:

mymemory

Configuration:

email

Courriel de contact

username

Nom d’utilisateur

key

Clé d’API

Huge translation memory with machine translation.

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

Voir aussi

MyMemory website

Netease Sight

Service ID:

netease-sight

Configuration:

key

ID client

secret

Secret client

Service de traduction automatique fourni par NetEase.

This service uses an API, and you need to obtain key and secret from NetEase.

OpenAI

Added in version 5.3.

Service ID:

openai

Configuration:

key

Clé d’API

model

Modèle OpenAI

Choix disponibles :

auto – Automatic selection

gpt-4-1106-preview – GPT-4 Turbo

gpt-4 – GPT-4

gpt-3.5-turbo – GPT-3.5 Turbo

persona

Personnalité du traducteur

Décrivez la personnalité du traducteur pour améliorer l’exactitude de la traduction. Par exemple : « Vous êtes éleveur d’écureuils. »

style

Style de traducteur

Décrivez le style de la traduction. Par exemple : « Utiliser un language informel. »

Performs translation using OpenAI.

The OpenAI API is powered by a diverse set of models with different capabilities and price points. Automatic selection chooses the best model available, but you might want to choose a specific model that matches your needs.

Use persona and style fields to further fine-tune translations. These will be used in a prompt for OpenAI and allow you to change the style of the translations.

The service automatically uses Glossaire, see Glossaries in automatic suggestion.

SAP Translation Hub

Service ID:

sap-translation-hub

Configuration:

url

URL de l’API

key

Clé d’API

username

Nom d’utilisateur SAP

password

Mot de passe SAP

enable_mt

Activer la traduction automatisée

domain

Domaine de la traduction

L’ID d’un domaine de traduction, par exemple : BC. Si vous n’indiquez pas de domaine, la méthode recherche les traductions dans tous les domaines disponibles.

Machine translation service provided by SAP.

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

You can also configure whether to also use machine translation services, in addition to the term database.

Note

To access the Sandbox API, you need to set url and key.

To access the productive API, you need to set url, username and password.

Systran

Service ID:

systran

Configuration:

key

Clé d’API

Machine translation service provided by Systran.

This service uses an API, and you need to obtain API key at <https://translate.systran.net/en/account>.

tmserver

Service ID:

tmserver

Configuration:

url

URL de l’API

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. First you will want to import some data to the translation memory:

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. Start tmserver to listen to your requests:

tmserver -d /var/lib/tm/db
  1. Configure Weblate to talk to it, the default URL is http://localhost:8888/tmserver/.

Weblate

Service ID:

weblate

Configuration:

This service has no configuration.

Weblate machine translation service can provide translations for strings that are already translated inside Weblate. It looks for exact matches in the existing strings.

Weblate Translation Memory

Service ID:

weblate-translation-memory

Configuration:

This service has no configuration.

Use Mémoire de traduction as a machine translation service. Any string that has been translated in past (or uploaded to the translation memory) can be translated in this way.

Yandex

Service ID:

yandex

Configuration:

key

Clé d’API

Machine translation service provided by Yandex.

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

Yandex v2

Added in version 5.1.

Service ID:

yandex-v2

Configuration:

key

Clé d’API

Machine translation service provided by Yandex.

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

Youdao Zhiyun

Service ID:

youdao-zhiyun

Configuration:

key

ID client

secret

Secret client

Machine translation service provided by Youdao.

This service uses an API, and you need to obtain an ID and an API key from Youdao.

Custom machine translation

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 © Michal Čihař <michal@weblate.org>
#
# SPDX-License-Identifier: GPL-3.0-or-later

"""Machine translation example."""

import dictionary  # type: ignore[import-not-found]

from weblate.machinery.base import DownloadTranslations, 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(
        self,
        source,
        language,
        text: str,
        unit,
        user,
        threshold: int = 75,
    ) -> DownloadTranslations:
        """Return tuple with translations."""
        for t in dictionary.translate(text):
            yield {"text": t, "quality": 100, "service": self.name, "source": text}

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