リージョン エンドポイントを指定する
Cloud Translation - Advanced は EU リージョンの API エンドポイントを提供しています。このリージョン エンドポイントを使用する場合、保存データと機械学習処理は EU の大陸境界内にとどまります。現地の規制要件に合わせてデータのロケーションを制御する必要がある場合は、エンドポイントの指定が重要となります。Cloud Translation - Advanced の EU リージョン API エンドポイントは translate-eu.googleapis.com
です。
EU リージョン API エンドポイントを使用する場合とグローバル エンドポイント(translate.googleapis.com
)を使用する場合には、いくつかの違いがあります。
- カスタム AutoML モデルを使用するテキスト翻訳はサポートされていません。事前トレーニング済みの NMT モデルのみを使用できます。
- 書式設定されたドキュメントの翻訳はサポートされていません。
- 一般提供されていない(プレビュー版の)機能はサポートされていません。
- グローバル エンドポイントを介した呼び出しでは、ロケーションが
europe-west1
の EU エンドポイントを使用して作成されたリソースにはアクセスできません。同様に、EU エンドポイントを介した呼び出しでも、グローバル エンドポイントを使用して作成されたリソースにはアクセスできません。
リソース ロケーションの制限
組織のポリシーの管理者は、リソース ロケーションの制約を作成することで、Cloud Translation - Advanced リソースで使用できるリージョンを制限できます。
使用例
次の例は、リージョン エンドポイントを使用するテキスト翻訳を示しています。クライアント ライブラリを使用する場合は、クライアント オプションの一部として API エンドポイントを設定します。例については、Cloud Natural Language API ガイドのクライアント ライブラリを使用してロケーションを設定するをご覧ください。
REST とコマンドライン
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_NUMBER_OR_ID: Google Cloud プロジェクト番号または ID。
- ENDPOINT: データが存在するリージョンを決定するリージョン エンドポイント。例:
translate-eu.googleapis.com
- LOCATION: このオペレーションを実行するリージョン。リージョン エンドポイントの大陸境界内のリージョンを選択する必要があります。たとえば、
translate-eu.googleapis.com
エンドポイントを使用する場合は、europe-west1
などのヨーロッパのリージョンを指定します。
HTTP メソッドと URL:
POST https://ENDPOINT/v3/projects/PROJECT_NUMBER_OR_ID/locations/LOCATION:translateText
JSON 本文のリクエスト:
{ "model": "projects/PROJECT_NUMBER_OR_ID/locations/LOCATION/models/general/base", "sourceLanguageCode": "en", "targetLanguageCode": "de", "contents": ["Come here!"] }
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://ENDPOINT/v3/projects/PROJECT_NUMBER_OR_ID/locations/LOCATION:translateText "
PowerShell
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://ENDPOINT/v3/projects/PROJECT_NUMBER_OR_ID/locations/LOCATION:translateText " | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
{ "translations": [ { "translatedText": "Komm her!", "model": "projects/PROJECT_NUMBER_OR_ID/locations/LOCATION/models/general/base" } ] }