Traduzir texto usando a tradução adaptativa
Ao solicitar uma tradução adaptativa, você fornece o texto a ser traduzido e exemplos de traduções que o Cloud Translation usa para personalizar as respostas.
Para solicitações de tradução programática, é possível incluir traduções de exemplo em um conjunto de dados ou como parte de uma solicitação de tradução. Ao usar um conjunto de dados, O Cloud Translation seleciona automaticamente cinco frases de referência mais semelhante à frase de origem para personalizar as traduções. Se você incluir frases de referência na sua solicitação de tradução, o Cloud Translation usará todos um deles para personalizar a tradução.
Antes de começar
Para usar a tradução adaptável, ative a API Cloud Translation no projeto e configure a autenticação. Para mais informações, consulte a Configuração do Cloud Translation.
Além disso, confira se os idiomas de origem e de destino são compatíveis com a tradução adaptativa.
Requisitos e sugestões de dados
Se você criar um conjunto de dados ou usar o console do Google Cloud, forneça exemplos de traduções em um arquivo TSV ou TMX. Os exemplos precisam ser pares de sentenças nos idiomas de origem e de destino. Recomendamos que você forneça exemplos que abordem o vocabulário, o uso e as peculiaridades gramaticais do seu domínio. Para mais dicas, consulte Preparação de dados na documentação do AutoML Translation.
Os dados precisam incluir entre 5 pares de frases e 10.000 pares se você usar o console e no máximo 30.000 se usar a API. Um par de segmentos pode ter no máximo 512 caracteres (total).
Limitações
- É possível traduzir para apenas um idioma de destino por vez.
- A tradução adaptável tem limites no número de caracteres de entrada e saída. Para ver mais informações, consulte os limites de tradução adaptativa na página "Cotas".
Solicitar traduções
Para traduções, a entrada pode ser texto simples ou HTML. O Cloud Translation não traduz tags HTML na entrada, apenas o texto que aparece entre elas. 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.
Console
Ao usar o console do Google Cloud, selecione o arquivo que inclui suas traduções de exemplo e, em seguida, solicite as traduções. O Cloud Translation não armazena os dados importados. Caso prefira trabalhar com conjuntos de dados persistentes, use a API.
Acesse o console do AutoML Translation.
Selecione um arquivo local ou um arquivo no Cloud Storage que contenha as traduções de exemplo.
Depois que você seleciona um arquivo, o Cloud Translation define os campos Idioma de origem e Idioma de destino com base nos seus dados. Por exemplo, se você importar um conjunto de dados do inglês para o português, o console permitirá que você traduza apenas frases do inglês para o português.
Digite o texto no campo "Idioma de origem".
A tradução adaptativa tem limites quanto ao número de caracteres de entrada e saída. Para ver mais informações, consulte os limites de tradução adaptativa na página "Cotas".
Para ajustar os parâmetros, use os controles deslizantes ou os campos de texto para definir os valores:
- Temperatura: controla o grau de aleatoriedade na seleção do token Para temperaturas mais baixas, espere uma resposta verdadeira ou correta. Para temperaturas mais altas, espere resultados mais diversos ou inesperados.
- Número de exemplos: define o número de exemplos a serem usados dos dados de origem para solicitar o LLM.
Selecione Comparar com o modelo de NMT para incluir traduções do modelo de NMT padrão do Google com a saída de tradução adaptável.
Clique em Traduzir.
Em alguns instantes, o Cloud Translation retorna uma resposta no campo de idioma de destino. O Cloud Translation não retorna nenhum texto além do limite de caracteres de saída.
API
Usar a API para solicitar traduções adaptáveis incluindo uma frase de referência ou especificando um conjunto de dados.
- Traduções adaptáveis com pares de frases de referência
- Traduções adaptáveis com um conjunto de dados
Traduções adaptáveis com pares de frases de referência
Para incluir exemplos de traduções nas suas solicitações de tradução, inclua
o exemplo de pares de sentenças de origem e destino no referenceSentencePairs
que faz parte do objeto referenceSentenceConfig
. Para saber mais, consulte o
método adaptiveMtTranslate.
Você pode incluir até cinco pares de frases.
REST
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_NUMBER_OR_ID: o ID numérico ou alfanumérico do projeto do Google Cloud
- LOCATION: a região onde sua solicitação de tradução é processada.
como
us-central1
. - REFERENCE_SOURCE: uma frase no idioma de origem que está parte de um par de frases de referência.
- REFERENCE_TARGET: uma frase no idioma de chegada que está parte de um par de frases de referência.
- SOURCE_LANGUAGE: o código do idioma do texto de origem.
- TARGET_LANGUAGE: o código de idioma do o idioma para o qual o texto de origem deve ser traduzido.
- SOURCE_TEXT: O texto que será traduzido.
- MIME_TYPE (opcional): o formato do texto de origem, como
text/html
outext/plain
. Por padrão, o tipo MIME é definido comotext/plain
.
Método HTTP e URL:
POST https://translation.googleapis.com/v3/projects/PROJECT_ID/locations/LOCATION:adaptiveMtTranslate
Corpo JSON da solicitação:
{ "referenceSentenceConfig": { "referenceSentencePairLists": [ { "referenceSentencePairs": [{ "sourceSentence": REFERENCE_SOURCE_1_1, "targetSentence": REFERENCE_TARGET_1_1 }, { "sourceSentence": REFERENCE_SOURCE_1_2, "targetSentence": REFERENCE_SOURCE_1_2 }] } ], "sourceLanguageCode": SOURCE_LANGUAGE, "targetLanguageCode": TARGET_LANGUAGE } "content": ["SOURCE_TEXT"], "mimeType": "MIME_TYPE" }
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{ "translations": [ { "translatedText": "TRANSLATED_TEXT" } ], "languageCode": "TARGET_LANGUAGE" }
Java
Antes de testar esta amostra, siga as instruções de configuração do Java no Guia de início rápido do Cloud Translation: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Cloud Translation em Java.
Para autenticar no Cloud Translation, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
/** Translates using AdaptiveMt. */ private static void adaptiveMtTranslate( TranslationServiceClient translationServiceClient, String projectId, String sourceLang, String targetLang, Pair<String, String> referencePairs) { ReferenceSentencePairList refList = ReferenceSentencePairList.newBuilder(); for (Pair<String, String> referencePair: referencePairs) { ReferenceSentencePair refPair = ReferenceSentencePair.newBuilder() .setSourceSentence(referencePair.getKey()) .setTargetSentence(referencePair.getValue()); refList.addReferenceSentencePair(refPair); } AdaptiveMtTranslateRequest request = AdaptiveMtTranslateRequest.newBuilder() .setParent(LocationName.of(projectId, "us-central1").toString()) .setSourceLanguageCode(sourceLang) .setTargetLanguageCOde(targetLang) .addReferenceSentencePairLists(refList) .build(); AdaptiveMtTranslateResponse response = translationServiceClient.adaptiveMtTranslate(request); System.out.println("Translating using AdaptiveMt"); System.out.println(response); }
Node.js
Antes de testar esta amostra, siga as instruções de configuração do Node.js no Guia de início rápido do Cloud Translation: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Cloud Translation em Node.js.
Para autenticar no Cloud Translation, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
async function translate() { const request = { parent: `projects/${projectId}/locations/${location}`, referenceSentenceConfig: { referenceSentencePairLists: [ { referenceSentencePairs: [{ sourceSentence: 'Sample reference source 1' targetSentence: 'Sample reference target 1' }, { sourceSentence: 'Sample reference source 2' targetSentence: 'Sample reference target 2' }] } ], sourceLanguageCode: 'en' targetLanguageCode: 'ja' }, content: ['Sample translate query'] } const [response] = await translationClient.adaptiveMtTranslate(request) console.log('Translating') console.log(response) }
Python
Antes de testar esta amostra, siga as instruções de configuração do Python no Guia de início rápido do Cloud Translation: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Cloud Translation em Python.
Para autenticar no Cloud Translation, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
def adaptive_mt_translate(): # Create a client client = translate.TranslationServiceClient() # Initialize the request request = translate.AdaptiveMtTranslateRequest( parent="projects/PROJECT_ID/locations/LOCATION", reference_sentence_config=[ "reference_sentence_pair_lists": [ "reference_sentence_pairs": { "source_sentence": 'REFERENCE_SOURCE_1_1' "target_sentence": 'REFERENCE_TARGET_1_1' }, "reference_sentence_pairs": { "source_sentence": 'REFERENCE_SOURCE_1_2' "target_sentence": 'REFERENCE_TARGET_1_2' } ], "source_language_code": 'SOURCE_LANGUAGE' "target_language_code": 'TARGET_LANGUAGE' ], content=["SOURCE_TEXT"] ) # Make the request response = client.adaptive_mt_translate(request) # Handle the response print(response)
Traduções adaptáveis com um conjunto de dados
Para usar um conjunto de dados com traduções, crie um conjunto de dados e importe a frase pares primeiro. Se você já tem um conjunto de dados, é possível solicitar traduções com ele. O conjunto de dados permanece no projeto até que você o exclua ele.
Crie um conjunto de dados no qual importar suas traduções de exemplo.
Os idiomas de origem e de destino precisam corresponder aos idiomas que você pretende usar nas traduções. Para mais informações, consulte o método adaptiveMtDataset.create.
REST
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_NUMBER_OR_ID: o ID numérico ou alfanumérico do projeto do Google Cloud
- LOCATION: a região em que o conjunto de dados de origem está localizado, como
us-central1
. - DATASET_ID: um identificador exclusivo para o conjunto de dados.
- DISPLAY_NAME: um nome descritivo para o conjunto de dados.
- SOURCE_LANGUAGE: o código do idioma do texto de entrada. Para acessar os códigos de idioma compatíveis, consulte Idiomas compatíveis.
- TARGET_LANGUAGE: o idioma de chegada para o qual traduzir o texto de entrada. Para acessar os códigos de idioma compatíveis, consulte Idiomas compatíveis.
Método HTTP e URL:
POST https://translation.googleapis.com/v3/projects/PROJECT_ID/locations/LOCATION/adaptiveMtDatasets
Corpo JSON da solicitação:
{ "name": "projects/PROJECT_ID/locations/LOCATION/adaptiveMtDatasets/DATASET_ID, "display_name": "DISPLAY_NAME", "source_language_code": "SOURCE_LANGUAGE", "target_language_code": "TARGET_LANGUAGE" }
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{ "name": "projects/PROJECT_ID/locations/LOCATION/adaptiveMtDatasets/DATASET_ID", "displayName": "DISPLAY_NAME", "sourceLanguageCode": "SOURCE_LANGUAGE", "targetLanguageCode": "TARGET_LANGUAGE" }
Java
Antes de testar esta amostra, siga as instruções de configuração do Java no Guia de início rápido do Cloud Translation: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Cloud Translation em Java.
Para autenticar no Cloud Translation, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
/** Creates an AdaptiveMtDataset. */ private static void createAdaptiveMtDataset( TranslationServiceClient translationServiceClient, String projectName, String datasetName) { String adaptiveMtDatasetName = String.format( "projects/%s/locations/LOCATION/adaptiveMtDatasets/%s", projectName, datasetName); AdaptiveMtDataset adaptiveMtDataset = AdaptiveMtDataset.newBuilder() .setName(adaptiveMtDatasetName) .setDisplayName("DATASET_DISPLAY_NAME") .setSourceLanguageCode("SOURCE_LANGUAGE_CODE") .setTargetLanguageCode("TARGET_LANGUAGE_CODE") .build(); CreateAdaptiveMtDatasetRequest request = CreateAdaptiveMtDatasetRequest.newBuilder() .setParent(LocationName.of("PROJECT_NAME", "LOCATION").toString()) .setAdaptiveMtDataset(adaptiveMtDataset) .build(); AdaptiveMtDataset dataset = translationServiceClient.createAdaptiveMtDataset(request); System.out.println("Created dataset"); System.out.println(dataset); }
Node.js
Antes de testar esta amostra, siga as instruções de configuração do Node.js no Guia de início rápido do Cloud Translation: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Cloud Translation em Node.js.
Para autenticar no Cloud Translation, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
async function createAdaptiveMtDataset() { // Construct request const request = { parent: `projects/${projectId}/locations/${location}`, adaptiveMtDataset: { name: `projects/${projectId}/locations/${location}/adaptiveMtDatasets/${ adaptiveMtDatasetName}`, displayName: 'DATASET_DISPLAY_NAME', sourceLanguageCode: 'SOURCE_LANGUAGE_CODE', targetLanguageCode: 'TARGET_LANGUAGE_CODE', } }; // Run request const [response] = await translationClient.createAdaptiveMtDataset(request); console.log('Created') console.log(response) }
Python
Antes de testar esta amostra, siga as instruções de configuração do Python no Guia de início rápido do Cloud Translation: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Cloud Translation em Python.
Para autenticar no Cloud Translation, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
def create_adaptive_mt_dataset(): # Create a client client = translate.TranslationServiceClient() # Initialize request argument(s) adaptive_mt_dataset = translate.AdaptiveMtDataset() adaptive_mt_dataset.name = "projects/PROJECT_ID/locations/LOCATION/adaptiveMtDatasets/DATASET_ID" adaptive_mt_dataset.display_name = "DATASET_DISPLAY_NAME" adaptive_mt_dataset.source_language_code = "SOURCE_LANGUAGE_CODE" adaptive_mt_dataset.target_language_code = "TARGET_LANGUAGE_CODE" request = translate.CreateAdaptiveMtDatasetRequest( parent="projects/PROJECT_ID/locations/LOCATION", adaptive_mt_dataset=adaptive_mt_dataset, ) # Make the request response = client.create_adaptive_mt_dataset(request=request) # Handle the response print(response)
Depois de criar um conjunto de dados, preencha-o com exemplos de traduções de um arquivo TSV ou TMX.
É possível importar dados de vários arquivos para um único conjunto de dados. Para mais informações, consulte o método adaptiveMtDatasets.importAdaptiveMtFile.
REST
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_NUMBER_OR_ID: o ID numérico ou alfanumérico do projeto do Google Cloud
- LOCATION: a região em que o conjunto de dados está localizado, como
us-central1
. - DATASET_ID: o identificador exclusivo do conjunto de dados para onde os dados serão importados.
- GCS_FILE_PATH: o caminho para o arquivo de dados de origem no
Cloud Storage, como
gs://example/data.tsv
.
Método HTTP e URL:
POST https://translation.googleapis.com/v3/projects/PROJECT_ID/locations/LOCATION/adaptiveMtDatasets/DATASET_ID:importAdaptiveMtFile
Corpo JSON da solicitação:
{ "gcs_input_source": { "input_uri": "GCS_FILE_PATH" } }
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{ "adaptiveMtFile": { "name": "DATASET_NAME", "displayName": "FILE_NAME", "entryCount": TOTAL_ENTRIES } }
Java
Antes de testar esta amostra, siga as instruções de configuração do Java no Guia de início rápido do Cloud Translation: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Cloud Translation em Java.
Para autenticar no Cloud Translation, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
/** Imports an AdaptiveMtFile. */ private static String importAdaptiveMtFile( TranslationServiceClient translationServiceClient, String projectId, String datasetId, String gcsUri) { String adaptiveMtDatasetName = String.format( "projects/%s/locations/LOCATION/adaptiveMtDatasets/%s", projectId, datasetId); ImportAdaptiveMtFileRequest importAdaptiveMtFileRequest = ImportAdaptiveMtFileRequest.newBuilder() .setParent(adaptiveMtDatasetName) .setGcsInputSource(GcsInputSource.newBuilder().setInputUri(gcsUri).build()) .build(); ImportAdaptiveMtFileResponse response = translationServiceClient.importAdaptiveMtFile(importAdaptiveMtFileRequest); System.out.println("Importing file"); System.out.println(response); return response.getAdaptiveMtFile().getName(); }
Node.js
Antes de testar esta amostra, siga as instruções de configuração do Node.js no Guia de início rápido do Cloud Translation: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Cloud Translation em Node.js.
Para autenticar no Cloud Translation, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
async function importAdaptiveMtFile() { const request = { parent: `projects/${projectId}/locations/${location}/adaptiveMtDatasets/${ adaptiveMtDatasetName}`, gcsInputSource: {inputUri: gcs_file_uri} } const [response] = await translationClient.importAdaptiveMtFile(request) console.log('Importing file') console.log(response) }
Python
Antes de testar esta amostra, siga as instruções de configuração do Python no Guia de início rápido do Cloud Translation: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Cloud Translation em Python.
Para autenticar no Cloud Translation, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
def import_adaptive_mt_file(): # Create a client client = translate.TranslationServiceClient() gcs_input_source = translate.GcsInputSource() gcs_input_source.input_uri = "gs://SOURCE_LOCATION/FILE.tsv" # Initialize the request request = translate.ImportAdaptiveMtFileRequest( parent="projects/PROJECT_ID/locations/LOCATION/adaptiveMtDatasets/DATASET_ID", gcs_input_source=gcs_input_source ) # Make the request response = client.import_adaptive_mt_file(request) # Handle the response print(response)
Solicite uma tradução adaptativa fornecendo o texto de origem a ser traduzido e o conjunto de dados que o Cloud Translation usa para personalizar tradução.
O Cloud Translation usa os idiomas de origem e de destino do conjunto de dados para determinar quais idiomas serão usados na tradução. Para exemplo, um conjunto de dados de
en
paraes
converte texto do inglês para o espanhol. Para saber mais, consulte o método adaptiveMtTranslate.REST
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_NUMBER_OR_ID: o ID numérico ou alfanumérico do projeto do Google Cloud
- LOCATION: a região em que o conjunto de dados de origem está localizado, como
us-central1
. - DATASET_NAME: o nome do conjunto de dados que
o Cloud Translation usa para personalizar as traduções, formatado como
projects/PROJECT_ID/locations/LOCATION/adaptiveMtDatasets/DATASET_ID
. É possível acessar os nomes dos conjuntos de dados ao listar todos os conjuntos de dados do projeto. - SOURCE_TEXT: O texto que será traduzido.
- MIME_TYPE (opcional): o formato do texto de origem, como
text/html
outext/plain
. Por padrão, o tipo MIME é definido comotext/plain
.
Método HTTP e URL:
POST https://translation.googleapis.com/v3/projects/PROJECT_ID/locations/LOCATION:adaptiveMtTranslate
Corpo JSON da solicitação:
{ "dataset": "DATASET_NAME", "content": ["SOURCE_TEXT"], "mimeType": "MIME_TYPE" }
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{ "translations": [ { "translatedText": "TRANSLATED_TEXT" } ], "languageCode": "TARGET_LANGUAGE" }
Java
Antes de testar esta amostra, siga as instruções de configuração do Java no Guia de início rápido do Cloud Translation: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Cloud Translation em Java.
Para autenticar no Cloud Translation, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
/** Translates using AdaptiveMt. */ private static void adaptiveMtTranslate( TranslationServiceClient translationServiceClient, String projectId, String datasetId) { String adaptiveMtDatasetName = String.format( "projects/%s/locations/LOCATION/adaptiveMtDatasets/%s", projectId, datasetId); AdaptiveMtTranslateRequest request = AdaptiveMtTranslateRequest.newBuilder() .setParent(LocationName.of(projectId, "us-central1").toString()) .setDataset(adaptiveMtDatasetName) .addContent("Sample translation text") .build(); AdaptiveMtTranslateResponse response = translationServiceClient.adaptiveMtTranslate(request); System.out.println("Translating using AdaptiveMt"); System.out.println(response); }
Node.js
Antes de testar esta amostra, siga as instruções de configuração do Node.js no Guia de início rápido do Cloud Translation: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Cloud Translation em Node.js.
Para autenticar no Cloud Translation, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
async function translate() { const request = { parent: `projects/${projectId}/locations/${location}`, dataset: `projects/${projectId}/locations/${location}/adaptiveMtDatasets/${ adaptiveMtDatasetName}`, content: ['Sample translate query'] } const [response] = await translationClient.adaptiveMtTranslate(request) console.log('Translating') console.log(response) }
Python
Antes de testar esta amostra, siga as instruções de configuração do Python no Guia de início rápido do Cloud Translation: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Cloud Translation em Python.
Para autenticar no Cloud Translation, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
def adaptive_mt_translate(): # Create a client client = translate.TranslationServiceClient() # Initialize the request request = translate.AdaptiveMtTranslateRequest( parent="projects/PROJECT_ID/locations/LOCATION", dataset="projects/PROJECT_ID/locations/LOCATION/adaptiveMtDatasets/DATASET_ID", content=["Sample translation request"] ) # Make the request response = client.adaptive_mt_translate(request) # Handle the response print(response)