Endpoints globais e multirregionais

O Cloud Translation – Advanced oferece um ponto final global, bem como pontos finais multirregionais na UE e nos EUA:

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

Se usar um ponto final multirregional, os seus dados em repouso e o processamento de aprendizagem automática permanecem dentro dos limites continentais da UE ou dos EUA. Estes pontos finais multirregionais são importantes se a localização dos seus dados tiver de ser controlada para estar em conformidade com os requisitos regulamentares locais.

Se não especificar um ponto final, o Cloud Translation - Advanced usa o ponto final global por predefinição.

Endpoints globais vs. multirregionais

Quando usa um ponto final multirregional, existem algumas diferenças em comparação com a utilização do ponto final global:

  • As traduções de texto que usam modelos AutoML personalizados não são suportadas. Só pode usar o modelo de NMT pré-preparado.
  • As funcionalidades que não estão em disponibilidade geral (ainda em pré-visualização) não são suportadas.
  • As chamadas através do ponto final global não podem aceder a recursos criados com um ponto final multirregional. Da mesma forma, as chamadas através de um ponto final multirregional não podem aceder a recursos criados através do ponto final global.

Restringir localizações de recursos

Os administradores de políticas da organização podem restringir as regiões disponíveis para os recursos do Cloud Translation - Advanced criando uma restrição de localizações de recursos. Se for definido, os utilizadores do Cloud Translation – Advanced só podem criar recursos numa localização específica.

Restringir a utilização do ponto final da API global

Para ajudar a aplicar a utilização de pontos finais regionais, os administradores da política da organização podem usar a restrição da política da organização constraints/gcp.restrictEndpointUsage para bloquear pedidos ao ponto final da API global. Para mais informações, consulte o artigo Restringir a utilização de pontos finais.

Especifique um ponto final

O exemplo seguinte mostra uma tradução de texto que usa um ponto final multirregional. Se usar as bibliotecas cliente, defina o ponto final da API como parte das opções do cliente. Para ver alguns exemplos, consulte a secção Definir a localização através de bibliotecas cliente no guia da API Cloud Natural Language.

REST

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • PROJECT_NUMBER_OR_ID: o ID numérico ou alfanumérico do seu Google Cloud projeto
  • ENDPOINT: Ponto final regional, que determina a localização dos seus dados. Por exemplo, translate-eu.googleapis.com.
  • LOCATION: região onde quer executar esta operação. Tem de escolher uma região dentro do limite continental do ponto final regional. Por exemplo, se usar o ponto final translate-eu.googleapis.com, especifique uma região na Europa, como europe-west1.

Método HTTP e URL:

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

Corpo JSON do pedido:

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

Para enviar o seu pedido, escolha uma destas opções:

curl

Guarde o corpo do pedido num ficheiro com o nome request.json, e execute o seguinte comando:

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

Guarde o corpo do pedido num ficheiro com o nome request.json, e execute o seguinte comando:

$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

Deve receber uma resposta JSON semelhante à seguinte:

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