O serviço Vertex AI Translation permite-lhe traduzir texto escrito num idioma para qualquer um dos outros idiomas suportados.
Esta página mostra como traduzir um texto de exemplo usando a API Vertex AI Translation no Google Distributed Cloud (GDC) isolado.
Antes de começar
Antes de poder começar a usar a API Vertex AI Translation, tem de ter um projeto com a API Vertex AI Translation ativada e as credenciais adequadas. Também pode instalar bibliotecas cliente para ajudar a fazer chamadas para a API. Para mais informações, consulte o artigo Configure um projeto de tradução.
Traduz o texto
O método translateText
recebe texto de entrada num idioma específico e devolve o texto traduzido noutro idioma. Pode introduzir texto simples ou HTML como entrada.
Se introduzir texto HTML, o método translateText
traduz apenas o texto entre as etiquetas HTML sem traduzir as etiquetas. No entanto, traduz os atributos nas etiquetas HTML5, como os atributos alt
. Um exemplo de utilização de etiquetas e atributos HTML5 é usado na sintaxe para excluir texto da tradução.
A saída retém as etiquetas HTML não traduzidas e inclui o texto traduzido entre elas.
Faça um pedido curl
à API Vertex AI Translation pré-preparada. Caso contrário, interaja com a API pré-treinada Vertex AI Translation a partir de um script Python para traduzir texto de um idioma para outro.
Os exemplos seguintes mostram como traduzir um texto de entrada de um idioma para outro:
curl
Siga estes passos para fazer um pedido curl
:
Faça o pedido:
curl -vv -X POST -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID:translateText -d '{"parent": "projects/PROJECT_ID", "source_language_code": "SOURCE_LANGUAGE", "target_language_code": "TARGET_LANGUAGE", "contents": ["INPUT_TEXT"]}'
Substitua o seguinte:
TOKEN
: o token de autenticação que obteve.ENDPOINT
: o ponto final da Vertex AI Translation que usa para a sua organização. Para mais informações, consulte o estado do serviço e os pontos finais.PROJECT_ID
: o ID do seu projeto.SOURCE_LANGUAGE
: o código do idioma do texto de entrada. Consulte a lista de idiomas suportados e os respetivos códigos de idioma.TARGET_LANGUAGE
: o código do idioma para o qual quer traduzir o texto. Consulte a lista de idiomas suportados e os respetivos códigos de idioma.INPUT_TEXT
: o texto de entrada no idioma de origem.
Use o campo mime_type
para especificar um tipo de ficheiro. Defina o campo mime_type
para um dos seguintes valores:
text/plain
: a sua entrada é texto simples.text/html
: a sua entrada é texto HTML.
Se o campo mime_type
estiver vazio, text/html
é o valor predefinido.
O exemplo seguinte usa o campo mime_type
:
curl -vv -X POST -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID:translateText -d '{"mime_type": "text/html", "parent": "projects/PROJECT_ID", "source_language_code": "SOURCE_LANGUAGE", "target_language_code": "TARGET_LANGUAGE", "contents": ["INPUT_TEXT"]}'
O resultado devolve o texto traduzido.
Python
Siga estes passos para usar o serviço Vertex AI Translation a partir de um script Python:
Instale a versão mais recente da biblioteca cliente da Vertex AI Translation.
Defina as variáveis de ambiente necessárias num script Python.
Adicione o seguinte código ao script Python que criou:
from google.cloud import translate import google.auth from google.auth.transport import requests from google.api_core.client_options import ClientOptions audience = "https://ENDPOINT:443" api_endpoint="ENDPOINT:443" def translate_client(creds): opts = ClientOptions(api_endpoint=api_endpoint) return translate.TranslationServiceClient(credentials=creds, client_options=opts) def main(): creds = None try: creds, project_id = google.auth.default() creds = creds.with_gdch_audience(audience) req = requests.Request() creds.refresh(req) print("Got token: ") print(creds.token) except Exception as e: print("Caught exception" + str(e)) raise e return creds def translate_func(creds): tc = translate_client(creds) req = { "parent": "projects/PROJECT_ID", "source_language_code": "SOURCE_LANGUAGE", "target_language_code": "TARGET_LANGUAGE", "mime_type": "text/plain", "contents": ["INPUT_TEXT"] } resp = tc.translate_text(req) print(resp) if __name__=="__main__": creds = main() translate_func(creds)
Substitua o seguinte:
ENDPOINT
: o ponto final da Vertex AI Translation que usa para a sua organização. Para mais informações, consulte o estado do serviço e os pontos finais.PROJECT_ID
: o ID do seu projeto.SOURCE_LANGUAGE
: o código do idioma do texto de entrada. Consulte a lista de idiomas suportados e os respetivos códigos de idioma.TARGET_LANGUAGE
: o código do idioma para o qual quer traduzir o texto. Consulte a lista de idiomas suportados e os respetivos códigos de idioma.INPUT_TEXT
: o texto de entrada no idioma de origem.
Use o campo
mime_type
para especificar um tipo de ficheiro. Defina o campomime_type
para um dos seguintes valores:text/plain
: a sua entrada é texto simples.text/html
: a sua entrada é texto HTML.
Se o campo
mime_type
estiver vazio,text/html
é o valor predefinido.Guarde o script Python.
Execute o script Python para traduzir o texto:
python SCRIPT_NAME
Substitua
SCRIPT_NAME
pelo nome que deu ao seu script Python, comotranslation.py
.
Para mais informações sobre o método translateText
, consulte a biblioteca cliente Python.
Exclua texto da tradução
Use uma das seguintes etiquetas HTML no campo contents
de pedidos para excluir partes do texto da tradução:
<span translate="no">"TEXT"</span>
<span class="notranslate">"TEXT"</span>
Substitua TEXT
pela parte do texto que quer excluir da tradução.
Por exemplo, se tiver o seguinte texto de entrada em espanhol:
Hola, esto es una prueba.
Em seguida, esse texto é traduzido para inglês na seguinte frase:
Hello, this is a test.
Suponhamos que só quer traduzir a seguinte parte do texto, excluindo
Hola,
do texto de entrada:
esto es una prueba.
Essa parte do texto é traduzida para inglês na seguinte frase:
this is a test.
Use as etiquetas HTML para excluir texto da tradução. Por exemplo, o pedido curl
seguinte usa a etiqueta <span class="notranslate">"TEXT"</span>
para excluir Hola,
do texto de entrada anterior em espanhol quando traduz o texto para inglês:
curl -vv -X POST -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID:translateText -d '{"parent": "projects/PROJECT_ID", "source_language_code": "es", "target_language_code": "en", "contents": [<span class="notranslate">"Hola,"</span>"esto es una prueba."]}'
Detetar idioma
O método detectLanguage
devolve o idioma de uma string de texto através do envio de um pedido HTTP.
Por exemplo, o pedido seguinte deteta o inglês como o idioma do
texto de entrada Hello, this is a test
:
curl
curl -vv -X POST -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID:detectLanguage -d '{"parent": "projects/PROJECT_ID", "content": "Hello, this is a test"}'
Obtenha uma operação
O método getOperation
devolve o estado mais recente de uma operação de longa duração.
Use este método para obter o resultado da operação gerado pelo serviço da API Vertex AI Translation. Para usar este método, especifique o ID do projeto e o ponto final do Vertex AI Translation.
Por exemplo, o pedido seguinte devolve o estado de uma operação de longa duração, como criar um glossário, que está a ser executada no seu projeto:
curl
curl -vv -X GET -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID/operations/PROJECT_ID
Apresentar operações
O método listOperations
devolve uma lista das operações de longa duração
que correspondem a um filtro especificado no pedido. Para usar este método, especifique o ID do projeto e o ponto final do Vertex AI Translation.
Por exemplo, o pedido seguinte devolve a lista de operações em execução no seu projeto e limita o tamanho da página a dez resultados por página:
curl
curl -vv -X GET -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID/operations?page_size=10
Obtenha idiomas suportados
O método supportedLanguages
devolve a lista de idiomas suportados pela API Vertex AI Translation.
Por exemplo, o pedido seguinte devolve os idiomas suportados especificando o ponto final da Vertex AI Translation:
curl
curl -vv -X GET -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID/locations/PROJECT_ID/supportedLanguages
Para ver a lista completa dos idiomas suportados, consulte o artigo Idiomas suportados para a Vertex AI Translation.