Otomatik önerileri yapılandırmak

4.13 sürümünde değişti: Prior to Weblate 4.13, the services were configured in the Yapılandırma.

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 or at the project settings:

../_images/project-machinery.png

Not

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 Component configuration, see Kaynak dil.

Ayrıca bakınız

Kendiliğinden öneriler

Amagama

Service ID

amagama

Yapılandırma

This service has no configuration.

Special installation of tmserver run by the authors of Virtaal.

Apertium APy

Service ID

apertium-apy

Yapılandırma

url

API adresi

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.

AWS

3.1 sürümünde geldi.

Service ID

aws

Yapılandırma

key

Access key ID

secret

API secret key

region

Region name

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

Ayrıca bakınız

Amazon Translate Documentation

Baidu

3.2 sürümünde geldi.

Service ID

baidu

Yapılandırma

key

Client ID

secret

Client secret

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.

Ayrıca bakınız

Baidu Translate API

DeepL

2.20 sürümünde geldi.

Service ID

deepl

Yapılandırma

url

API adresi

key

API key

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).

Glosbe

Service ID

glosbe

Yapılandırma

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.

Ayrıca bakınız

Glosbe web sitesi

Google Translate

Service ID

google-translate

Yapılandırma

key

API key

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.

Ayrıca bakınız

Google translate belgeleri

Google Translate API v3

Service ID

google-translate-api-v3

Yapılandırma

credentials

Google Translate service account info

project

Google Translate project

location

Google Translate location

Machine translation service provided by Google Cloud services.

LibreTranslate

4.7.1 sürümünde geldi.

Service ID

libretranslate

Yapılandırma

url

API adresi

key

API key

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.

Microsoft Terminology

2.19 sürümünde geldi.

Service ID

microsoft-terminology

Yapılandırma

This service has no configuration.

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.

Microsoft Translator

2.10 sürümünde geldi.

Service ID

microsoft-translator

Yapılandırma

key

API key

base_url

Application base URL

Kullanılabilecek seçenekler:

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

Authentication service URL

Regional or multi-service can be spcified using region field below.

Kullanılabilecek seçenekler:

api.cognitive.microsoft.com – Global

api.cognitive.azure.cn – China

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

region

Authentication service region

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

Weblate implements Translator API V3.

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.

İpucu

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

ModernMT

4.2 sürümünde geldi.

Service ID

modernmt

Yapılandırma

url

API adresi

key

API key

Ayrıca bakınız

ModernMT API,

MyMemory

Service ID

mymemory

Yapılandırma

email

Contact e-mail

username

Kullanıcı adı

key

API key

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.

Ayrıca bakınız

MyMemory web sitesi

Netease Sight

3.3 sürümünde geldi.

Service ID

netease-sight

Yapılandırma

key

Client ID

secret

Client secret

Machine translation service provided by NetEase.

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

SAP Translation Hub

Service ID

sap-translation-hub

Yapılandırma

url

API adresi

key

API key

username

SAP kullanıcı adı

password

SAP parolası

enable_mt

Makine çevirisi kullanılsın

domain

Translation domain

The ID of a translation domain, for example, BC. If you do not specify a domain, the method searches for translations in all available domains.

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.

Not

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.

tmserver

Service ID

tmserver

Yapılandırma

url

API adresi

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

Yapılandırma

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

2.20 sürümünde geldi.

Service ID

weblate-translation-memory

Yapılandırma

This service has no configuration.

Use Çeviri belleği 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

Yapılandırma

key

API key

Machine translation service provided by Yandex.

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

Youdao Zhiyun

3.2 sürümünde geldi.

Service ID

youdao-zhiyun

Yapılandırma

key

Client ID

secret

Client secret

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

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(
        self,
        source,
        language,
        text: str,
        unit,
        user,
        search: bool,
        threshold: int = 75,
    ):
        """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.