翻譯文字

如要執行翻譯工作,Vertex AI 上的生成式 AI 可讓您選擇 Gemini 模型,或是 Cloud Translation API 的兩種專用翻譯模型:

  • Translation LLM - Google 最新推出的 LLM 翻譯服務,可提供最高品質的譯文。以合理的延遲時間提供最高品質的翻譯服務 (比 Gemini 2.0 Flash 快約 3 倍)。

  • Cloud Translation 神經機器翻譯 (NMT) 模型 - Google 的頂尖即時翻譯服務,翻譯延遲時間約為 100 毫秒。在所有基準化模型中,Gemini 1.0 Pro 的品質最高,且延遲時間相近,品質也持續提升。NMT 的延遲時間最多可比 Gemini 2.0 Flash 快 20 倍。

翻譯 LLM 的主要優勢和差異化因素

  • 無與倫比的翻譯品質 - Translation LLM 的翻譯品質最高,與其他基準化模型相比,在基準測試中的效能顯著提升。相較於其他翻譯模型常見的「逐字」翻譯,翻譯 LLM 更可能大幅改寫句子,讓譯文聽起來更自然
  • 優異的品質/延遲時間取捨 - 翻譯 LLM 提供的 LLM 輔助翻譯,延遲時間明顯優於 Gemini 2.0 Flash。雖然 Translation LLM 的延遲時間比 NMT 模型長,但通常能為各種應用程式提供更高品質的回覆。

模型功能比較

功能 翻譯 LLM (採用 Gemini 技術) 神經機器翻譯模型
說明 這類大型語言模型以 Gemini 為基礎,並經過微調,專門用於翻譯。適用於 Vertex AI 生成式 AI 和 Cloud Translation - Advanced API。 Google 的神經機器翻譯模型,可透過 Cloud Translation - Advanced 和 Cloud Translation - Basic API 使用。簡化作業並提升規模。
品質 最高品質的翻譯。在品質方面,優於 NMT、Gemini 2.0 Flash 和 Gemini 2.5 Pro。更有可能重寫句子,讓內容更自然流暢。大幅減少錯誤。 視語言組合而定,翻譯品質為中等至高等。在許多語言領域組合中,都是成效最佳的即時 NMT 模型。
延遲時間 延遲時間比 Gemini 2.0 Flash 顯著縮短,但仍比 NMT 慢。 最快速的即時翻譯。延遲時間短,適合用於即時通訊和即時應用程式。延遲時間比 Gemini 2.0 Flash 最快可縮短 20 倍
語言支援 支援 19 種語言。支援的語言包括阿拉伯文、中文、捷克文、荷蘭文、英文、法文、德文、北印度文、印尼文、義大利文、日文、韓文、波蘭文、葡萄牙文、俄文、西班牙文、泰文、土耳其文、烏克蘭文和越南文。2025 年 4 月將大幅擴充支援語言。 支援 189 種語言,包括粵語、斐濟語和巴里語。系統支援從支援清單中的任何語言翻譯成其他語言。
自訂 支援 - 進階詞彙表、 在 Vertex AI 上進行監督式微調,以適應特定領域/客戶需求、 適應性翻譯,可根據幾個範例即時自訂風格。 支援 - 詞彙表,可控管術語,並在 Cloud Translation - Advanced API 中使用 AutoML Translation 訓練自訂模型
翻譯功能 HTML 翻譯 HTML、批次和格式化文件翻譯
API 整合 Cloud Translation - Advanced API、Vertex AI API Cloud Translation - Basic API、 Cloud Translation - Advanced API、 Vertex AI API

用量

本節說明如何使用 Vertex AI Studio,快速將文字翻譯成其他語言。您可以使用 Translation LLM、Gemini 或 NMT 模型,透過 Google Cloud 控制台或 API 翻譯文字。請注意,每個模型支援的語言可能不盡相同。要求翻譯前,請先確認您使用的模型支援來源和目標語言

控制台

  1. 在 Google Cloud 控制台的 Vertex AI 專區中,前往 Vertex AI Studio 的「Translate text」(翻譯文字) 頁面。

    前往 Vertex AI Studio

  2. 在「執行設定」窗格中,選取「模型」欄位中的翻譯模型。

  3. 如要變更模型設定 (例如溫度),請展開「進階」

  4. 設定原文和譯文語言。

  5. 在輸入欄位中輸入要翻譯的文字。

  6. 按一下「提交」

  7. 如要取得程式碼或 curl 指令,瞭解如何要求翻譯,請按一下「取得程式碼」

請注意,在 Vertex AI Studio 中,您可以提供範例翻譯,讓 Translation LLM 根據您的風格、語氣和產業領域,精心打造回覆內容。模型會先將您的範例做為少樣本內容,再翻譯文字。

API

選取要用於翻譯的模型。

翻譯 LLM

使用 Vertex AI API 和 Translation 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 方法和網址:

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 回應:

{
  "predictions": [
    {
      "translations": [
        {
          "translatedText": "TRANSLATED_TEXT",
          "model": "projects/PROJECT_ID/locations/LOCATION/models/general/translation-llm"
        }
      ]
    }
  ]
}

Node.js

在試用這個範例之前,請先按照Node.js使用用戶端程式庫的 Vertex AI 快速入門中的操作說明進行設定。 詳情請參閱 Vertex AI Node.js API 參考說明文件

如要向 Vertex AI 進行驗證,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。

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

在試用這個範例之前,請先按照Python使用用戶端程式庫的 Vertex AI 快速入門中的操作說明進行設定。 詳情請參閱 Vertex AI Python API 參考說明文件

如要向 Vertex AI 進行驗證,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。

from google.cloud import aiplatform

def translate():
  # Create a client
  client_options = {"api_endpoint": "LOCATION-aiplatform.googleapis.com"}
  client = aiplatform.gapic.PredictionServiceClient(client_options=client_options)
  
  # Initialize the request
  endpoint_id = f"projects/PROJECT_ID/locations/LOCATION/publishers/google/models/cloud-translate-text"
  instances=[{
    "model": "projects/PROJECT_ID/locations/LOCATION/models/general/translation-llm",
    "source_language_code": 'SOURCE_LANGUAGE_CODE',
    "target_language_code": 'TARGET_LANGUAGE_CODE',
    "contents": ["SOURCE_TEXT"],
  }]

  # Make the request
  response = client.predict(instances=instances, endpoint=endpoint_id)
  # Handle the response
  print(response)
      

Gemini

使用 Vertex AI API 和 Gemini 翻譯文字。

你也可以透過開放式提示和提示工程,進一步自訂 Gemini 回覆。

REST

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_NUMBER_OR_ID:專案的數值或英數字元 ID。 Google Cloud
  • 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,模型一律會選取可能性最高的詞元。在這種情況下,特定提示的回覆大多是確定性的,但仍可能出現少量差異。

    如果模型的回覆太普通、太短或提供了備用回覆,再試試看調高 Temperature。

  • TOP_P: Top-P 會影響模型選取輸出詞元的方式。模型會按照可能性最高到最低的順序選取符記,直到所選符記的可能性總和等於 Top-P 值。舉例來說,假設詞元 A、B 和 C 的可能性分別為 0.3、0.2 和 0.1,而「Top-P」值為 0.5,模型會依據 temperature 選擇 A 或 B 做為下一個詞元,並排除 C。

    如要取得較不隨機的回覆,請指定較低的值;如要取得較隨機的回覆,請調高此值。

  • TOP_K: Top-K 會影響模型選取輸出詞元的方式。如果 Top-K 設為 1,代表下一個所選詞元是模型詞彙表的所有詞元中可能性最高者 (也稱為「貪婪解碼」)。如果 Top-K 設為 3,則代表模型會依據 temperature,從可能性最高的 3 個詞元中選取下一個詞元。

    在每個符記選取步驟中,模型會對機率最高的「Top-K」符記取樣,接著進一步根據「Top-P」篩選詞元,最後依 temperature 選出最終詞元。

    如要取得較不隨機的回覆,請指定較低的值;如要取得較隨機的回覆,請調高此值。

  • MAX_OUTPUT_TOKENS: 回覆內可以生成的詞元數量上限。一個詞元約為四個字元。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 方法和網址:

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

在試用這個範例之前,請先按照Node.js使用用戶端程式庫的 Vertex AI 快速入門中的操作說明進行設定。 詳情請參閱 Vertex AI Node.js API 參考說明文件

如要向 Vertex AI 進行驗證,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。

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

在試用這個範例之前,請先按照Python使用用戶端程式庫的 Vertex AI 快速入門中的操作說明進行設定。 詳情請參閱 Vertex AI Python API 參考說明文件

如要向 Vertex AI 進行驗證,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。

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:專案的數值或英數字元 ID。 Google Cloud
  • SOURCE_LANGUAGE:(選用) 輸入文字的語言代碼。如要查看支援的語言代碼,請參閱「語言支援」一文。
  • TARGET_LANGUAGE:輸入文字的目標翻譯語言。設為支援的語言代碼
  • SOURCE_TEXT:要翻譯的文字。

HTTP 方法和網址:

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

在試用這個範例之前,請先按照Node.js使用用戶端程式庫的 Vertex AI 快速入門中的操作說明進行設定。 詳情請參閱 Vertex AI Node.js API 參考說明文件

如要向 Vertex AI 進行驗證,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。

/**
 * 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() {
  // MIME type of the content to translate
  // Supported MIME types:
  // https://cloud.google.com/translate/docs/supported-formats
  const mimeType = 'text/plain';

  // Construct request
  const request = {
    parent: `projects/${projectId}/locations/${location}`,
    contents: [text],
    mimeType: mimeType,
    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

在試用這個範例之前,請先按照Python使用用戶端程式庫的 Vertex AI 快速入門中的操作說明進行設定。 詳情請參閱 Vertex AI Python API 參考說明文件

如要向 Vertex AI 進行驗證,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。

import os

# Import the Google Cloud Translation library.
from google.cloud import translate_v3

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


def translate_text(
    text: str = "YOUR_TEXT_TO_TRANSLATE",
    source_language_code: str = "en-US",
    target_language_code: str = "fr",
) -> translate_v3.TranslationServiceClient:
    """Translate Text from a Source language to a Target language.
    Args:
        text: The content to translate.
        source_language_code: The code of the source language.
        target_language_code: The code of the target language.
            For example: "fr" for French, "es" for Spanish, etc.
            Find available languages and codes here:
            https://cloud.google.com/translate/docs/languages#neural_machine_translation_model
    """

    # Initialize Translation client.
    client = translate_v3.TranslationServiceClient()
    parent = f"projects/{PROJECT_ID}/locations/global"

    # MIME type of the content to translate.
    # Supported MIME types:
    # https://cloud.google.com/translate/docs/supported-formats
    mime_type = "text/plain"

    # Translate text from the source to the target language.
    response = client.translate_text(
        contents=[text],
        parent=parent,
        mime_type=mime_type,
        source_language_code=source_language_code,
        target_language_code=target_language_code,
    )

    # Display the translation for the text.
    # For example, for "Hello! How are you doing today?":
    # Translated text: Bonjour comment vas-tu aujourd'hui?
    for translation in response.translations:
        print(f"Translated text: {translation.translated_text}")

    return response

自訂翻譯

提供範例翻譯,自訂翻譯 LLM 的回覆。自訂翻譯功能僅適用於 Translation LLM。

您可以透過 Vertex AI Studio 控制台或 API 要求自訂翻譯,但兩者有一項差異。只有在您以 TMX 或 TSV 檔案提供範例時,控制台才會支援自訂翻譯。只有在您以內嵌方式提供範例 (最多 5 組句子配對) 做為翻譯要求的一部分時,API 才會支援自訂翻譯。

資料條件

如果您在檔案中提供範例翻譯,供 Google Cloud 控制台使用,範例必須以 TMX 或 TSV 檔案中的區段配對形式撰寫。每對都包含來源語言區隔和翻譯後的對應內容。詳情請參閱 Cloud Translation 說明文件中的「準備範例翻譯」。

為獲得最準確的結果,請提供各種情境的具體示例。你必須加入至少 5 個語句組合,但不得超過 10,000 個。此外,一組區隔最多只能有 512 個字元。

控制台

  1. 在 Google Cloud 控制台的 Vertex AI 專區中,前往 Vertex AI Studio 的「Translate text」(翻譯文字) 頁面。

    前往 Vertex AI Studio

  2. 在「執行設定」窗格中,設定翻譯設定。

    1. 在「模型」欄位中,選取「翻譯 LLM」
    2. 如要調整溫度,請展開「進階」
  3. 按一下「新增樣本」

    1. 選取本機檔案或 Cloud Storage 中的檔案。Vertex AI Studio 會根據檔案判斷來源和目標語言。
    2. 選取模型在生成回覆前使用的範例數量。

    您選取的範例數量會計入每項請求的輸入字元限制 (3,000 個)。

  4. 在輸入欄位中輸入要翻譯的文字。

  5. 按一下「提交」

    Vertex AI 會自動選取與輸入內容最相似的指定數量參考句子。翻譯模型會從範例中找出模式,並在生成回覆時套用這些模式。

    每項要求的輸出內容上限為 3,000 個字元。任何超過此上限的文字都會遭到捨棄。

  6. 如要取得程式碼或 curl 指令,瞭解如何要求翻譯,請按一下「取得程式碼」

API

如要要求自訂翻譯,請在翻譯要求中加入最多五組參考句子。翻譯模型會使用所有範例來找出模式,並在生成回覆時套用這些模式。

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 方法和網址:

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"
      },
      "content": [
        "SOURCE_TEXT"
      ],
      "mimeType": "MIME_TYPE"
    }
  ]
}

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

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

Node.js

在試用這個範例之前,請先按照Node.js使用用戶端程式庫的 Vertex AI 快速入門中的操作說明進行設定。 詳情請參閱 Vertex AI Node.js API 參考說明文件

如要向 Vertex AI 進行驗證,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。

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

在試用這個範例之前,請先按照Python使用用戶端程式庫的 Vertex AI 快速入門中的操作說明進行設定。 詳情請參閱 Vertex AI Python API 參考說明文件

如要向 Vertex AI 進行驗證,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。

from google.cloud import aiplatform
from google.protobuf.json_format import MessageToDict

def translate():
  # Create a client
  client_options = {"api_endpoint": "LOCATION-aiplatform.googleapis.com"}
  client = aiplatform.gapic.PredictionServiceClient(client_options=client_options)

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

  # The predictions are a google.protobuf.Value representation of the model's predictions.
  predictions = MessageToDict(response._pb)['predictions']
  for prediction in predictions:
      print(prediction['translations'])
  

您也可以使用 Cloud Translation API 建立資料集,並匯入例句配對。使用 Cloud Translation API 要求翻譯時,您可以加入資料集來自訂回覆內容。資料集會保留下來,可重複用於多個翻譯要求。詳情請參閱 Cloud Translation 說明文件中的「要求自適應翻譯」。

支援的語言

翻譯 LLM

您可以使用 Translation LLM,在下列語言間互譯。

語言名稱 語言代碼
阿拉伯文 ar
孟加拉文 bn
保加利亞文 bg
加泰隆尼亞文 ca
中文 (簡體) zh-CN
克羅埃西亞文 hr
捷克文 cs
丹麥文 da
荷蘭文 nl
英文 en
愛沙尼亞 et
芬蘭文 fi
法文 fr
德文 de
希臘文 el
古吉拉特文 gu
希伯來文 he
北印度文 hi
匈牙利文 hu
冰島文 is
印尼文 id
義大利文 it
日文 ja
卡納達文 kn
韓文 ko
拉脫維亞文 lv
立陶宛文 lt
馬拉雅拉姆文 ml
馬拉地文 mr
挪威文 no
波斯文 fa
波蘭文 pl
葡萄牙文 pt
旁遮普文 pa
羅馬尼亞文 ro
俄文 ru
斯洛伐克文 sk
斯洛維尼亞文 sl
西班牙文 es
斯瓦希里文 sw
瑞典文 sv
泰米爾文 ta
泰盧固文 te
泰文 th
土耳其文 tr
烏克蘭語 uk
烏都文 ur
越南文 vi
祖魯語 zu

Gemini 和 NMT

如要瞭解 Gemini 模型和 Cloud Translation NMT 模型支援哪些語言,請參閱下列說明文件: