Tutorial de uso da API de tradução do Google
Categories:
Se você precisa usar uma API para automatizar tarefas de tradução, a API de tradução do Google é uma ótima escolha. Embora a qualidade da tradução possa ser ligeiramente inferior à do DeepL, ela oferece uma melhor relação custo-benefício, especialmente com a cota gratuita mensal de 500.000 caracteres.
Introdução ao Produto
Todo mundo já usou o Google Tradutor, mas aqui estamos apresentando o seu serviço de API, cujo nome completo é Google Cloud Translation. Através da API, é possível realizar tradução em lote, modelos de tradução personalizados, tradução de documentos e outras funções.

Preço
Cota gratuita mensal de 500.000 caracteres, o excedente é cobrado por caractere.

Diferença entre Edição Básica e Edição Avançada
| Funcionalidade | Edição Básica | Edição Avançada |
|---|---|---|
| Cota gratuita | 500.000 caracteres/mês | 500.000 caracteres/mês |
| Por milhão de caracteres | 20 dólares | 80 dólares |
| Tradução de documentos | 0,08/página | 0,25/página |
| Tradução personalizada | ✘ | ✔ |
Começando

- Ativar a API, se a faturação não estiver ativada, você será solicitado a adicionar uma conta de faturamento aqui, é necessário um cartão de crédito internacional


$cred = gcloud auth print-access-token
$project_id = "example"
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://cloudresourcemanager.googleapis.com/v3/projects/${project_id}" | Select-Object -Expand Content
- Teste
$cred = gcloud auth print-access-token
$project_id = "example"
$body = @{
"sourceLanguageCode" = "en"
"targetLanguageCode" = "zh"
"contents" = @("Hello, world!")
"mimeType" = "text/plain"
}
$body = $body | ConvertTo-Json
$headers = @{
"Authorization" = "Bearer $cred"
"Content-Type" = "application/json; charset=utf-8"
"x-goog-user-project" = $project_id
}
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://translation.googleapis.com/v3/projects/${project_id}:translateText" `
-Body $body | Select-Object -Expand Content

Linux usando o comando curl
export CRED=$(gcloud auth print-access-token)
export PROJECT_ID="example"
export SOURCE_LANGUAGE_CODE="en"
export TARGET_LANGUAGE_CODE="zh"
export CONTENTS="Hello, world!"
export MIME_TYPE="text/plain"
curl -X POST -H "Authorization: Bearer $CRED" -H "Content-Type: application/json; charset=utf-8" -H "x-goog-user-project: $PROJECT_ID" -d "{
\"sourceLanguageCode\": \"$SOURCE_LANGUAGE_CODE\",
\"targetLanguageCode\": \"$TARGET_LANGUAGE_CODE\",
\"contents\": [\"$CONTENTS\"],
\"mimeType\": \"$MIME_TYPE\"
}" "https://translation.googleapis.com/v3/projects/$PROJECT_ID:translateText"
Neste ponto, você já pode usar a API de tradução do Google para realizar traduções em lote.
Referência de Uso
- Traduzir sites ou aplicativos
- Treinar modelos de tradução personalizados
- Adicionar legendas em diferentes línguas a vídeos
- Dublar vídeos em diferentes línguas
- Traduzir documentos com formatação
- Traduzir em tempo real o conteúdo das interações com clientes
Leitura Adicional
- Portal de documentação do Cloud Translation
- Autenticar no Cloud Translation
- Autenticar usando chaves de API
- Idiomas de origem e destino são identificados por códigos ISO-639
- Visão geral da tradução personalizada
Postscript
A documentação oficial do Google Tradutor é extensa e existem várias maneiras diferentes de implementar a mesma função, com múltiplos caminhos para as etapas de autenticação e chamada. Este artigo seleciona apenas o método de uso mais recomendado e simples para usuários comuns, como referência.
- Entre os tipos de autenticação, foi escolhida a autenticação local (gcloud CLI)
- Entre os métodos de uso, foi escolhida a REST API (Curl/Invoke-WebRequest)
- Entre Edição Básica e Edição Avançada, foi escolhida a Edição Avançada
Este é um artigo original publicado em blog.jqknono.dev, a reprodução sem permissão é proibida
