Points de terminaison mondiaux et multirégionaux

Cloud Translation – Advanced propose un point de terminaison mondial, ainsi que des points de terminaison multirégionaux pour les États-Unis et l'Union européenne :

  • translate.googleapis.com (mondial)
  • translate-eu.googleapis.com
  • translate-us.googleapis.com

Si vous utilisez un point de terminaison multirégional, vos données au repos et le traitement de machine learning restent dans les limites géographique de l'UE ou des États-Unis. Ces points de terminaison multirégionaux sont importants si l'emplacement de vos données doit être contrôlé afin de respecter les exigences réglementaires locales.

Si vous ne spécifiez pas de point de terminaison, Cloud Translation – Advanced utilise par défaut le point de terminaison mondial.

Différence entre les points de terminaison mondiaux et multirégionaux

Si l'on compare l'utilisation d'un point de terminaison multirégional à l'utilisation d'un point de terminaison mondial, quelques différences sont à noter :

  • Les traductions de texte utilisant des modèles AutoML personnalisés ne sont pas acceptées. Vous ne pouvez utiliser que le modèle NMT pré-entraîné.
  • Les fonctionnalités qui ne sont pas en phase de disponibilité générale (qui sont toujours en version Bêta) ne sont pas acceptées.
  • Les appels effectués via le point de terminaison mondial ne peuvent pas accéder aux ressources qui ont été créées à l'aide d'un point de terminaison multirégional. De même, les appels effectués via un point de terminaison multirégional ne peuvent pas accéder aux ressources qui ont été créées à l'aide du point de terminaison mondial.

Limiter les emplacements de ressources

Les administrateurs de règles d'administration peuvent restreindre les régions disponibles pour les ressources Cloud Translation Advanced en créant une contrainte d'emplacement des ressources. Si une contrainte est définie, les utilisateurs de Cloud Translation – Advanced ne pourront créer des ressources que dans un emplacement particulier.

Spécifier un point de terminaison

L'exemple suivant montre une traduction de texte utilisant un point de terminaison multirégional. Si vous utilisez les bibliothèques clientes, définissez le point de terminaison de l'API dans les options du client. Pour obtenir des exemples, consultez la section Définir l'emplacement à l'aide de bibliothèques clientes dans le guide de l'API Cloud Natural Language.

REST

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • PROJECT_NUMBER_OR_ID : ID numérique ou alphanumérique de votre projet Google Cloud.
  • ENDPOINT : point de terminaison régional, qui détermine l'emplacement de vos données. Exemple :translate-eu.googleapis.com
  • LOCATION : région dans laquelle vous souhaitez exécuter cette opération. Vous devez sélectionner une région dans la limite continentale du point de terminaison régional. Par exemple, si vous utilisez le point de terminaison translate-eu.googleapis.com, spécifiez une région en Europe, telle que europe-west1.

Méthode HTTP et URL :

POST https://ENDPOINT/v3/projects/PROJECT_NUMBER_OR_ID/locations/LOCATION:translateText

Corps JSON de la requête :

{
  "model": "projects/PROJECT_NUMBER_OR_ID/locations/LOCATION/models/general/base",
  "sourceLanguageCode": "en",
  "targetLanguageCode": "de",
  "contents": ["Come here!"]
}

Pour envoyer votre requête, choisissez l'une des options suivantes :

curl

Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :

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

PowerShell

Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_NUMBER_OR_ID" }

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

Vous devriez recevoir une réponse JSON de ce type :

{
  "translations": [
    {
      "translatedText": "Komm her!",
      "model": "projects/PROJECT_NUMBER_OR_ID/locations/LOCATION/models/general/base"
    }
  ]
}