Автоматические советы¶
Изменено в версии 4.13: До Weblate 4.13 службы настраивались в Конфигурация.
Встроена поддержка нескольких сервисов машинного перевода и памяти переводов. Каждый сервис может быть включён администратором для всего сайта (в разделе «Автоматические советы» в Интерфейс управления) или в настройках проекта:
Примечание
На них распространяются условия использования, поэтому убедитесь, что вам разрешено использовать их так, как вы хотите.
Службы переводят с исходного языка, как настроено в Настройки компонента, см. Исходный язык.
Per-project automatic suggestion can also be configured via the API REST для Weblate.
См. также
Priority of machine translation and translation memory services¶
Память переводов Weblate matches with 100% score take priority over machine translation services. If 100% match in translation memory is found, no machine translation is performed. If several 100% matches occur, the first one returned by the database is used.
Each machine translation service has a predefined maximum score it can produce. The use of installed translation services is ordered according to their maximum score. For each string with translation score lower than the service’s maximum, the service is asked to produce a translation. Translations with a score exceeding the current one are accepted.
Source strings for the machine translation¶
Добавлено в версии 5.11.
The origin of source strings for all third-party services can be configured. This can be used to tweak the service to get the best results. Following choices are available:
- Automatic selection
Chooses the best source language automatically.
This is the default behavior.
- Component source language
Uses the component source language.
This was the behavior before the 5.11 release.
- Secondary language defined in project or component
Use project Вторичный язык or component Вторичный язык.
Falls back to the automatic selection of the source language if the secondary language not configured.
Alibaba¶
Добавлено в версии 5.3.
- Идентификатор (ID) службы:
alibaba- Maximal score:
80
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or componentkeyИдентификатор (ID) ключа доступа
secretКлюч доступа (секретный)
regionИдентификатор (ID) региона
Alibaba Translate is a neural machine translation service for translating text and it supports up to 214 language pairs.
См. также
Apertium APy¶
- Идентификатор (ID) службы:
apertium-apy- Maximal score:
88
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or componenturlURL-адрес API
Свободная платформа ПО машинного перевода, обеспечивающая переводы на ограниченный набор языков.
Рекомендуемый способ использования Apertium — запуск собственного сервера Apertium-APy.
См. также
Пиеракласкі¶
- Идентификатор (ID) службы:
aws- Maximal score:
88
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or componentkeyИдентификатор (ID) ключа доступа
secretСекретный ключ API
regionНазвание региона
Amazon Translate is a neural machine translation service for translating text to and from English across a breadth of supported languages. The service requires the TranslateFullAccess Managed Policy.
The service automatically uses Словарь, see Аŭтаматиčна примаć прапанови.
Дзен-реžим¶
Добавлено в версии 5.8.
- Идентификатор (ID) службы:
azure-openai- Maximal score:
90
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or componentkeyAPI-ключ
personaЛичность переводчика
Опишите личность переводчика, чтобы повысить точность перевода. Например: «Вы разводите белок.»
styleСтиль перевода
Опишите стиль перевода. Например: «Используйте неформальный язык.»
azure_endpointКонечный URL приложения Azure
URL конечной точки экземпляра, например: https://my-instance.openai.azure.com.
deploymentРазвёртывание Azure OpenAI
Уникальное имя развёртывания модели.
Performs translation using OpenAI hosted on Azure.
См. также
Baidu¶
- Идентификатор (ID) службы:
baidu- Maximal score:
90
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or componentkeyИдентификатор (ID) клиента
secretСекрет клиента
Сервис машинного перевода, предоставляемый Baidu.
Этот сервис использует API, и чтобы его использовать, вам нужно получить от Baidu идентификатор и ключ API.
См. также
CyrTranslit¶
Добавлено в версии 5.7.
- Идентификатор (ID) службы:
cyrtranslit- Maximal score:
100
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or component
Викаристоŭваć сервиси маšиннаhа пиеракладу
This service converts text between Cyrillic and Latin scripts for languages that have both scripts.
См. также
DeepL¶
- Идентификатор (ID) службы:
deepl- Maximal score:
91
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or componenturlURL-адрес API
keyAPI-ключ
formalityФормальность
Использует указанную формальность, если язык не указан как (не)формальный
contextКонтекст перевода
Опишите контекст перевода, чтобы повысить точность перевода.
DeepL — это платный сервис, предоставляющий хороший машинный перевод на несколько языков. Вам необходимо приобрести подписку на DeepL API или воспользоваться устаревшим планом DeepL Pro (classic).
URL API для использования с сервисом DeepL. На момент написания статьи существует API вер. 1, а также бесплатная и платная версии API вер. 2.
https://api.deepl.com/v2/(по умолчанию в Weblate)Предназначена для использования через API на платном тарифном плане, а подписка основана на использовании.
https://api-free.deepl.com/v2/Предназначена для использования через API на платном тарифном плане, а подписка основана на использовании.
https://api.deepl.com/v1/Предназначена для CAT-инструментов и может быть использована с подпиской на пользователя.
Ранее Weblate классифицировался DeepL как CAT-инструмент, поэтому предполагалось использовать API версии v1, но теперь предполагается использовать API версии v2. Поэтому по умолчанию параметр имеет значение v2, но вы можете изменить его на v1 в случае, если у вас есть существующая CAT-подписка и вы хотите, чтобы Weblate использовал её.
Самый простой способ узнать, какой из них использовать, - открыть в браузере URL-адрес, подобный следующему:
https://api.deepl.com/v2/translate?text=Hello&target_lang=FR&auth_key=XXX
Замените XXX на ваш auth_key. Если вы получите объект JSON, содержащий «Bonjour», значит у вас правильный URL; если нет, попробуйте остальные три варианта.
Weblate поддерживает формальность DeepL, он выберет соответствующий язык в зависимости от языка (например, есть de@formal и de@informal).
The translation context can optionally be specified to improve translations quality. Read more on that in DeepL translation context documentation.
The service automatically uses Словарь, see Аŭтаматиčна примаć прапанови.
См. также
Glosbe¶
- Идентификатор (ID) службы:
glosbe- Maximal score:
90
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or component
Бесплатный словарь и память переводов для почти всех живых языков.
API можно использовать бесплатно, но использование переводов зависит от лицензии используемого источника данных. Для борьбы со злоупотреблениями существует ограничение на количество вызовов API, которое можно выполнить с одного IP в течение установленного периода времени.
См. также
Апавиаščенни пиеракладу¶
- Идентификатор (ID) службы:
google-translate- Maximal score:
90
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or componentkeyAPI-ключ
Викаристоŭваć сервиси маšиннаhа пиеракладу
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.
См. также
Рекламаванние пиеракладнікаhа пражекта¶
- Идентификатор (ID) службы:
google-translate-api-v3- Maximal score:
90
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or componentcredentialsИнформация учётной записи сервиса Google Переводчик
Введите ключ JSON для учётной записи службы.
projectПроект Google Переводчик
Введите цифровой или буквенно-цифровой идентификатор вашего проекта Google Cloud.
locationРасположение Google Переводчика
Выберите регион перевода Google Cloud, который используется для проекта Google Cloud, или находится ближе всего к вам.
bucket_nameНазвание Google Storage Bucket
Введите имя хранилища Google Cloud Storage, которое используется для хранения файлов словаря.
Викаристоŭваć сервиси маšиннаhа пиеракладу
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:
Optionally, you can configure the service to use Словарь by setting up a Bucket:
Переводчик языков IBM Watson¶
Добавлено в версии 4.16.
- Идентификатор (ID) службы:
ibm- Maximal score:
88
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or componenturlURL-адрес API
keyAPI-ключ
Предупреждение
This service is deprecated by vendor and will be withdrawn entirely as of 10 December 2024.
IBM Watson Language Translator переводит текст с одного языка на другой. Сервис предлагает несколько моделей, специфичных для конкретной предметной области.
LibreTranslate¶
Добавлено в версии 4.7.1.
- Идентификатор (ID) службы:
libretranslate- Maximal score:
89
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or componenturlURL-адрес API
keyAPI-ключ
LibreTranslate - это бесплатная служба машинного перевода с открытым исходным кодом. Публичный экземпляр требует API-ключа, но LibreTranslate может быть размещён самостоятельно, и есть несколько зеркал, доступных для бесплатного использования API.
https://libretranslate.com/(официальный публичный экземпляр)Для использования вне сайта нужен ключ API.
См. также
Пиеракласкі¶
- Идентификатор (ID) службы:
microsoft-translator- Maximal score:
90
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or componentkeyAPI-ключ
base_urlБазовый URL приложения
Доступные варианты:
api.cognitive.microsofttranslator.com– Глобальный (без региона)api-apc.cognitive.microsofttranslator.com– Азиатско-Тихоокеанскийapi-eur.cognitive.microsofttranslator.com– Европейскийapi-nam.cognitive.microsofttranslator.com– Северная Америкаapi.translator.azure.cn– Китайapi.cognitive.microsofttranslator.us— облако Azure для государственных организаций СШАendpoint_urlURL-адрес службы авторизации
Региональный или многосервисный можно указать с помощью поля «регион» ниже.
Доступные варианты:
api.cognitive.microsoft.com– Глобальныйapi.cognitive.azure.cn– Китайapi.cognitive.microsoft.us— облако Azure для государственных организаций СШАregionРегион службы авторизации
categoryКатегория
Укажите настраиваемый идентификатор системной категории, чтобы использовать его вместо общего.
Сервис машинного перевода, предоставляемый Microsoft на портале Azure в качестве одного из сервисов Cognitive Services.
Weblate реализует API переводчика версии V3.
The service automatically uses Словарь via dynamic dictionary, see Аŭтаматиčна примаć прапанови.
API переводчика текста версии V2¶
Ключ, который вы используете для API переводчика версии V2, можно использовать с API версии 3.
API переводчика текста версии V3¶
Вам необходимо зарегистрироваться на портале Azure и использовать полученный там ключ. С новыми ключами Azure вам также потребуется установить параметр region в локаль вашего сервиса.
You can also specify a custom category to use custom translator.
Подсказка
Для Azure China используйте, пожалуйста, свою конечную точку на портале Azure Portal.
ModernMT¶
Добавлено в версии 4.2.
- Идентификатор (ID) службы:
modernmt- Maximal score:
90
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or componenturlURL-адрес API
keyAPI-ключ
context_vectorВектор контекста
Разделённый запятыми список заметок «идентификатор»:«вес». Например: 1234:0.123,4567:0.456
The service automatically uses Словарь, see Аŭтаматиčна примаć прапанови.
См. также
MyMemory¶
- Идентификатор (ID) службы:
mymemory- Maximal score:
100
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or componentemailЭл. почта для связи
usernameИмя пользователя
keyAPI-ключ
Огромная память переводов с машинным переводом.
Бесплатное анонимное использование в настоящее время ограничено 100 запросами в день, или 1000 запросами в день при указании контактного адреса электронной почты в параметре email. Также вы можете запросить увеличение лимитов.
См. также
NetEase Sight¶
- Идентификатор (ID) службы:
netease-sight- Maximal score:
90
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or componentkeyИдентификатор (ID) клиента
secretСекрет клиента
Сервис машинного перевода, предоставляемый NetEase.
Этот сервис использует API, поэтому вам необходимо получить от NetEase ключ и секрет.
См. также
Дзен-реžим¶
Добавлено в версии 5.3.
- Идентификатор (ID) службы:
openai- Maximal score:
90
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or componentkeyAPI-ключ
personaЛичность переводчика
Опишите личность переводчика, чтобы повысить точность перевода. Например: «Вы разводите белок.»
styleСтиль перевода
Опишите стиль перевода. Например: «Используйте неформальный язык.»
base_urlБазовый URL API OpenAI
Базовый URL API OpenAI, если он отличается от URL OpenAI по умолчанию
modelМодель OpenAI
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
gpt-4o-mini– GPT-4o minigpt-4o– GPT-4oo3-mini– OpenAI o3-minio3– OpenAI o3o1-mini– OpenAI o1-minio1– OpenAI o1gpt-4.5-preview– GPT-4.5gpt-4-turbo– GPT-4 Turbogpt-4– GPT-4gpt-3.5-turbo– GPT-3.5 TurboАŭтаматиčнаже вижаŭлиенние
custom_modelНазвание настраиваемой модели
Требуется только в том случае, если для модели установлено значение «Пользовательская модель»
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 Словарь, see Аŭтаматиčна примаć прапанови.
Изменено в версии 5.7: Support for custom model and base URL was added.
См. также
Центр переводов SAP¶
- Идентификатор (ID) службы:
sap-translation-hub- Maximal score:
100
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or componenturlURL-адрес API
keyAPI-ключ
usernameИмя пользователя SAP
passwordПароль SAP
enable_mtВключить машинный перевод
domainДомен перевода
Идентификатор домена перевода, например: BC. Если вы не укажете домен, метод будет искать переводы во всех доступных доменах.
Сервис машинного перевода, предоставляемый SAP.
Для использования этой службы вам необходимо иметь учётную запись SAP (и иметь SAP Translation Hub включённым в облачной платформе SAP).
Вы также можете указать, следует ли использовать службы машинного перевода в дополнение к базе данных терминов.
Примечание
Для доступа к API Sandbox необходимо задать параметры url и key.
Для доступа к API Productive, вам необходимо задать url, username и password.
Systran¶
- Идентификатор (ID) службы:
systran- Maximal score:
90
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or componentkeyAPI-ключ
Сервис машинного перевода, предоставляемый Systran.
This service uses an API, and you need to obtain API key at <https://translate.systran.net/en/account>.
tmserver¶
- Идентификатор (ID) службы:
tmserver- Maximal score:
100
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or componenturlURL-адрес API
Вы можете запустить свой собственный сервер памяти переводов, используя сервер, входящий в Translate-toolkit, и настроив Weblate на взаимодействие с ним. Также вы можете использовать его с сервером amaGama, который является расширенной версией tmserver.
Сперва вам нужно импортировать в память переводов некоторые данные:
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
Запустите tmserver, чтобы он слушал ваши запросы:
tmserver -d /var/lib/tm/db
Настройте Weblate на взаимодействие с ним, URL-адрес по умолчанию —
http://localhost:8888/tmserver/.
См. также
tmserver, Installing amaGama, Amagama, Память переводов Amagama
Weblate¶
- Идентификатор (ID) службы:
weblate- Maximal score:
100
- Конфигурация:
У этого сервиса нет конфигурации.
Weblate machine translation service can provide translations based on the exact matches of a string in the currently existing strings in a Translated, Approved, or Read-only states inside Weblate.
Память переводов Weblate¶
- Идентификатор (ID) службы:
weblate-translation-memory- Maximal score:
100
- Конфигурация:
У этого сервиса нет конфигурации.
Use Память переводов as a machine translation service. Any string that has been translated before (or uploaded to the translation memory) can be translated in this way. This suggestion source works with fuzzy matching.
Примечание
Recreating Память переводов reduces capabilities of this TM source.
Яндекс¶
- Идентификатор (ID) службы:
yandex- Maximal score:
90
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or componentkeyAPI-ключ
Сервис машинного перевода, предоставляемый Яндексом.
Этот сервис использует API переводчика, поэтому вам необходимо получить от Яндекса ключ API.
См. также
Яндекс v2¶
Добавлено в версии 5.1.
- Идентификатор (ID) службы:
yandex-v2- Maximal score:
90
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or componentkeyAPI-ключ
Сервис машинного перевода, предоставляемый Яндексом.
Этот клиент использует Translation API, и вам необходимо получить ключ API от Яндекс Облака.
Youdao Zhiyun¶
- Идентификатор (ID) службы:
youdao-zhiyun- Maximal score:
90
- Конфигурация:
source_languageВыбор исходного языка
Доступные варианты:
Аŭтаматиčнаже вижаŭлиенние
source– Component source languagesecondary– Secondary language defined in project or componentkeyИдентификатор (ID) клиента
secretСекрет клиента
Сервис машинного перевода, предоставляемый Youdao.
Этот сервис использует API, поэтому вам необходимо получить от Youdao идентификатор и ключ API.
Пользовательский машинный перевод¶
Также вы можете реализовать собственные сервисы машинного перевода, написав всего несколько строк кода на Python. В этом примере реализован машинный перевод на фиксированный список языков через модуль Python dictionary:
# 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,
target_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}
Вы можете добавить свой класс в WEBLATE_MACHINERY и Weblate начнёт его использовать.