O Cloud Translation - Advanced é compatível com a tradução de textos usando os modelos personalizados do AutoML Translation e com a criação de glossários para garantir a tradução correta da terminologia específica do domínio do cliente.
Se você quiser usar modelos personalizados do AutoML no seu projeto, será necessário ativar a API AutoML (automl.googleapis.com). Para instruções sobre como instalar o SDK do Cloud, configurar um projeto com uma conta de serviço e receber um token de acesso, consulte a página Configuração. Se você planeja usar um glossário ou os recursos em lote, também precisa criar um bucket do Cloud Storage e conceder acesso à sua conta de serviço.
Antes de começar
Antes de começar a usar a API Cloud Translation, é preciso ter um projeto em que ela esteja ativada e as credenciais apropriadas. Você também pode instalar bibliotecas de cliente para linguagens de programação comuns para ajudá-lo a fazer chamadas para a API.
Para ver mais informações, consulte a página Configuração.
Como comparar modelos
Ao solicitar a tradução do Cloud Translation - Advanced, é possível especificar qual modelo de tradução usar. Caso nenhum modelo seja especificado, o modelo nmt
será usado se o par de idiomas for suportado. Caso contrário, o modelo PBMT será adotado.
Modelo | Tamanho original | Exemplos |
---|---|---|
Modelo de tradução automática neural (NMT, na sigla em inglês) |
Casos gerais de uso de texto, como conteúdo de sites comuns que não são específicos de um domínio, por exemplo, novos artigos. |
Notícias, mídia social, aplicativos de bate-papo, comentários |
Modelo de tradução automática baseada em frases (PBMT, na sigla em inglês) | O NMT geralmente resulta em traduções de melhor qualidade. O PBMT pode ser usado por padrão se o modelo NMT não existir para um par de idiomas. | Use quando NMT não estiver disponível. |
Modelo do AutoML Translation | Texto específico do domínio. Os clientes fornecem dados de treinamento específicos para os casos de uso deles, para que determinados pares de idiomas personalizem o modelo básico do Google para fins de domínio. | Notícias financeiras, documentos técnicos, qualquer texto que use termos e jargões exclusivos desse campo. |
Especifique o modelo de tradução usando o ID de modelo. Para os modelos gerais do Google, os IDs de modelo são general/nmt
para o NMT e general/base
para o PBMT. Consulte a próxima seção para informações sobre IDs de modelo do AutoML Translation.
Como traduzir textos
O texto de entrada pode ser simples ou HTML. A API Cloud Translation não traduz nenhuma tag HTML na entrada, apenas o texto que aparece entre as tags. A saída mantém as tags HTML (não traduzidas), com o texto traduzido entre elas na medida do possível devido a diferenças entre os idiomas de origem e de destino. A ordem das tags HTML na saída pode ser diferente da ordem no texto de entrada por causa de alterações na ordem das palavras na tradução.
Como traduzir strings de entrada
REST e LINHA DE CMD
Para traduzir um texto, faça uma solicitação POST
e forneça, no corpo dela, o
JSON que identifica o idioma de origem (source_language_code
), o
idioma de destino (target_language_code
) e o texto a ser traduzido
(contents
). Para traduzir várias strings de texto, basta incluí-las
no JSON (veja o exemplo). Use os códigos ISO-639-1 para
identificar os idiomas de origem e de
destino.
Veja a seguir um exemplo de uma solicitação POST
usando curl
ou PowerShell. Nele, é usado o token de acesso de uma conta de serviço configurada
para o projeto por meio do SDK do Cloud do Google Cloud.
Consulte a página Configuração
para ver instruções de como instalar o SDK do Cloud, configurar um projeto com uma conta de serviço
e conseguir um token de acesso.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- project-number-or-id: pelo número ou o código do seu projeto do Google Cloud
Método HTTP e URL:
POST https://translation.googleapis.com/v3/projects/project-number-or-id:translateText
Corpo JSON da solicitação:
{ "sourceLanguageCode": "en", "targetLanguageCode": "ru", "contents": ["Dr. Watson, come here!", "Bring me some coffee!"] }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo chamado request.json
e execute o comando a seguir:
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://translation.googleapis.com/v3/projects/project-number-or-id:translateText
PowerShell
Salve o corpo da solicitação em um arquivo chamado request.json
e execute o comando a seguir:
$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://translation.googleapis.com/v3/projects/project-number-or-id:translateText " | Select-Object -Expand Content
Você receberá uma resposta JSON semelhante a esta:
{ "translations": [ { "translatedText": "Доктор Ватсон, иди сюда!", }, { "translatedText": "Принеси мне кофе!", } ] }
A matriz translations
contém dois campos translatedText
com traduções
fornecidas no idioma targetLanguageCode
solicitado (ru
: russo). As traduções são listadas na mesma ordem da matriz de origem correspondente na solicitação.
Go
Antes de testar esta amostra, siga as instruções de configuração para Go no Guia de início rápido do Translation: como usar bibliotecas de cliente. Saiba mais na documentação de referência da API Translation para Go.
Java
Antes de testar esta amostra, siga as instruções de configuração para Java no Guia de início rápido do Translation: como usar bibliotecas de cliente. Saiba mais na documentação de referência da API Translation para Java.
Node.js
Antes de testar esta amostra, siga as instruções de configuração para Node.js no Guia de início rápido do Translation: como usar bibliotecas de cliente. Saiba mais na documentação de referência da API Translation para Node.js.
Python
Antes de testar esta amostra, siga as instruções de configuração para Python no Guia de início rápido do Translation: como usar bibliotecas de cliente. Saiba mais na documentação de referência da API Translation para Python.
Como traduzir textos usando um modelo personalizado do AutoML Translation
REST e linha de comando
Neste exemplo, traduzimos o texto usando um modelo do AutoML Translation com o código de modelo TRL1395675701985363739
. É possível conseguir o ID para um modelo do AutoML Translation na lista de modelos na IU do AutoML Translation, ou na resposta da API, ao treinar o modelo.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- project-number-or-id: pelo número ou o código do seu projeto do Google Cloud
Método HTTP e URL:
POST https://translation.googleapis.com/v3/projects/project-number-or-id/locations/us-central1:translateText
Corpo JSON da solicitação:
{ "model": "projects/project-number-or-id/locations/us-central1/models/TRL1395675701985363739", "sourceLanguageCode": "en", "targetLanguageCode": "ru", "contents": ["Dr. Watson, please discard your trash. You've shared unsolicited email with me. Let's talk about spam and importance ranking in a confidential mode."] }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo chamado request.json
e execute o comando a seguir:
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://translation.googleapis.com/v3/projects/project-number-or-id/locations/us-central1:translateText
PowerShell
Salve o corpo da solicitação em um arquivo chamado request.json
e execute o comando a seguir:
$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://translation.googleapis.com/v3/projects/project-number-or-id/locations/us-central1:translateText " | Select-Object -Expand Content
Você receberá uma resposta JSON semelhante a esta:
{ "translation": { "translatedText": "Доктор Ватсон, пожалуйста, откажитесь от своего мусора. Вы поделились нежелательной электронной почтой со мной. Давайте поговорим о спаме и важности рейтинга в конфиденциальном режиме.", "model": "projects/project-number/locations/us-central1/models/TRL1395675701985363739" } }
Go
Antes de testar esta amostra, siga as instruções de configuração para Go no Guia de início rápido do Translation: como usar bibliotecas de cliente. Saiba mais na documentação de referência da API Translation para Go.
Java
Antes de testar esta amostra, siga as instruções de configuração para Java no Guia de início rápido do Translation: como usar bibliotecas de cliente. Saiba mais na documentação de referência da API Translation para Java.
Node.js
Antes de testar esta amostra, siga as instruções de configuração para Node.js no Guia de início rápido do Translation: como usar bibliotecas de cliente. Saiba mais na documentação de referência da API Translation para Node.js.
Python
Antes de testar esta amostra, siga as instruções de configuração para Python no Guia de início rápido do Translation: como usar bibliotecas de cliente. Saiba mais na documentação de referência da API Translation para Python.
Como usar o parâmetro do modelo
REST e LINHA DE CMD
Para especificar qual modelo será usado para a tradução, use o
parâmetro de
consulta model
. Especifique base
para usar o modelo PBMT e nmt
para usar o modelo NMT. Se o modelo de NMT for especificado na solicitação, mas o par de idiomas da tradução não for compatível com ele, o modelo de PBMT será usado.
Na amostra a seguir, você verá como usar o parâmetro model
em uma solicitação de tradução, com o exemplo mostrando a seleção de base
.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- project-number-or-id: pelo número ou o código do seu projeto do Google Cloud
Método HTTP e URL:
POST https://translation.googleapis.com/v3/projects/project-number-or-id/locations/global:translateText
Corpo JSON da solicitação:
{ "model": "projects/project-number-or-id/locations/global/models/general/base", "sourceLanguageCode": "en", "targetLanguageCode": "de", "contents": ["Come here!"] }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo chamado request.json
e execute o comando a seguir:
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://translation.googleapis.com/v3/projects/project-number-or-id/locations/global:translateText
PowerShell
Salve o corpo da solicitação em um arquivo chamado request.json
e execute o comando a seguir:
$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://translation.googleapis.com/v3/projects/project-number-or-id/locations/global:translateText " | Select-Object -Expand Content
Você receberá uma resposta JSON semelhante a esta:
{ "translations": [ { "translatedText": "Komm her!", "model": "projects/project-number/locations/global/models/general/base" } ] }