探索支援的語言 (進階版)

使用 Cloud Translation API 列出 NMT 模型支援的語言。如要瞭解 AutoML Translation 支援的語言組合,請參閱自訂模型支援的語言

事前準備

如要開始使用 Cloud Translation API,您必須擁有已啟用 Cloud Translation API 的專案,並具備適當的憑證。您也可以安裝常用程式設計語言的用戶端程式庫,協助您呼叫 API。詳情請參閱「設定」頁面。

列出支援的語言

REST

如要取得所有支援語言的清單,請對 https://translation.googleapis.com/v3/projects/project-number-or-id/locations/location/supportedLanguages URL 發出 GET 要求。以下為使用 curl 和 PowerShell 的 GET 要求範例。範例中使用的存取憑證,屬於使用 Google Cloud Google Cloud CLI 建立的專案服務帳戶。如需安裝 Google Cloud CLI、使用服務帳戶建立專案,以及取得存取憑證的操作說明,請參閱「設定」頁面。

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

  • PROJECT_NUMBER_OR_ID: Google Cloud 專案的數值或英數字元 ID

HTTP 方法和網址:

GET https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/global/supportedLanguages

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

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

 {   "languages": [      "languageCode": "af",       "supportSource": true,       "supportTarget": true     },     {       "languageCode": "am",       "supportSource": true,       "supportTarget": true     },     {       "languageCode": "ar",       "supportSource": true,       "supportTarget": true     },     ....     {       "languageCode": "zu",       "supportSource": true,       "supportTarget": true     }    ] } 

清單會依語言代碼的字母順序排序。這項查詢會傳回支援語言的 ISO-639 語言代碼。部分語言也會包含國家/地區代碼,例如 zh-CN 或 zh-TW。例如:

   {       "languageCode": "zh-TW",       "supportSource": true,       "supportTarget": true     },

Go

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

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

import ( 	"context" 	"fmt" 	"io"  	translate "cloud.google.com/go/translate/apiv3" 	"cloud.google.com/go/translate/apiv3/translatepb" )  // getSupportedLanguages gets a list of supported language codes. func getSupportedLanguages(w io.Writer, projectID string) error { 	// projectID := "my-project-id"  	ctx := context.Background() 	client, err := translate.NewTranslationClient(ctx) 	if err != nil { 		return fmt.Errorf("NewTranslationClient: %w", err) 	} 	defer client.Close()  	req := &translatepb.GetSupportedLanguagesRequest{ 		Parent: fmt.Sprintf("projects/%s/locations/global", projectID), 	}  	resp, err := client.GetSupportedLanguages(ctx, req) 	if err != nil { 		return fmt.Errorf("GetSupportedLanguages: %w", err) 	}  	// List language codes of supported languages 	fmt.Fprintf(w, "Supported languages:\n") 	for _, language := range resp.GetLanguages() { 		fmt.Fprintf(w, "Language code: %v\n", language.GetLanguageCode()) 	}  	return nil } 

Java

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

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

import com.google.cloud.translate.v3.GetSupportedLanguagesRequest; import com.google.cloud.translate.v3.LocationName; import com.google.cloud.translate.v3.SupportedLanguage; import com.google.cloud.translate.v3.SupportedLanguages; import com.google.cloud.translate.v3.TranslationServiceClient; import java.io.IOException;  public class GetSupportedLanguages {    public static void getSupportedLanguages() throws IOException {     // TODO(developer): Replace these variables before running the sample.     String projectId = "YOUR-PROJECT-ID";     getSupportedLanguages(projectId);   }    // Getting a list of supported language codes   public static void getSupportedLanguages(String projectId) throws IOException {      // Initialize client that will be used to send requests. This client only needs to be created     // once, and can be reused for multiple requests. After completing all of your requests, call     // the "close" method on the client to safely clean up any remaining background resources.     try (TranslationServiceClient client = TranslationServiceClient.create()) {       // Supported Locations: `global`, [glossary location], or [model location]       // Glossaries must be hosted in `us-central1`       // Custom Models must use the same location as your model. (us-central1)       LocationName parent = LocationName.of(projectId, "global");       GetSupportedLanguagesRequest request =           GetSupportedLanguagesRequest.newBuilder().setParent(parent.toString()).build();        SupportedLanguages response = client.getSupportedLanguages(request);        // List language codes of supported languages       for (SupportedLanguage language : response.getLanguagesList()) {         System.out.printf("Language Code: %s\n", language.getLanguageCode());       }     }   } }

Node.js

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

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

/**  * TODO(developer): Uncomment these variables before running the sample.  */ // const projectId = 'YOUR_PROJECT_ID'; // const location = 'global';  // Imports the Google Cloud Translation library const {TranslationServiceClient} = require('@google-cloud/translate');  // Instantiates a client const translationClient = new TranslationServiceClient();  async function getSupportedLanguages() {   // Construct request   const request = {     parent: `projects/${projectId}/locations/${location}`,   };    // Get supported languages   const [response] = await translationClient.getSupportedLanguages(request);    for (const language of response.languages) {     // Supported language code, generally consisting of its ISO 639-1 identifier, for     // example, 'en', 'ja'. In certain cases, BCP-47 codes including language and     // region identifiers are returned (for example, 'zh-TW' and 'zh-CN')     console.log(`Language - Language Code: ${language.languageCode}`);     // Human readable name of the language localized in the display language specified     // in the request.     console.log(`Language - Display Name: ${language.displayName}`);     // Can be used as source language.     console.log(`Language - Support Source: ${language.supportSource}`);     // Can be used as target language.     console.log(`Language - Support Target: ${language.supportTarget}`);   } }  getSupportedLanguages();

Python

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

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

from google.cloud import translate   def get_supported_languages(     project_id: str = "YOUR_PROJECT_ID", ) -> translate.SupportedLanguages:     """Getting a list of supported language codes.      Args:         project_id: The GCP project ID.      Returns:         A list of supported language codes.     """     client = translate.TranslationServiceClient()      parent = f"projects/{project_id}"      # Supported language codes: https://cloud.google.com/translate/docs/languages     response = client.get_supported_languages(parent=parent)      # List language codes of supported languages.     print("Supported Languages:")     for language in response.languages:         print(f"Language Code: {language.language_code}")      return response  

其他語言

C#: 請按照用戶端程式庫頁面的 C# 設定說明操作, 然後前往 .NET 適用的 Cloud Translation 參考說明文件

PHP: 請按照用戶端程式庫頁面的 PHP 設定說明 操作,然後前往 PHP 適用的 Cloud Translation 參考說明文件

Ruby: 請按照用戶端程式庫頁面的 Ruby 設定說明 操作,然後前往 Ruby 適用的 Cloud Translation 參考文件

以譯文語言名稱列出支援的語言

REST

以下為傳回支援語言清單的另一個範例,傳回的語言名稱以指定譯文語言編寫。傳回的清單依譯文語言的字母順序排序。

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

  • PROJECT_NUMBER_OR_ID: Google Cloud 專案的數值或英數字元 ID

HTTP 方法和網址:

GET https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/global/supportedLanguages?display_language_code=sq

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

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

 {   "languages": [{       "languageCode": "af",       "displayName": "Afrikanisht",       "supportSource": true,       "supportTarget": true     },     {       "languageCode": "am",       "displayName": "Amarikisht",       "supportSource": true,       "supportTarget": true     },     {       "languageCode": "en",       "displayName": "Anglisht",       "supportSource": true,       "supportTarget": true     },     ...{       "languageCode": "zu",       "displayName": "Zulu",       "supportSource": true,       "supportTarget": true     }  	] } 

在這個範例中,查詢所傳回的語言代碼與上述範例相同,此外還傳回了 name 字串,指定以譯文語言寫入之語言的名稱。在本例中,語言為阿爾巴尼亞文 (sq)。

Go

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

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

import ( 	"context" 	"fmt" 	"io"  	translate "cloud.google.com/go/translate/apiv3" 	"cloud.google.com/go/translate/apiv3/translatepb" )  // getSupportedLanguagesForTarget gets a list of supported language codes with target language names. func getSupportedLanguagesForTarget(w io.Writer, projectID string, languageCode string) error { 	// projectID := "my-project-id" 	// languageCode := "is"  	ctx := context.Background() 	client, err := translate.NewTranslationClient(ctx) 	if err != nil { 		return fmt.Errorf("NewTranslationClient: %w", err) 	} 	defer client.Close()  	req := &translatepb.GetSupportedLanguagesRequest{ 		Parent:              fmt.Sprintf("projects/%s/locations/global", projectID), 		DisplayLanguageCode: languageCode, 	}  	resp, err := client.GetSupportedLanguages(ctx, req) 	if err != nil { 		return fmt.Errorf("GetSupportedLanguages: %w", err) 	}  	// List language codes of supported languages 	fmt.Fprintf(w, "Supported languages:\n") 	for _, language := range resp.GetLanguages() { 		fmt.Fprintf(w, "Language code: %v\n", language.GetLanguageCode()) 		fmt.Fprintf(w, "Display name: %v\n", language.GetDisplayName()) 	}  	return nil } 

Java

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

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

import com.google.cloud.translate.v3.GetSupportedLanguagesRequest; import com.google.cloud.translate.v3.LocationName; import com.google.cloud.translate.v3.SupportedLanguage; import com.google.cloud.translate.v3.SupportedLanguages; import com.google.cloud.translate.v3.TranslationServiceClient; import java.io.IOException;  public class GetSupportedLanguagesForTarget {    public static void getSupportedLanguagesForTarget() throws IOException {     // TODO(developer): Replace these variables before running the sample.     String projectId = "YOUR-PROJECT-ID";     // Supported Languages: https://cloud.google.com/translate/docs/languages     String languageCode = "your-language-code";     getSupportedLanguagesForTarget(projectId, languageCode);   }    // Listing supported languages with target language name   public static void getSupportedLanguagesForTarget(String projectId, String languageCode)       throws IOException {      // Initialize client that will be used to send requests. This client only needs to be created     // once, and can be reused for multiple requests. After completing all of your requests, call     // the "close" method on the client to safely clean up any remaining background resources.     try (TranslationServiceClient client = TranslationServiceClient.create()) {       // Supported Locations: `global`, [glossary location], or [model location]       // Glossaries must be hosted in `us-central1`       // Custom Models must use the same location as your model. (us-central1)       LocationName parent = LocationName.of(projectId, "global");       GetSupportedLanguagesRequest request =           GetSupportedLanguagesRequest.newBuilder()               .setParent(parent.toString())               .setDisplayLanguageCode(languageCode)               .build();        SupportedLanguages response = client.getSupportedLanguages(request);        // List language codes of supported languages       for (SupportedLanguage language : response.getLanguagesList()) {         System.out.printf("Language Code: %s\n", language.getLanguageCode());         System.out.printf("Display Name: %s\n", language.getDisplayName());       }     }   } }

Node.js

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

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

/**  * TODO(developer): Uncomment these variables before running the sample.  */ // const projectId = 'YOUR_PROJECT_ID'; // const location = 'global';  // Imports the Google Cloud Translation library const {TranslationServiceClient} = require('@google-cloud/translate');  // Instantiates a client const translationClient = new TranslationServiceClient();  async function getSupportedLanguages() {   // Construct request   const request = {     parent: `projects/${projectId}/locations/${location}`,     displayLanguageCode: 'en',   };    // Get supported languages   const [response] = await translationClient.getSupportedLanguages(request);    for (const language of response.languages) {     // Supported language code, generally consisting of its ISO 639-1 identifier, for     // example, 'en', 'ja'. In certain cases, BCP-47 codes including language and     // region identifiers are returned (for example, 'zh-TW' and 'zh-CN')     console.log(`Language - Language Code: ${language.languageCode}`);     // Human readable name of the language localized in the display language specified     // in the request.     console.log(`Language - Display Name: ${language.displayName}`);     // Can be used as source language.     console.log(`Language - Support Source: ${language.supportSource}`);     // Can be used as target language.     console.log(`Language - Support Target: ${language.supportTarget}`);   } }  getSupportedLanguages();

Python

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

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

from google.cloud import translate   def get_supported_languages_with_target(     project_id: str = "YOUR_PROJECT_ID", ) -> translate.SupportedLanguages:     """Listing supported languages with target language name.      Args:         project_id: Your Google Cloud project ID.      Returns:         Supported languages.     """     client = translate.TranslationServiceClient()      location = "global"      parent = f"projects/{project_id}/locations/{location}"      # Supported language codes: https://cloud.google.com/translate/docs/languages     response = client.get_supported_languages(         display_language_code="is", parent=parent  # target language code     )     # List language codes of supported languages     for language in response.languages:         print(f"Language Code: {language.language_code}")         print(f"Display Name: {language.display_name}")      return response  

其他語言

C#: 請按照用戶端程式庫頁面的 C# 設定說明操作, 然後前往 .NET 適用的 Cloud Translation 參考說明文件

PHP: 請按照用戶端程式庫頁面的 PHP 設定說明 操作,然後前往 PHP 適用的 Cloud Translation 參考說明文件

Ruby: 請按照用戶端程式庫頁面的 Ruby 設定說明 操作,然後前往 Ruby 適用的 Cloud Translation 參考文件

其他資源

  • 如需解決常見問題或錯誤的說明,請參閱「疑難排解」頁面。