翻訳 LLM(TLLM)モデル

Google の最新の最先端の翻訳モデルである TLLM は、利用可能な最高品質の翻訳を提供する LoRA チューニング済み LLM です。他の翻訳モデルよりも、難しいワークロードで MetricXCOMET のスコアが大幅に向上しています。カスタマイズと、より軽量な適応型翻訳をサポートしています。

モデル ID は general/translation-llm です。

TLLM モデルにアクセスするには、Cloud Translation - Advanced API が有効になっている Google Cloud プロジェクトと、認証済みの呼び出しを行うための認証情報が必要です。Python などのプログラミング言語を使用してモデルにアクセスするには、適切な v3 クライアント ライブラリをインストールします。

ここで示す例では、PROJECT_ID はプロジェクト ID を表し、REGION_NAME は変換オペレーションを実行する Google Cloud リージョンの技術的なリージョン名(us-central1 など)を表します。必要に応じて、ISO-639 コードを使用して、ソース言語とターゲット言語を指定します。

テキスト翻訳の REST の例

REST API を使用して、TLLM モデルで TranslateText を呼び出すことができます。リクエスト フィールドは、request.json などの名前の JSON ファイルに配置できます。

{
  "contents": ["This is text that I would like to have translated.",
               "It can include up to 1024 strings."],
  "mimeType": "text/plain",
  "sourceLanguageCode": "en"
  "targetLanguageCode": "it",
  "model": "projects/PROJECT_ID/locations/REGION_NAME/models/general/translation-llm"
}

その後、curl コマンドを使用してリクエストを送信できます。

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth print-access-token)" \
     -H "x-goog-user-project: PROJECT_ID" \
     -H "Content-Type: application/json; charset=utf-8" \
     -d @request.json \
     "https://translation.googleapis.com/v3/projects/PROJECT_ID:translateText"

レスポンスは次のような JSON ドキュメントです。

{
  "translations": [
    {
      "translatedText": "Este es el texto que me gustaría traducir.",
      "model": "projects/PROJECT_ID/locations/REGION_NAME/models/general/translation-llm"
    },
    {
      "translatedText": "Puede incluir hasta 1024 cadenas.",
      "model": "projects/PROJECT_ID/locations/REGION_NAME/models/general/translation-llm"
    }
  ]
}

テキスト翻訳の Python の例

TLLM モデルで TranslateText を呼び出す Python のサンプルコードを次に示します。

from google.cloud import translate_v3

def translate():

  response = translate_v3.TranslationServiceClient().translate_text(
      contents=["Life is short.",
                  "Art is long."],
      target_language_code='fr',
      source_language_code='en',
      parent=f"projects/PROJECT_ID/locations/REGION_NAME",
      model=f"projects/PROJECT_ID/locations/REGION_NAME/models/general/translation-llm"
  )

  print(response)

  return response

translate()

レスポンスは JSON オブジェクトの形式になります。

translations {
  translated_text: "La vie est courte."
  model: "projects/261347268520/locations/us-central1/models/general/translation-llm"
}
translations {
  translated_text: "L'art est long."
  model: "projects/261347268520/locations/us-central1/models/general/translation-llm"
}

translations {
  translated_text: "La vie est courte."
  model: "projects/261347268520/locations/us-central1/models/general/translation-llm"
}
translations {
  translated_text: "L'art est long."
  model: "projects/261347268520/locations/us-central1/models/general/translation-llm"