Настройка автоматических предложений#

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

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

../_images/project-machinery.webp

Примечание

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

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

Имена#

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

amagama

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

У этого сервиса нет конфигурации.

Специальная установка ТМ сервер, запущенная авторами Virtaal.

Открытие APy#

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

apertium-apy

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

url

URL-адрес API

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

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

AWS#

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

aws

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

key

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

secret

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

region

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

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

Байду#

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

baidu

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

key

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

secret

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

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

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

DeepL#

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

deepl

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

url

URL-адрес API

key

API-ключ

formality

Formality

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

Glosbe#

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

glosbe

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

У этого сервиса нет конфигурации.

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

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

См.также

Веб-сайт Glosbe

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

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

google-translate

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

key

API-ключ

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

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

API v3 Google Переводчика#

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

google-translate-api-v3

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

credentials

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

project

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

location

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

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

См.также

Документация по переводу Google, Аутентификация в облачных сервисах с использованием клиентских библиотек <https://cloud.google.com/docs/authentication/client-libraries> _, Создание проекта Google Translate, Местоположения Google Cloud App Engine

Свободный перевод#

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

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

libretranslate

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

url

URL-адрес API

key

API-ключ

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

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

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

Microsoft Terminology (Терминология Майкрософт)#

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

microsoft-terminology

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

У этого сервиса нет конфигурации.

API терминологической службы Майкрософт позволяет программно получать доступ к терминологии, определениям и строкам пользовательского интерфейса (UI), доступным на языковом портале, через веб-сервис.

Microsoft переводчик#

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

microsoft-translator

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

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

Регион службы аутентификации

Сервис машинного перевода, предоставляемый Microsoft на портале Azure в качестве одного из сервисов Cognitive Services.

Weblate реализует API переводчика версии V3.

API переводчика текста версии V2#

Ключ, который вы используете для API переводчика версии V2, можно использовать с API версии 3.

API переводчика текста версии V3#

Вам необходимо зарегистрироваться на портале Azure и использовать полученный там ключ. С новыми ключами Azure вам также потребуется установить параметр region в локаль вашего сервиса.

Подсказка

Для Azure China используйте, пожалуйста, свою конечную точку на портале Azure Portal.

Современный МТ#

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

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

modernmt

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

url

URL-адрес API

key

API-ключ

См.также

ModernMT API,

Мои воспоминания#

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

mymemory

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

email

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

username

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

key

API-ключ

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

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

См.также

Веб-сайт MyMemory

NetEase Sight#

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

netease-sight

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

key

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

secret

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

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

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

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

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

sap-translation-hub

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

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.

ТМ сервер#

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

tmserver

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

url

URL-адрес API

Вы можете запустить свой собственный сервер памяти переводов, используя сервер, входящий в Translate-toolkit, и настроив Weblate на взаимодействие с ним. Также вы можете использовать его с сервером amaGama, который является расширенной версией tmserver.

  1. Сперва вам нужно импортировать в память переводов некоторые данные:

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. Запустите tmserver, чтобы он слушал ваши запросы:

tmserver -d /var/lib/tm/db
  1. Настройте Weblate на взаимодействие с ним, URL-адрес по умолчанию — http://localhost:8888/tmserver/.

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

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

ibm

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

url

URL-адрес API

key

API-ключ

IBM Watson Language Translator переводит текст с одного языка на другой. Сервис предлагает несколько моделей, специфичных для конкретной предметной области.

Weblate#

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

weblate

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

У этого сервиса нет конфигурации.

Служба машинного перевода Weblate может обеспечить перевод строк, которые уже переведены внутри Weblate. Он ищет точные совпадения в существующих строках.

Память переводов Weblate#

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

weblate-translation-memory

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

У этого сервиса нет конфигурации.

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

Яндекс#

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

yandex

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

key

API-ключ

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

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

Яндекс v2#

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

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

yandex-v2

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

key

API-ключ

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

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

тебе до Z, привет удачи#

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

youdao-zhiyun

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

key

Идентификатор (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

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}

Вы можете добавить свой класс в WEBLATE_MACHINERY и Weblate начнёт его использовать.