Автоматические советы

Изменено в версии 4.13: До Weblate 4.13 службы настраивались в Конфигурация.

Встроена поддержка нескольких сервисов машинного перевода и памяти переводов. Каждый сервис может быть включён администратором для всего сайта (в разделе «Автоматические советы» в Интерфейс управления) или в настройках проекта:

../_images/project-machinery.webp

Примечание

На них распространяются условия использования, поэтому убедитесь, что вам разрешено использовать их так, как вы хотите.

Службы переводят с исходного языка, как настроено в Настройки компонента, см. Исходный язык.

Per-project automatic suggestion can also be configured via the API REST для Weblate.

Приоритет услуг машинного перевода и памяти переводов

Память переводов 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.

Исходные строки для машинного перевода

Добавлено в версии 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

Используйте проект Вторичный язык или компонент Вторичный язык.

Falls back to the automatic selection of the source language if the secondary language not configured.

Alibaba

Добавлено в версии 5.3.

Идентификатор (ID) службы:

alibaba

Максимальный балл:

80

Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

key

Идентификатор (ID) ключа доступа

secret

Ключ доступа (секретный)

region

Идентификатор (ID) региона

Alibaba Translate — это сервис машинного перевода текста при помощи нейронных сетей, поддерживающий до 214 языковых пар.

Apertium APy

Идентификатор (ID) службы:

apertium-apy

Максимальный балл:

88

Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

url

URL-адрес API

Свободная платформа ПО машинного перевода, обеспечивающая переводы на ограниченный набор языков.

Рекомендуемый способ использования Apertium — запуск собственного сервера Apertium-APy.

Amazon Translate

Идентификатор (ID) службы:

aws

Максимальный балл:

88

Advanced features:
Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

key

Идентификатор (ID) ключа доступа

secret

Секретный ключ API

region

Название региона

Amazon Translate — это сервис машинного перевода при помощи нейронных сетей для перевода текста на английский язык и с английского языка на широкое множество поддерживаемых языков. Для работы сервиса требуется управляемая политика TranslateFullAccess.

Служба автоматически использует Словарь, см. Glossaries in automatic suggestion.

Anthropic

Добавлено в версии 5.16.

Идентификатор (ID) службы:

anthropic

Максимальный балл:

90

Advanced features:
Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

key

API-ключ

base_url

URL-адрес Anthropic API

Базовый URL Anthropic API. Оставьте поле пустым, чтобы использовать URL-адрес по умолчанию.

model

Антропическая модель

Доступные варианты:

claude-sonnet-4-5 – Claude Sonnet 4.5 (Recommended)

claude-haiku-4-5 – Claude Haiku 4.5

claude-opus-4-5 – Claude Opus 4.5

custom – Custom model

custom_model

Название настраиваемой модели

Требуется только в том случае, если для модели установлено значение «Своя модель»

max_tokens

Макс. токенов

Максимальное количество токенов, которые могут быть сгенерированы в ответе.

persona

Личность переводчика

Describe the persona of translator to improve the accuracy of the translation. For example: «You are a squirrel breeder.»

style

Стиль перевода

Describe the style of translation. For example: «Use informal language.»

Performs translation using Anthropic’s Claude models.

The Anthropic API provides access to the Claude family of models, which are known for their strong reasoning and language capabilities. You need an API key from Anthropic to use this service.

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

Служба автоматически использует Словарь, см. Glossaries in automatic suggestion.

Azure OpenAI

Добавлено в версии 5.8.

Идентификатор (ID) службы:

azure-openai

Максимальный балл:

90

Advanced features:
Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

base_url

URL-адрес API

model

Модель LLM

persona

Личность переводчика

Опишите личность переводчика, чтобы повысить точность перевода. Например: «Вы разводите белок.»

style

Стиль перевода

Опишите стиль перевода. Например: «Используйте неформальный язык.»

key

API-ключ

azure_endpoint

Конечный URL приложения Azure

URL конечной точки экземпляра, например: https://my-instance.openai.azure.com.

deployment

Развёртывание Azure OpenAI

Уникальное имя развёртывания модели.

Выполняет перевод с помощью OpenAI, размещенного на Azure.

См. также

OpenAI

Baidu

Идентификатор (ID) службы:

baidu

Максимальный балл:

90

Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

key

Идентификатор (ID) клиента

secret

Секрет клиента

Сервис машинного перевода, предоставляемый Baidu.

Этот сервис использует API, и чтобы его использовать, вам нужно получить от Baidu идентификатор и ключ API.

См. также

Baidu Translate API

CyrTranslit

Добавлено в версии 5.7.

Идентификатор (ID) службы:

cyrtranslit

Максимальный балл:

100

Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

Служба машинного перевода с использованием библиотеки Cyrtranslit.

Данный сервис преобразует текст между кириллицей и латиницей для языков, в которых используются обе письменности.

DeepL

Идентификатор (ID) службы:

deepl

Максимальный балл:

91

Advanced features:
Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

url

URL-адрес API

key

API-ключ

formality

Формальность

Использует указанную формальность, если язык не указан как (не)формальный

context

Контекст перевода

Опишите контекст перевода, чтобы повысить точность перевода.

next_gen

Использовать модель следующего поколения

Отдавать предпочтение большим языковым моделям (LLM) следующего поколения, а не классической модели машинного перевода.

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 использовал её.

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.

Служба автоматически использует Словарь, см. Glossaries in automatic suggestion.

Glosbe

Идентификатор (ID) службы:

glosbe

Максимальный балл:

90

Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

Бесплатный словарь и память переводов для почти всех живых языков.

API можно использовать бесплатно, но использование переводов зависит от лицензии используемого источника данных. Для борьбы со злоупотреблениями существует ограничение на количество вызовов API, которое можно выполнить с одного IP в течение установленного периода времени.

См. также

Веб-сайт Glosbe

Google Cloud Translation Basic

Идентификатор (ID) службы:

google-translate

Максимальный балл:

90

Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

key

API-ключ

Служба машинного перевода, предоставляемая сервисами Google Cloud.

Этот сервис использует API v2 Переводчика Google, поэтому вам нужно получить ключ API и включить тарифный план в консоли Google API.

Расширенный облачный перевод Google

Идентификатор (ID) службы:

google-translate-api-v3

Максимальный балл:

90

Advanced features:
Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

credentials

Информация учётной записи сервиса Google Переводчик

Введите ключ JSON для учётной записи службы.

project

Проект Google Переводчик

Введите цифровой или буквенно-цифровой идентификатор вашего проекта Google Cloud.

location

Расположение Google Переводчика

Выберите регион перевода Google Cloud, который используется для проекта Google Cloud, или находится ближе всего к вам.

bucket_name

Название Google Storage Bucket

Введите имя хранилища Google Cloud Storage, которое используется для хранения файлов словаря.

Служба машинного перевода, предоставляемая сервисами Google Cloud.

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. Авторизация

Optionally, you can configure the service to use Словарь by setting up a Bucket:

  1. Create a Google Cloud bucket.

  2. Set bucket location to «us-central1».

  3. Grant „Storage Admin“ permission to the Service Account.

Переводчик языков IBM Watson

Удалено в версии 5.13.1: This service was withdrawn by vendor as of 10 December 2024.

LibreTranslate

Добавлено в версии 4.7.1.

Идентификатор (ID) службы:

libretranslate

Максимальный балл:

89

Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

url

URL-адрес API

key

API-ключ

LibreTranslate - это бесплатная служба машинного перевода с открытым исходным кодом. Публичный экземпляр требует API-ключа, но LibreTranslate может быть размещён самостоятельно, и есть несколько зеркал, доступных для бесплатного использования API.

https://libretranslate.com/ (официальный публичный экземпляр)

Для использования вне сайта нужен ключ API.

Azure AI Translator

Идентификатор (ID) службы:

microsoft-translator

Максимальный балл:

90

Advanced features:
Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

key

API-ключ

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_url

URL-адрес службы авторизации

Региональный или многосервисный можно указать с помощью поля «регион» ниже.

Доступные варианты:

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 Glossaries in automatic suggestion.

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

Максимальный балл:

90

Advanced features:
Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

url

URL-адрес API

key

API-ключ

context_vector

Вектор контекста

Разделённый запятыми список заметок «идентификатор»:«вес». Например: 1234:0.123,4567:0.456

Служба автоматически использует Словарь, см. Glossaries in automatic suggestion.

См. также

ModernMT API

MyMemory

Идентификатор (ID) службы:

mymemory

Максимальный балл:

100

Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

email

Эл. почта для связи

username

Имя пользователя

key

API-ключ

Огромная память переводов с машинным переводом.

Бесплатное анонимное использование в настоящее время ограничено 100 запросами в день, или 1000 запросами в день при указании контактного адреса электронной почты в параметре email. Также вы можете запросить увеличение лимитов.

См. также

Веб-сайт MyMemory

NetEase Sight

Идентификатор (ID) службы:

netease-sight

Максимальный балл:

90

Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

key

Идентификатор (ID) клиента

secret

Секрет клиента

Сервис машинного перевода, предоставляемый NetEase.

Этот сервис использует API, поэтому вам необходимо получить от NetEase ключ и секрет.

Ollama

Добавлено в версии 5.15.

Идентификатор (ID) службы:

ollama

Максимальный балл:

90

Advanced features:
Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

base_url

URL-адрес API

Базовый URL-адрес API Ollama, по умолчанию localhost и порт 11434.

model

Модель Ollama

Название модели, описанной в каталоге Ollama.

persona

Личность переводчика

Опишите личность переводчика, чтобы повысить точность перевода. Например: «Вы разводите белок.»

style

Стиль перевода

Опишите стиль перевода. Например: «Используйте неформальный язык.»

Performs translation using Ollama models.

The Ollama API allows for the use of open source models for translations either locally installed or remotely accessed via the Ollama service. Note that before configuring your models, you should have Ollama installed and downloaded the models you wish to use.

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

Служба автоматически использует Словарь, см. Glossaries in automatic suggestion.

См. также

OpenAI

Добавлено в версии 5.3.

Идентификатор (ID) службы:

openai

Максимальный балл:

90

Advanced features:
Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

key

API-ключ

persona

Личность переводчика

Опишите личность переводчика, чтобы повысить точность перевода. Например: «Вы разводите белок.»

style

Стиль перевода

Опишите стиль перевода. Например: «Используйте неформальный язык.»

base_url

Базовый URL API OpenAI

Базовый URL API OpenAI, если он отличается от URL OpenAI по умолчанию

model

Модель OpenAI

Доступные варианты:

auto – Автоматический выбор

gpt-5-nano – GPT-5-nano

gpt-5-mini – GPT-5-mini

gpt-5 – GPT-5

gpt-4.1-nano – GPT-4.1-nano

gpt-4.1-mini – GPT-4.1-mini

gpt-4.1 – GPT-4.1

gpt-4o-mini – GPT-4o mini

gpt-4o – GPT-4o

o3-mini – o3-mini

o3 – o3

o1-mini – o1-mini

o1 – o1

o1-pro – o1-pro

custom – Custom model

custom_model

Название настраиваемой модели

Требуется только в том случае, если для модели установлено значение «Своя модель»

Выполняет перевод с помощью 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.

Служба автоматически использует Словарь, см. Glossaries in automatic suggestion.

Изменено в версии 5.7: Support for custom model and base URL was added.

См. также

Центр переводов SAP

Идентификатор (ID) службы:

sap-translation-hub

Максимальный балл:

100

Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

url

URL-адрес API

key

API-ключ

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

Максимальный балл:

90

Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

key

API-ключ

Сервис машинного перевода, предоставляемый Systran.

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

tmserver

Идентификатор (ID) службы:

tmserver

Максимальный балл:

100

Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

url

URL-адрес API

You can run your own translation memory server by using a tmserver protocol.

  • The original tmserver was bundled with the translate-toolkit.

  • amaGama server is an enhanced version of tmserver.

Примечание

There currently does not seem to be a maintained server for this.

Weblate

Идентификатор (ID) службы:

weblate

Максимальный балл:

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

Максимальный балл:

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

Максимальный балл:

90

Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

key

API-ключ

Сервис машинного перевода, предоставляемый Яндексом.

Этот сервис использует API переводчика, поэтому вам необходимо получить от Яндекса ключ API.

Яндекс v2

Добавлено в версии 5.1.

Идентификатор (ID) службы:

yandex-v2

Максимальный балл:

90

Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

key

API-ключ

Сервис машинного перевода, предоставляемый Яндексом.

Этот клиент использует Translation API, и вам необходимо получить ключ API от Яндекс Облака.

Youdao Zhiyun

Идентификатор (ID) службы:

youdao-zhiyun

Максимальный балл:

90

Конфигурация:

source_language

Выбор исходного языка

Доступные варианты:

auto – Автоматический выбор

source – Исходный язык компонента

secondary – Secondary language defined in project or component

key

Идентификатор (ID) клиента

secret

Секрет клиента

Сервис машинного перевода, предоставляемый Youdao.

Этот сервис использует API, поэтому вам необходимо получить от Youdao идентификатор и ключ API.

Пользовательский машинный перевод

You can also implement your own machine translation services using a few lines of Python code. Place the code in a module Weblate can import (see Создание модуля Python or Customizing code) and add fully qualified class name to 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 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 = 75,
    ) -> 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,
            }