自動提案の設定

バージョン 4.13 で変更: Weblate 4.13 以前では、サービスは 設定 で設定していました。

複数の機械翻訳および翻訳メモリのサービスへの対応が組み込まれています。各サービスは、管理者がサイト全体またはプロジェクト設定から有効にします。

../_images/project-machinery.png

注釈

利用規約があるので、自分の希望することが使用可能かどうかを確認してください。

各サービスは、コンポーネント構成 で設定した原文の言語から翻訳されます。参照: 原文の言語

参考

自動提案

Amagama

サービス ID:

amagama

設定:

このサービスには設定がありません。

特別にインストールされて動作している、Virtaal の作成者自身が作成した tmserver

Apertium APy

サービス ID:

apertium-apy

設定:

url

API URL

限定した言語セットに対して翻訳を提供する Libre ソフトウェアの機械翻訳プラットフォームです。

Apertium が推奨する使用方法は、Apertium-APy サーバーを独自に実行することです。

AWS

バージョン 3.1 で追加.

サービス ID:

aws

設定:

key

アクセス キー ID

secret

API 秘密鍵

region

リージョン名(地域名)

Amazon Translate は、対応している多くの言語間でテキストを英語に、またその逆に翻訳したりするためのニューラル機械翻訳サービスです。

Baidu

バージョン 3.2 で追加.

サービス ID:

baidu

設定:

key

クライアント ID

secret

クライアント シークレット

Baidu が提供する機械翻訳サービス。

このサービスは API を使用しています。使用するには、Baidu から ID と API キーを取得してください。

DeepL

バージョン 2.20 で追加.

サービス ID:

deepl

設定:

url

API URL

key

API キー

DeepL は有料サービスであり、複数の言語向けに優れた機械翻訳を提供しています。DeepL API サブスクリプションを購入するか、DeepL Pro (classic) プランを使用してください。

DeepL のサービスで使用する API の URL です。執筆時点では、v1 API の他に、v2 API の無料版と有料版があります。

https://api.deepl.com/v2/ (Weblate のデフォルト)

有料プラン用の API を使用し、使用量をもとにしたサブスクリプションです。

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

無料プラン用の API を使用し、使用量をもとにしたサブスクリプションです。

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

CAT ツール用を使用し、ユーザー単位でサブスクリプションを使用できます。

以前 Weblate は DeepL によって CAT ツールとして分類されていたため、v1 API を使用することになっていましたが、現在は v2 API を使用することになっています。そのため、デフォルトは v2 になっており、デフォルトの CAT サブスクリプションを持っていて Weblate がそのサブスクリプションを使用したい場合は v1 に変更できます。

使用する URL を確認する最も簡単な方法は、ブラウザーで次のような URL を開く事:

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

XXX を自分の auth_key に置き換えます。"Bonjour" を含む JSON オブジェクトを受信した場合は正常な URL です。異なる場合は、他の 3 種類を試してください。

Weblate は DeepL の敬称と親称に対応しており、言語(例えば de@formalde@informal があります)に応じたものが選択されます。

Glosbe

サービス ID:

glosbe

設定:

このサービスには設定がありません。

ほぼすべての使用している言語の、無料の辞書と翻訳メモリ。

API は無料で使用できますが、翻訳機能は使用するデータ ソースのライセンスに従います。不正使用を防止するために、設定時間内に 1 つの IP から呼び出せる回数には制限があります。

Google 翻訳

サービス ID:

google-translate

設定:

key

API キー

Google が提供する機械翻訳サービス。

このサービスは、Google Translation API を使用するので、API キーの取得と Google API コンソールでの課金の有効化が必要です。

Google 翻訳 API v3

サービス ID:

google-translate-api-v3

設定:

credentials

Google 翻訳サービスのアカウント情報

project

Google 翻訳プロジェクト

location

Google 翻訳の地域

Google Cloud サービスが提供する機械翻訳サービス。

LibreTranslate

バージョン 4.7.1 で追加.

サービス ID:

libretranslate

設定:

url

API URL

key

API キー

LibreTranslate は、無料のオープンソースの機械翻訳サービスです。公開するインスタンスには API キーが必要ですが、LibreTranslate は自分のサーバーにインストールできます。また、API を無料開放しているミラーサイトもあります。

https://libretranslate.com/ (公式に公開されたインスタンス)

外部から Web サイトに接続するには API キーが必要です。

Microsoft 用語集

バージョン 2.19 で追加.

サービス ID:

microsoft-terminology

設定:

このサービスには設定がありません。

Microsoft Terminology Service API を使用すると、Web サービスを使用して、言語ポータルで使用できる用語、定義、およびユーザー インターフェイス(UI)文字列にプログラムからアクセスできます。

Microsoft Translator

バージョン 2.10 で追加.

サービス ID:

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

認証サービス地域

Cognitive Services のひとつとして Azure portal でマイクロソフトが提供する機械翻訳サービス。

Weblate は Translator API V3 を実装しています。

Translator Text API V2

Translator API V2 で使用するキーは、API 3 にも使用できます。

Translator Text API V3

Azure ポータルに登録して、そこで取得したキーを使用します。新しい Azure キーを使用する場合は、サービスの言語に対して リージョン の設定も必要です。

ヒント

Azure China の場合は、Azure ポータルからエンドポイントを使用してください。

ModernMT

バージョン 4.2 で追加.

サービス ID:

modernmt

設定:

url

API URL

key

API キー

参考

ModernMT API

MyMemory

サービス ID:

mymemory

設定:

email

連絡先メールアドレス

username

ユーザー名

key

API キー

大量の翻訳メモリと機械翻訳。

現在、無料の匿名使用での制限は、100 リクエスト / 日。メールアドレス に連絡先のメールアドレスを指定した場合の制限は、1000 リクエスト / 日。追加は、応相談。

Netease Sight

バージョン 3.3 で追加.

サービス ID:

netease-sight

設定:

key

クライアント ID

secret

クライアント シークレット

NetEase が提供する機械翻訳サービス。

このサービスは API を使用するので、NetEase からキーとシークレットの取得が必要です。

SAP Translation Hub

サービス ID:

sap-translation-hub

設定:

url

API URL

key

API キー

username

SAP ユーザー名

password

SAP パスワード

enable_mt

機械翻訳の有効化

domain

翻訳のドメイン

翻訳ドメインの ID(BC など)。ドメインを指定しない場合、このメソッドは使用可能なすべてのドメインで翻訳を検索します。

SAP が提供する機械翻訳サービス。

このサービスを使用するには、SAP アカウント(および SAP Cloud Platform で有効な SAP Translation Hub)が必要です。

また、用語データベースだけでなく、機械翻訳サービスを使用するかどうかも構成できます。

注釈

サンドボックス API にアクセスするには、url および ``key``の設定が必要です。

productive API に接続するには、urlusername および password の設定が必要です。

tmserver

サービス ID:

tmserver

設定:

url

API URL

Translate-toolkit に付属したサーバーを使用して、独自の翻訳メモリ サーバーを実行し、Weblate とやり取りできます。また、tmserver の拡張版である amaGama サーバーでも使用できます。

  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 Language Translator

サービス ID:

ibm

設定:

url

API URL

key

API キー

IBM Watson Language Translator は、テキストをある言語から別の言語に翻訳します。このサービスは、複数のドメイン固有のモデルを提供します。

Weblate

サービス ID:

weblate

設定:

このサービスには設定がありません。

Weblate 機械翻訳サービスは、Weblate 内で既に翻訳されている文字列の翻訳を提供できます。既存の文字列の完全一致を検索します。

Weblate 翻訳メモリ

バージョン 2.20 で追加.

サービス ID:

weblate-translation-memory

設定:

このサービスには設定がありません。

機械翻訳サービスとして 翻訳メモリ を使用します。過去に翻訳された(または翻訳メモリにアップロードされた)文字列は、この方法で翻訳できます。

Yandex

サービス ID:

yandex

設定:

key

API キー

Yandex が提供する機械翻訳サービス。

このサービスは Translation API を使用するので、Yandex から API キーの取得が必要です。

Youdao Zhiyun

バージョン 3.2 で追加.

サービス ID:

youdao-zhiyun

設定:

key

クライアント ID

secret

クライアント シークレット

Youdao が提供する機械翻訳サービス。

このサービスは API を使用するので、Youdao から ID と 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 は設定したクラスの使用を開始します。