テキスト翻訳

このページでは、Vertex AI Studio を使用してテキストをある言語から別の言語に迅速に翻訳する方法について説明します。Vertex AI Studio の翻訳では、Gemini と 2 つの特殊な翻訳モデル(Cloud Translation のニューラル機械翻訳(NMT)モデルと、翻訳用にファインチューニングされた LLM(翻訳 LLM とも呼ばれます))のどちらかを選択できます。

翻訳 LLM を使用すると、スタイル、トーン、業界ドメインに近い翻訳例を指定することで、レスポンスを調整できます。モデルは、テキストを翻訳する前に、少量のサンプルをコンテキストとして使用します。Vertex AI Studio では、このカスタマイズは翻訳 LLM でのみ機能します。たとえば、Gemini または NMT モデルを使用しているときにサンプルを渡すことはできません。

サポートされている言語

各モデルがサポートする言語は異なります。翻訳をリクエストする前に、使用しているモデルが目的のソース言語とターゲット言語をサポートしていることを確認してください。

翻訳 LLM

翻訳 LLM では、次のいずれかの言語間で翻訳できます。

言語名 言語コード
アラビア語 ar
中国語 zh-CN
チェコ語 cs
オランダ語 nl
英語 en
フランス語 fr
ドイツ語 de
ヒンディー語 hi
インドネシア語 id
イタリア語 it
日本語 ja
韓国語 ko
ポーランド語 pl
ポルトガル語 pt
ロシア語 ru
スペイン語 es
タイ語 th
トルコ語 tr
ウクライナ語 uk
ベトナム語 vi

Gemini と NMT

Gemini と NMT モデルでサポートされている言語については、次のドキュメントをご覧ください。

テキストを翻訳する

Google Cloud コンソールまたは API を使用して、翻訳 LLM、Gemini、または NMT モデルを使用してテキストを翻訳します。

コンソール

  1. Google Cloud コンソールの [Cloud Translation] セクションで、[Vertex AI Studio] の [Translate text] ページに移動します。

    Vertex AI Studio に移動

  2. [実行設定] ペインの [モデル] フィールドで、翻訳モデルを選択します。

  3. モデルの設定(温度など)を変更するには、[詳細] を開きます。

  4. 原文の言語と訳文の言語を設定します。

  5. 入力フィールドに、翻訳するテキストを入力します。

  6. [送信] をクリックします。

  7. 翻訳のリクエスト方法を示すコードまたは curl コマンドを取得するには、[コードを取得] をクリックします。

API

翻訳に使用するモデルを選択します。

翻訳 LLM

Vertex AI API と翻訳 LLM を使用してテキストを翻訳します。

REST

リクエストのデータを使用する前に、次のように置き換えます。

  • PROJECT_NUMBER_OR_ID: Google Cloud プロジェクトの数字または英数字の ID
  • LOCATION: このオペレーションを実行するロケーション。例: us-central1
  • SOURCE_LANGUAGE_CODE: 入力テキストの言語コード。適応型翻訳に記載されているいずれかの言語コードを設定します。
  • TARGET_LANGUAGE_CODE: 入力テキストを翻訳する言語。適応型翻訳に記載されているいずれかの言語コードを設定します。
  • SOURCE_TEXT: 翻訳対象のソース言語のテキスト。
  • MIME_TYPE(省略可): ソーステキストの形式(text/htmltext/plain など)。デフォルトでは、MIME タイプは text/plain に設定されます。

HTTP メソッドと URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/cloud-translate-text:predict

リクエストの本文(JSON):

"instances": [{
  "source_language_code": "SOURCE_LANGUAGE_CODE",
  "target_language_code": "TARGET_LANGUAGE_CODE",
  "contents": ["SOURCE_TEXT"],
  "mimeType": "MIME_TYPE",
  "model": "projects/PROJECT_ID/locations/LOCATION/models/general/translation-llm"
}]

リクエストを送信するには、次のいずれかのオプションを展開します。

次のような JSON レスポンスが返されます。

{
  "translations": [
    {
      "translatedText": "TRANSLATED_TEXT"
    }
  ],
  "languageCode": "TARGET_LANGUAGE"
}

Node.js

このサンプルを試す前に、Cloud Translation クイックスタート: クライアント ライブラリの使用にある Node.js の設定手順を完了してください。詳細については、Cloud Translation Node.js API リファレンス ドキュメントをご覧ください。

Cloud Translation に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。

async function translate() {
  const request = {
    instances: [{
      source_language_code: SOURCE_LANGUAGE_CODE,
      target_language_code: TARGET_LANGUAGE_CODE,
      contents: [SOURCE_TEXT],
      model: "projects/PROJECT_ID/locations/LOCATION/models/general/translation-llm"
    }]
  };
  const {google} = require('googleapis');
  const aiplatform = google.cloud('aiplatform');
  const endpoint = aiplatform.predictionEndpoint('projects/PROJECT_ID/locations/LOCATION/publishers/google/models/cloud-translate-text');

  const [response] = await endpoint.predict(request)
  console.log('Translating')
  console.log(response)
}
      

Python

このサンプルを試す前に、Cloud Translation クイックスタート: クライアント ライブラリの使用にある Python の設定手順を完了してください。 詳細については、Cloud Translation Python API リファレンス ドキュメントをご覧ください。

Cloud Translation に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。

from google.cloud import aiplatform

def translate():
  # Create a client
  endpoint = aiplatform.Endpoint('projects/PROJECT_ID/locations/LOCATION/publishers/google/models/cloud-translate-text')
  # Initialize the request
  instances=[{
      "source_language_code": 'SOURCE_LANGUAGE_CODE',
      "target_language_code": 'TARGET_LANGUAGE_CODE',
      "contents": ["SOURCE_TEXT"],
      "model": "projects/PROJECT_ID/locations/LOCATION/models/general/translation-llm"
  }]
  # Make the request
  response = endpoint.predict(instances=instances)
  # Handle the response
  print(response)
      

Gemini

Vertex AI API と Gemini を使用してテキストを翻訳します。

オープン プロンプトとプロンプト エンジニアリングにより、Gemini の回答をさらにカスタマイズできます。

REST

リクエストのデータを使用する前に、次のように置き換えます。

  • PROJECT_NUMBER_OR_ID: Google Cloud プロジェクトの数字または英数字の ID。
  • LOCATION: リクエストを処理するロケーション。使用できるオプションは以下のとおりです。

    クリックして、利用可能なリージョンの一部を開く

    • us-central1
    • us-west4
    • northamerica-northeast1
    • us-east4
    • us-west1
    • asia-northeast3
    • asia-southeast1
    • asia-northeast1
  • MODEL_ID: モデルの ID(gemini-1.0-pro-002 など)
  • SOURCE_LANGUAGE_CODE: 入力テキストの言語。
  • TARGET_LANGUAGE_CODE: 入力テキストを翻訳する言語。
  • SOURCE_TEXT: 翻訳するテキスト。
  • TEMPERATURE: 温度は、topPtopK が適用された場合に発生するレスポンス生成時のサンプリングに使用されます。温度は、トークン選択のランダム性の度合いを制御します。温度が低いほど、確定的で自由度や創造性を抑えたレスポンスが求められるプロンプトに適しています。一方、温度が高いと、より多様で創造的な結果を導くことができます。温度が 0 の場合、確率が最も高いトークンが常に選択されます。この場合、特定のプロンプトに対するレスポンスはほとんど確定的ですが、わずかに変動する可能性は残ります。

    モデルが返すレスポンスが一般的すぎる、短すぎる、あるいはフォールバック(代替)レスポンスが返ってくる場合は、温度を高く設定してみてください。

  • TOP_P: Top-P は、モデルが出力用にトークンを選択する方法を変更します。トークンは、確率の合計が Top-P 値に等しくなるまで、確率の高いもの(Top-K を参照)から低いものへと選択されます。たとえば、トークン A、B、C の確率が 0.3、0.2、0.1 であり、Top-P 値が 0.5 であるとします。この場合、モデルは温度を使用して A または B を次のトークンとして選択し、C は候補から除外します。

    ランダムなレスポンスを減らしたい場合は小さい値を、ランダムなレスポンスを増やしたい場合は大きい値を指定します。

  • TOP_K: Top-K は、モデルが出力用にトークンを選択する方法を変更します。Top-K が 1 の場合、次に選択されるトークンは、モデルの語彙内のすべてのトークンで最も確率の高いものであることになります(グリーディ デコードとも呼ばれます)。Top-K が 3 の場合は、最も確率が高い上位 3 つのトークンから次のトークン選択されることになります(温度を使用します)。

    トークン選択のそれぞれのステップで、最も高い確率を持つ Top-K のトークンがサンプリングされます。その後、トークンは Top-P に基づいてさらにフィルタリングされ、最終的なトークンは温度サンプリングを用いて選択されます。

    ランダムなレスポンスを減らしたい場合は小さい値を、ランダムなレスポンスを増やしたい場合は大きい値を指定します。

  • MAX_OUTPUT_TOKENS: レスポンスで生成できるトークンの最大数。1 トークンは約 4 文字です。100 トークンは約 60~80 語に相当します。

    レスポンスを短くしたい場合は小さい値を、長くしたい場合は大きい値を指定します。

  • SAFETY_CATEGORY: しきい値を構成する安全性カテゴリ。指定できる値は以下のとおりです。

    クリックして安全性カテゴリを開く

    • HARM_CATEGORY_SEXUALLY_EXPLICIT
    • HARM_CATEGORY_HATE_SPEECH
    • HARM_CATEGORY_HARASSMENT
    • HARM_CATEGORY_DANGEROUS_CONTENT
  • THRESHOLD: 確率に基づいて、指定された安全性カテゴリに属する可能性のあるレスポンスをブロックするためのしきい値。指定できる値は以下のとおりです。

    クリックしてブロックしきい値を開く

    • BLOCK_NONE
    • BLOCK_ONLY_HIGH
    • BLOCK_MEDIUM_AND_ABOVE(デフォルト)
    • BLOCK_LOW_AND_ABOVE
    BLOCK_LOW_AND_ABOVE はブロック対象が最も多く、BLOCK_ONLY_HIGH はブロック対象が最も少なくなります。

HTTP メソッドと URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:streamGenerateContent

リクエストの本文(JSON):

{
  "contents": [
    {
      "role": "user",
      "parts": [
        {
        "text": "SOURCE_LANGUAGE_CODE: SOURCE_TEXT\nTARGET_LANGUAGE_CODE:"
        }
      ]
    }
  ],
  "generation_config": {
    "temperature": TEMPERATURE,
    "topP": TOP_P,
    "topK": TOP_K,
    "candidateCount": 1,
    "maxOutputTokens": MAX_OUTPUT_TOKENS
  }
  "safetySettings": [
    {
      "category": "SAFETY_CATEGORY",
      "threshold": "THRESHOLD"
    }
  ]
}

リクエストを送信するには、次のいずれかのオプションを展開します。

成功したことを示すステータス コード(2xx)と空のレスポンスが返されます。

Node.js

このサンプルを試す前に、Cloud Translation クイックスタート: クライアント ライブラリの使用にある Node.js の設定手順を完了してください。詳細については、Cloud Translation Node.js API リファレンス ドキュメントをご覧ください。

Cloud Translation に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。

const {VertexAI} = require('@google-cloud/vertexai');

// Initialize Vertex with your Cloud project and location
const vertex_ai = new VertexAI({project: 'PROJECT_ID', location: 'LOCATION'});
const model = 'gemini-1.0-pro';

// Instantiate the models
const generativeModel = vertex_ai.preview.getGenerativeModel({
  model: model,
  generationConfig: {
    'candidate_count': 1,
    'max_output_tokens': MAX_OUTPUT_TOKENS,
    'temperature': TEMPERATURE,
    'top_p': TOP_P,
    'top_k': TOP_K,
  },
  safetySettings: [
    {
        'category': 'HARM_CATEGORY_HATE_SPEECH',
        'threshold': 'BLOCK_MEDIUM_AND_ABOVE'
    },
    {
        'category': 'HARM_CATEGORY_DANGEROUS_CONTENT',
        'threshold': 'BLOCK_MEDIUM_AND_ABOVE'
    },
    {
        'category': 'HARM_CATEGORY_SEXUALLY_EXPLICIT',
        'threshold': 'BLOCK_MEDIUM_AND_ABOVE'
    },
    {
        'category': 'HARM_CATEGORY_HARASSMENT',
        'threshold': 'BLOCK_MEDIUM_AND_ABOVE'
    }
  ],
});


async function generateContent() {
  const req = {
    contents: [
      {role: 'user', parts: [{text: `SOURCE_LANGUAGE_CODE: TEXT
TARGET_LANGUAGE_CODE:`}]}
    ],
  };

  const streamingResp = await generativeModel.generateContentStream(req);

  for await (const item of streamingResp.stream) {
    process.stdout.write('stream chunk: ' + JSON.stringify(item) + '\n');
  }

  process.stdout.write('aggregated response: ' + JSON.stringify(await streamingResp.response));
}

generateContent();
      

Python

このサンプルを試す前に、Cloud Translation クイックスタート: クライアント ライブラリの使用にある Python の設定手順を完了してください。 詳細については、Cloud Translation Python API リファレンス ドキュメントをご覧ください。

Cloud Translation に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。

import base64
import vertexai
from vertexai.generative_models import GenerativeModel, Part, FinishReason
import vertexai.preview.generative_models as generative_models

def generate():
  vertexai.init(project="PROJECT_ID", location="LOCATION")
  model = GenerativeModel("gemini-1.0-pro")
  responses = model.generate_content(
      ["""SOURCE_LANGUAGE_CODE: TEXT
TARGET_LANGUAGE_CODE:"""],
      generation_config=generation_config,
      safety_settings=safety_settings,
  )

  print(responses)


generation_config = {
    "candidate_count": 1,
    "max_output_tokens": MAX_OUTPUT_TOKENS,
    "temperature": TEMPERATURE,
    "top_p": TOP_P,
    "top_k": TOP_K,
}

safety_settings = {
    generative_models.HarmCategory.HARM_CATEGORY_HATE_SPEECH: generative_models.HarmBlockThreshold.BLOCK_MEDIUM_AND_ABOVE,
    generative_models.HarmCategory.HARM_CATEGORY_DANGEROUS_CONTENT: generative_models.HarmBlockThreshold.BLOCK_MEDIUM_AND_ABOVE,
    generative_models.HarmCategory.HARM_CATEGORY_SEXUALLY_EXPLICIT: generative_models.HarmBlockThreshold.BLOCK_MEDIUM_AND_ABOVE,
    generative_models.HarmCategory.HARM_CATEGORY_HARASSMENT: generative_models.HarmBlockThreshold.BLOCK_MEDIUM_AND_ABOVE,
}

generate()
      

NMT

Cloud Translation API と NMT モデルを使用してテキストを翻訳します。

REST

リクエストのデータを使用する前に、次のように置き換えます。

  • PROJECT_NUMBER_OR_ID: Google Cloud プロジェクトの数字または英数字の ID。
  • SOURCE_LANGUAGE: (省略可)入力ドキュメントの言語コード。サポートされている言語コードについては、言語のサポートをご覧ください。
  • TARGET_LANGUAGE: 入力テキストを翻訳する言語。サポートされている言語コードのいずれかに設定します。
  • SOURCE_TEXT: 翻訳するテキスト。

HTTP メソッドと URL:

POST https://translation.googleapis.com/v3/projects/PROJECT_ID:translateText

リクエストの本文(JSON):

{
  "sourceLanguageCode": "SOURCE_LANGUAGE",
  "targetLanguageCode": "TARGET_LANGUAGE",
  "contents": ["SOURCE_TEXT1", "SOURCE_TEXT2"]
}

リクエストを送信するには、次のいずれかのオプションを展開します。

次のような JSON レスポンスが返されます。

{
  "translations": [
    {
      "translatedText": "TRANSLATED_TEXT1"
    },
    {
      "translatedText": "TRANSLATED_TEXT2"
    }
  ]
}

Node.js

このサンプルを試す前に、Cloud Translation クイックスタート: クライアント ライブラリの使用にある Node.js の設定手順を完了してください。詳細については、Cloud Translation Node.js API リファレンス ドキュメントをご覧ください。

Cloud Translation に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。

/**
 * TODO(developer): Uncomment these variables before running the sample.
 */
// const projectId = 'YOUR_PROJECT_ID';
// const location = 'global';
// const text = 'text to translate';

// Imports the Google Cloud Translation library
const {TranslationServiceClient} = require('@google-cloud/translate');

// Instantiates a client
const translationClient = new TranslationServiceClient();

async function translateText() {
  // Construct request
  const request = {
    parent: `projects/${projectId}/locations/${location}`,
    contents: [text],
    mimeType: 'text/plain', // mime types: text/plain, text/html
    sourceLanguageCode: 'en',
    targetLanguageCode: 'sr-Latn',
  };

  // Run request
  const [response] = await translationClient.translateText(request);

  for (const translation of response.translations) {
    console.log(`Translation: ${translation.translatedText}`);
  }
}

translateText();

Python

このサンプルを試す前に、Cloud Translation クイックスタート: クライアント ライブラリの使用にある Python の設定手順を完了してください。詳細については、Cloud Translation Python API リファレンス ドキュメントをご覧ください。

Cloud Translation に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。

# Imports the Google Cloud Translation library
import os

from google.cloud import translate_v3

PROJECT_ID = os.environ.get("GOOGLE_CLOUD_PROJECT")


# Initialize Translation client
def translate_text(
    text: str = "YOUR_TEXT_TO_TRANSLATE",
    language_code: str = "fr",
) -> translate_v3.TranslationServiceClient:
    """Translating Text from English.
    Args:
        text: The content to translate.
        language_code: The language code for the translation.
            E.g. "fr" for French, "es" for Spanish, etc.
            Available languages: https://cloud.google.com/translate/docs/languages#neural_machine_translation_model
    """

    client = translate_v3.TranslationServiceClient()
    parent = f"projects/{PROJECT_ID}/locations/global"
    # Translate text from English to chosen language
    # Supported mime types: # https://cloud.google.com/translate/docs/supported-formats
    response = client.translate_text(
        contents=[text],
        target_language_code=language_code,
        parent=parent,
        mime_type="text/plain",
        source_language_code="en-US",
    )

    # Display the translation for each input text provided
    for translation in response.translations:
        print(f"Translated text: {translation.translated_text}")
    # Example response:
    # Translated text: Bonjour comment vas-tu aujourd'hui?

    return response

カスタム翻訳

独自の翻訳例を指定することで、翻訳 LLM からのレスポンスをカスタマイズします。カスタム翻訳は、翻訳 LLM でのみ機能します。

カスタマイズされた翻訳は、Vertex AI Studio コンソールまたは API でリクエストできますが、1 つ違いがあります。コンソールは、TMX ファイルまたは TSV ファイルでサンプルを指定した場合にのみ、カスタム翻訳をサポートします。API は、翻訳リクエストの一部としてサンプル(最大 5 つの文ペア)をインラインで指定した場合にのみ、カスタム翻訳をサポートします。

データ要件

Google Cloud コンソールのファイルで翻訳サンプルを指定する場合は、TMX ファイルまたは TSV ファイルにセグメントのペアとしてサンプルを記述する必要があります。各ペアには、ソース言語のセグメントとその訳文が含まれます。詳細については、Cloud Translation ドキュメントの翻訳例を準備するをご覧ください。

最も正確な結果を得るには、さまざまなシナリオの具体的な例を含めてください。5 つ以上の文のペアを含める必要があります。ペアは 10,000 個以下にする必要があります。また、1 つのセグメントペアの最大文字数は合計で 512 文字です。

コンソール

  1. Google Cloud コンソールの [Cloud Translation] セクションで、[Vertex AI Studio] の [Translate text] ページに移動します。

    Vertex AI Studio に移動

  2. [実行設定] ペインで、翻訳の設定を行います。

    1. [モデル] フィールドで [Translation LLM] を選択します。
    2. 温度を変更するには、[詳細] を開きます。
  3. [例を追加] をクリックします。

    1. ローカル ファイルまたは Cloud Storage のファイルを選択します。Vertex AI Studio は、ファイルからソース言語とターゲット言語を決定します。
    2. レスポンスの生成前に、モデルで使用するサンプル数を選択します。

    選択したサンプルの数は、リクエストあたりの入力文字数の上限(3,000)にカウントされます。

  4. 入力フィールドに、翻訳するテキストを入力します。

  5. [送信] をクリックします。

    Cloud Translation は、入力に最も類似した参照文を指定の数だけ自動的に選択します。翻訳モデルはサンプルからパターンを識別し、レスポンスを生成する際にそれらのパターンを適用します。

    リクエストごとの出力文字数は 3,000 文字です。この上限を超えるテキストは破棄されます。

  6. 翻訳のリクエスト方法を示すコードまたは curl コマンドを取得するには、[コードを取得] をクリックします。

API

カスタム翻訳をリクエストするには、翻訳リクエストに最大 5 つの参照文のペアを含めます。翻訳モデルは、これらすべてを使用してサンプルからパターンを識別し、レスポンスを生成する際にそれらのパターンを適用します。

REST

リクエストのデータを使用する前に、次のように置き換えます。

  • PROJECT_NUMBER_OR_ID: Google Cloud プロジェクトの数字または英数字の ID
  • LOCATION: このオペレーションを実行するロケーション。例: us-central1
  • REFERENCE_SOURCE: 参照文のペアの一部である原文言語の文。
  • REFERENCE_TARGET: 参照文のペアの一部である訳文言語の文。
  • SOURCE_LANGUAGE: 入力テキストの言語コード。
  • TARGET_LANGUAGE: 入力テキストを翻訳する言語。
  • SOURCE_TEXT: 翻訳対象のソース言語のテキスト。
  • MIME_TYPE(省略可): ソーステキストの形式(text/htmltext/plain など)。デフォルトでは、MIME タイプは text/plain に設定されます。

HTTP メソッドと URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/translate-llm:predict

リクエストの本文(JSON):

"instances": [{
  "reference_sentence_config": {
    "reference_sentence_pair_lists": [
      {
        "reference_sentence_pairs": [{
          "source_sentence": "REFERENCE_SOURCE_1_1",
          "target_sentence": "REFERENCE_TARGET_1_1"
        },
        {
          "source_sentence": "REFERENCE_SOURCE_1_2",
          "target_sentence": "REFERENCE_SOURCE_1_2"
        }]
      }
    ],
    "source_language_code": "SOURCE_LANGUAGE_CODE",
    "target_language_code": "TARGET_LANGUAGE_CODE"
  },
  "contents": ["SOURCE_TEXT"],
  "mimeType": "MIME_TYPE"
}]

リクエストを送信するには、次のいずれかのオプションを展開します。

次のような JSON レスポンスが返されます。

{
  "translations": [
    {
      "translatedText": "TRANSLATED_TEXT"
    }
  ],
  "languageCode": "TARGET_LANGUAGE"
}

Node.js

このサンプルを試す前に、Cloud Translation クイックスタート: クライアント ライブラリの使用にある Node.js の設定手順を完了してください。詳細については、Cloud Translation Node.js API リファレンス ドキュメントをご覧ください。

Cloud Translation に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。

async function translate() {
  const request = {
    instances: [{
        "reference_sentence_config": {
          "reference_sentence_pair_lists": [{
            "reference_sentence_pairs": [{
              "source_sentence": 'SAMPLE_REFERENCE_SOURCE_1',
              "target_sentence": 'SAMPLE_REFERENCE_TARGET_1'
            },
            "reference_sentence_pairs": {
              "source_sentence": 'SAMPLE_REFERENCE_SOURCE_2',
              "target_sentence": 'SAMPLE_REFERENCE_TARGET_2'
            }]
          }],
          "source_language_code": 'SOURCE_LANGUAGE_CODE',
          "target_language_code": 'TARGET_LANGUAGE_CODE'
        },
        "contents": ["SOURCE_TEXT"]
    }]
  };
  const {google} = require('googleapis');
  const aiplatform = google.cloud('aiplatform');
  const endpoint = aiplatform.predictionEndpoint('projects/PROJECT_ID/locations/LOCATION/publishers/google/models/translate-llm');

  const [response] = await endpoint.predict(request)
  console.log('Translating')
  console.log(response)
}
  

Python

このサンプルを試す前に、Cloud Translation クイックスタート: クライアント ライブラリの使用にある Python の設定手順を完了してください。 詳細については、Cloud Translation Python API リファレンス ドキュメントをご覧ください。

Cloud Translation に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。

from google.cloud import aiplatform

def translate():
  # Create a client
  endpoint = aiplatform.Endpoint('projects/PROJECT_ID/locations/LOCATION/publishers/google/models/translate-llm')
  # Initialize the request
  instances=[{
      "reference_sentence_config": {
        "reference_sentence_pair_lists": [{
          "reference_sentence_pairs": [{
            "source_sentence": 'SAMPLE_REFERENCE_SOURCE_1',
            "target_sentence": 'SAMPLE_REFERENCE_TARGET_1'
          },
          "reference_sentence_pairs": {
            "source_sentence": 'SAMPLE_REFERENCE_SOURCE_2',
            "target_sentence": 'SAMPLE_REFERENCE_TARGET_2'
          }]
        }],
        "source_language_code": 'SOURCE_LANGUAGE_CODE',
        "target_language_code": 'TARGET_LANGUAGE_CODE'
      },
      "contents": ["SOURCE_TEXT"]
  }]
  # Make the request
  response = endpoint.predict(instances=instances)
  # Handle the response
  print(response)
  

Cloud Translation API を使用してデータセットを作成し、例文ペアをインポートすることもできます。Cloud Translation API を使用して翻訳をリクエストする場合は、データセットを含めてレスポンスをカスタマイズできます。データセットは保持され、複数の翻訳リクエストで再利用できます。詳細については、Cloud Translation ドキュメントの適応型翻訳をリクエストするをご覧ください。