Traduzir texto

Para tarefas de tradução, a IA generativa na Vertex AI oferece a opção entre modelos do Gemini e dois modelos de tradução especializados da API Cloud Translation:

  • LLM de tradução: a mais recente oferta de tradução de alta qualidade do Google no estilo LLM. Oferece a tradução da mais alta qualidade com latências razoáveis (~3 vezes mais rápido que o Gemini 2.0 Flash).

  • Modelo de tradução automática neural (NMT) do Cloud Translation: a principal oferta de tradução em tempo real do Google, com traduções de latência de aproximadamente 100 ms. Ele alcança a mais alta qualidade de todos os modelos comparados, com latências semelhantes, e continua apresentando avanços contínuos na qualidade. A NMT pode alcançar latências até 20 vezes mais rápidas que o Gemini 2.0 Flash.

Principais vantagens e diferenciais do LLM de tradução

  • Qualidade de tradução incomparável: o LLM de tradução oferece a mais alta qualidade de tradução, alcançando uma performance significativamente maior em comparativos em relação a outros modelos comparados. O LLM de tradução tem muito mais chances de reescrever significativamente uma frase para que ela soe mais natural no idioma de destino, em vez de fornecer traduções "palavra por palavra" menos naturais, que são comuns em outros modelos de tradução.
  • Compensação superior de qualidade/latência: o LLM de tradução oferece traduções com tecnologia de LLM em latências significativamente melhores do que o Gemini 2.0 Flash. Embora o LLM de tradução tenha latências mais altas do que o modelo NMT, ele normalmente oferece respostas de maior qualidade para uma ampla variedade de aplicativos.

Comparação de recursos do modelo

Recurso LLM de tradução (com tecnologia do Gemini) Modelo da NMT
Descrição Um modelo de linguagem grande especializado em tradução com tecnologia do Gemini e ajustado para essa finalidade. Disponível com a IA generativa na Vertex AI e a API Cloud Translation Advanced. O modelo de tradução automática neural do Google, disponível nas APIs Cloud Translation Advanced e Basic . Otimizado para simplicidade e escala.
Qualidade Tradução de qualidade máxima. Supera a NMT, o Gemini 2.0 Flash e o Gemini 2.5 Pro em qualidade. É mais provável que reescreva frases para um fluxo natural. Mostra uma redução significativa de erros. Qualidade média a alta, dependendo do par de idiomas. Entre os modelos de NMT em tempo real com melhor performance para muitas combinações de domínio de idioma.
Latência A latência é significativamente melhor do que o Gemini 2.0 Flash, mas ainda é mais lenta do que a NMT. Tradução em tempo real mais rápida. Baixa latência, adequado para chat e aplicativos em tempo real. Atinge latências até 20 vezes mais rápidas que o Gemini 2.0 Flash
Suporte ao idioma Compatível com 19 idiomas. A lista de idiomas inclui árabe, chinês, tcheco, holandês, inglês, francês, alemão, hindi, indonésio, italiano, japonês, coreano, polonês, português, russo, espanhol, tailandês, turco, ucraniano e vietnamita. Uma expansão significativa de idiomas será lançada em abril de 2025. Suporte para 189 idiomas, incluindo cantonês, fijiano e balinês. É possível traduzir de qualquer idioma para qualquer outro na lista de idiomas disponíveis.
Personalização Suporte para glossários avançados, ajuste fino supervisionado na Vertex AI para adaptações específicas do domínio/cliente e tradução adaptativa para personalização de estilo em tempo real com alguns exemplos. Suporte para glossários, que controlam a terminologia, e treinamento de modelos personalizados com o AutoML Translation na API Cloud Translation - Advanced.
Recursos de tradução Tradução de HTML Tradução de HTML, em lote e de documentos formatados
Integração de API API Cloud Translation Advanced, API Vertex AI API Cloud Translation Basic, API Cloud Translation Advanced, API Vertex AI

Uso

Nesta seção, mostramos como usar o Vertex AI Studio para traduzir texto rapidamente de um idioma para outro. Use o LLM de tradução, o Gemini ou o modelo NMT para traduzir textos usando o console ou a API Google Cloud . Os idiomas com que cada modelo trabalha podem variar. Antes de solicitar traduções, verifique se o modelo que você está usando aceita os idiomas de origem e de destino.

Console

  1. Na seção "Vertex AI" do console Google Cloud , acesse a página Tradução para tradução no Vertex AI Studio.

    Acesse o Vertex AI Studio

  2. No painel Configurações de execução, selecione um modelo de tradução no campo Modelo.

  3. Para mudar as configurações do modelo (como a temperatura), abra Avançado.

  4. Defina os idiomas de origem e de destino.

  5. No campo de entrada, digite o texto a ser traduzido.

  6. Clique em Enviar.

  7. Para acessar o código ou o comando curl que demonstra como solicitar traduções, clique em Acessar código.

No Vertex AI Studio, o LLM de tradução permite fornecer exemplos de traduções para personalizar as respostas do modelo e combinar melhor com seu estilo, tom e domínio do setor. O modelo usa os exemplos como contexto few-shot antes de traduzir o texto.

API

Selecione o modelo a ser usado nas traduções.

LLM de tradução

Use a API Vertex AI e o LLM de tradução para traduzir textos.

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 seu projeto Google Cloud
  • LOCATION: o local onde você quer executar essa operação. Por exemplo, us-central1.
  • SOURCE_LANGUAGE_CODE: o código do idioma do texto de entrada. Defina como um dos códigos de idioma listados em tradução adaptativa.
  • TARGET_LANGUAGE_CODE: o idioma de chegada para o qual traduzir o texto de entrada. Defina como um dos códigos de idioma listados em tradução adaptativa.
  • SOURCE_TEXT: texto no idioma de origem a ser traduzido.
  • MIME_TYPE (opcional): o formato do texto de origem, como text/html ou text/plain. Por padrão, o tipo MIME é definido como text/plain.

Método HTTP e URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/cloud-translate-text:predict

Corpo JSON da solicitação:

{
  "instances": [
    {
      "source_language_code": "SOURCE_LANGUAGE_CODE",
      "target_language_code": "TARGET_LANGUAGE_CODE",
      "contents": [
        "SOURCE_TEXT"
      ],
      "mimeType": "MIME_TYPE",
      "model": "projects/PROJECT_ID/locations/LOCATION/models/general/translation-llm"
    }
  ]
}

Para enviar a solicitação, expanda uma destas opções:

Você receberá uma resposta JSON semelhante a esta:

{
  "predictions": [
    {
      "translations": [
        {
          "translatedText": "TRANSLATED_TEXT",
          "model": "projects/PROJECT_ID/locations/LOCATION/models/general/translation-llm"
        }
      ]
    }
  ]
}

Node.js

Antes de testar esse exemplo, siga as instruções de configuração para Node.js no Guia de início rápido da Vertex AI sobre como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vertex AI para Node.js.

Para autenticar na Vertex AI, 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 = {
    instances: [{
      source_language_code: SOURCE_LANGUAGE_CODE,
      target_language_code: TARGET_LANGUAGE_CODE,
      contents: [SOURCE_TEXT],
      model: "projects/PROJECT_ID/locations/LOCATION/models/general/translation-llm"
    }]
  };
  const {google} = require('googleapis');
  const aiplatform = google.cloud('aiplatform');
  const endpoint = aiplatform.predictionEndpoint('projects/PROJECT_ID/locations/LOCATION/publishers/google/models/cloud-translate-text');

  const [response] = await endpoint.predict(request)
  console.log('Translating')
  console.log(response)
}
      

Python

Antes de testar essa amostra, siga as instruções de configuração para Python Guia de início rápido da Vertex AI: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vertex AI para Python.

Para autenticar na Vertex AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.

from google.cloud import aiplatform

def translate():
  # Create a client
  client_options = {"api_endpoint": "LOCATION-aiplatform.googleapis.com"}
  client = aiplatform.gapic.PredictionServiceClient(client_options=client_options)
  
  # Initialize the request
  endpoint_id = f"projects/PROJECT_ID/locations/LOCATION/publishers/google/models/cloud-translate-text"
  instances=[{
    "model": "projects/PROJECT_ID/locations/LOCATION/models/general/translation-llm",
    "source_language_code": 'SOURCE_LANGUAGE_CODE',
    "target_language_code": 'TARGET_LANGUAGE_CODE',
    "contents": ["SOURCE_TEXT"],
  }]

  # Make the request
  response = client.predict(instances=instances, endpoint=endpoint_id)
  # Handle the response
  print(response)
      

Gemini

Use a API Vertex AI e o Gemini para traduzir de texto.

Você pode personalizar ainda mais as respostas do Gemini e engenharia de comando.

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 seu Google Cloud projeto.
  • LOCATION: o local para processar a solicitação. As opções disponíveis incluem:

    Clicar para abrir uma lista parcial das regiões disponíveis

    • us-central1
    • us-west4
    • northamerica-northeast1
    • us-east4
    • us-west1
    • asia-northeast3
    • asia-southeast1
    • asia-northeast1
  • MODEL_ID: o ID do modelo, como gemini-1.0-pro-002
  • SOURCE_LANGUAGE_CODE: o idioma do texto de entrada.
  • TARGET_LANGUAGE_CODE: o idioma de chegada para o qual traduzir o texto de entrada.
  • SOURCE_TEXT: O texto que será traduzido.
  • TEMPERATURE: a temperatura é usada para amostragem durante a geração da resposta, que ocorre quando topP e topK são aplicados. A temperatura controla o grau de aleatoriedade na seleção do token. Temperaturas mais baixas são boas para solicitações que exigem uma resposta menos aberta ou criativa, enquanto temperaturas mais altas podem levar a resultados mais diversos ou criativos. Uma temperatura de 0 significa que os tokens de maior probabilidade são sempre selecionados. Nesse caso, as respostas para uma determinada solicitação são, na maioria das vezes, deterministas, mas uma pequena variação ainda é possível.

    Se o modelo retornar uma resposta muito genérica, muito curta ou se o modelo fornecer uma resposta alternativa, tente aumentar a temperatura.

  • TOP_P: o Top-P muda a forma como o modelo seleciona tokens para saída. Os tokens são selecionados do mais provável para o menos provável até que a soma das probabilidades seja igual ao valor do top-P. Por exemplo, se os tokens A, B e C tiverem uma probabilidade de 0,3, 0,2 e 0,1 e o valor de top-P for 0.5, o modelo selecionará A ou B como token seguinte usando temperatura e exclui C como candidato.

    Especifique um valor mais baixo para respostas menos aleatórias e um valor mais alto para respostas mais aleatórias.

  • TOP_K: o Top-K muda a forma como o modelo seleciona tokens para saída. Um top-K de 1 significa que o próximo token selecionado é o mais provável entre todos os tokens no vocabulário do modelo (também chamado de decodificação gananciosa), enquanto um top-K de 3 significa que o próximo token está selecionado entre os três tokens mais prováveis usando a temperatura.

    Para cada etapa da seleção de tokens, são amostrados os tokens top-K com as maiores probabilidades. Em seguida, os tokens são filtrados com base no valor de top-P com o token final selecionado por meio da amostragem de temperatura.

    Especifique um valor mais baixo para respostas menos aleatórias e um valor mais alto para respostas mais aleatórias.

  • MAX_OUTPUT_TOKENS: número máximo de tokens que podem ser gerados na resposta. Um token tem cerca de quatro caracteres. 100 tokens correspondem a cerca de 60 a 80 palavras.

    Especifique um valor mais baixo para respostas mais curtas e um valor mais alto para respostas potencialmente mais longas.

  • SAFETY_CATEGORY: a categoria de segurança para a qual configurar um limite. Os valores aceitáveis são os seguintes:

    Clique para expandir as categorias de segurança

    • HARM_CATEGORY_SEXUALLY_EXPLICIT
    • HARM_CATEGORY_HATE_SPEECH
    • HARM_CATEGORY_HARASSMENT
    • HARM_CATEGORY_DANGEROUS_CONTENT
  • THRESHOLD: o limite de bloqueio de respostas que podem pertencer à categoria de segurança especificada com base na probabilidade. Os valores aceitáveis são os seguintes:

    Clique para expandir os limites de bloqueio

    • BLOCK_NONE
    • BLOCK_ONLY_HIGH
    • BLOCK_MEDIUM_AND_ABOVE (padrão)
    • BLOCK_LOW_AND_ABOVE
    BLOCK_LOW_AND_ABOVE bloqueia mais, e BLOCK_ONLY_HIGH bloqueia a menor.

Método HTTP e URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:streamGenerateContent

Corpo JSON da solicitação:

{
  "contents": [
    {
      "role": "user",
      "parts": [
        {
        "text": "SOURCE_LANGUAGE_CODE: SOURCE_TEXT\nTARGET_LANGUAGE_CODE:"
        }
      ]
    }
  ],
  "generation_config": {
    "temperature": TEMPERATURE,
    "topP": TOP_P,
    "topK": TOP_K,
    "candidateCount": 1,
    "maxOutputTokens": MAX_OUTPUT_TOKENS
  }
  "safetySettings": [
    {
      "category": "SAFETY_CATEGORY",
      "threshold": "THRESHOLD"
    }
  ]
}

Para enviar a solicitação, expanda uma destas opções:

Você receberá um código de status bem-sucedido (2xx) e uma resposta vazia.

Node.js

Antes de testar esse exemplo, siga as instruções de configuração para Node.js no Guia de início rápido da Vertex AI sobre como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vertex AI para Node.js.

Para autenticar na Vertex AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.

const {VertexAI} = require('@google-cloud/vertexai');

// Initialize Vertex with your Cloud project and location
const vertex_ai = new VertexAI({project: 'PROJECT_ID', location: 'LOCATION'});
const model = 'gemini-1.0-pro';

// Instantiate the models
const generativeModel = vertex_ai.preview.getGenerativeModel({
  model: model,
  generationConfig: {
    'candidate_count': 1,
    'max_output_tokens': MAX_OUTPUT_TOKENS,
    'temperature': TEMPERATURE,
    'top_p': TOP_P,
    'top_k': TOP_K,
  },
  safetySettings: [
    {
        'category': 'HARM_CATEGORY_HATE_SPEECH',
        'threshold': 'BLOCK_MEDIUM_AND_ABOVE'
    },
    {
        'category': 'HARM_CATEGORY_DANGEROUS_CONTENT',
        'threshold': 'BLOCK_MEDIUM_AND_ABOVE'
    },
    {
        'category': 'HARM_CATEGORY_SEXUALLY_EXPLICIT',
        'threshold': 'BLOCK_MEDIUM_AND_ABOVE'
    },
    {
        'category': 'HARM_CATEGORY_HARASSMENT',
        'threshold': 'BLOCK_MEDIUM_AND_ABOVE'
    }
  ],
});


async function generateContent() {
  const req = {
    contents: [
      {role: 'user', parts: [{text: `SOURCE_LANGUAGE_CODE: TEXT
TARGET_LANGUAGE_CODE:`}]}
    ],
  };

  const streamingResp = await generativeModel.generateContentStream(req);

  for await (const item of streamingResp.stream) {
    process.stdout.write('stream chunk: ' + JSON.stringify(item) + '\n');
  }

  process.stdout.write('aggregated response: ' + JSON.stringify(await streamingResp.response));
}

generateContent();
      

Python

Antes de testar essa amostra, siga as instruções de configuração para Python Guia de início rápido da Vertex AI: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vertex AI para Python.

Para autenticar na Vertex AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.

import base64
import vertexai
from vertexai.generative_models import GenerativeModel, Part, FinishReason
import vertexai.preview.generative_models as generative_models

def generate():
  vertexai.init(project="PROJECT_ID", location="LOCATION")
  model = GenerativeModel("gemini-1.0-pro")
  responses = model.generate_content(
      ["""SOURCE_LANGUAGE_CODE: TEXT
TARGET_LANGUAGE_CODE:"""],
      generation_config=generation_config,
      safety_settings=safety_settings,
  )

  print(responses)


generation_config = {
    "candidate_count": 1,
    "max_output_tokens": MAX_OUTPUT_TOKENS,
    "temperature": TEMPERATURE,
    "top_p": TOP_P,
    "top_k": TOP_K,
}

safety_settings = {
    generative_models.HarmCategory.HARM_CATEGORY_HATE_SPEECH: generative_models.HarmBlockThreshold.BLOCK_MEDIUM_AND_ABOVE,
    generative_models.HarmCategory.HARM_CATEGORY_DANGEROUS_CONTENT: generative_models.HarmBlockThreshold.BLOCK_MEDIUM_AND_ABOVE,
    generative_models.HarmCategory.HARM_CATEGORY_SEXUALLY_EXPLICIT: generative_models.HarmBlockThreshold.BLOCK_MEDIUM_AND_ABOVE,
    generative_models.HarmCategory.HARM_CATEGORY_HARASSMENT: generative_models.HarmBlockThreshold.BLOCK_MEDIUM_AND_ABOVE,
}

generate()
      

NMT

Usar a API Cloud Translation e o modelo NMT para traduzir textos.

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 seu Google Cloud projeto.
  • SOURCE_LANGUAGE: (opcional) o código do idioma do texto de entrada. Para ver os códigos de idioma aceitos, consulte Suporte a idiomas.
  • TARGET_LANGUAGE: o idioma de chegada para o qual traduzir o texto de entrada. Defina como um dos códigos de idioma aceitos.
  • SOURCE_TEXT: O texto que será traduzido.

Método HTTP e URL:

POST https://translation.googleapis.com/v3/projects/PROJECT_ID:translateText

Corpo JSON da solicitação:

{
  "sourceLanguageCode": "SOURCE_LANGUAGE",
  "targetLanguageCode": "TARGET_LANGUAGE",
  "contents": ["SOURCE_TEXT1", "SOURCE_TEXT2"]
}

Para enviar a solicitação, expanda uma destas opções:

Você receberá uma resposta JSON semelhante a esta:

{
  "translations": [
    {
      "translatedText": "TRANSLATED_TEXT1"
    },
    {
      "translatedText": "TRANSLATED_TEXT2"
    }
  ]
}

Node.js

Antes de testar esse exemplo, siga as instruções de configuração para Node.js no Guia de início rápido da Vertex AI sobre como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vertex AI para Node.js.

Para autenticar na Vertex AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.

/**
 * TODO(developer): Uncomment these variables before running the sample
 */
// const projectId = 'YOUR_PROJECT_ID';
// const location = 'global';
// const text = 'text to translate';

// Imports the Google Cloud Translation library
const {TranslationServiceClient} = require('@google-cloud/translate');

// Instantiates a client
const translationClient = new TranslationServiceClient();

async function translateText() {
  // MIME type of the content to translate
  // Supported MIME types:
  // https://cloud.google.com/translate/docs/supported-formats
  const mimeType = 'text/plain';

  // Construct request
  const request = {
    parent: `projects/${projectId}/locations/${location}`,
    contents: [text],
    mimeType: mimeType,
    sourceLanguageCode: 'en',
    targetLanguageCode: 'sr-Latn',
  };

  // Run request
  const [response] = await translationClient.translateText(request);

  for (const translation of response.translations) {
    console.log(`Translation: ${translation.translatedText}`);
  }
}

translateText();

Python

Antes de testar esse exemplo, siga as instruções de configuração para Python no Guia de início rápido da Vertex AI sobre como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vertex AI para Python.

Para autenticar na Vertex AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.

import os

# Import the Google Cloud Translation library.
from google.cloud import translate_v3

PROJECT_ID = os.environ.get("GOOGLE_CLOUD_PROJECT")


def translate_text(
    text: str = "YOUR_TEXT_TO_TRANSLATE",
    source_language_code: str = "en-US",
    target_language_code: str = "fr",
) -> translate_v3.TranslationServiceClient:
    """Translate Text from a Source language to a Target language.
    Args:
        text: The content to translate.
        source_language_code: The code of the source language.
        target_language_code: The code of the target language.
            For example: "fr" for French, "es" for Spanish, etc.
            Find available languages and codes here:
            https://cloud.google.com/translate/docs/languages#neural_machine_translation_model
    """

    # Initialize Translation client.
    client = translate_v3.TranslationServiceClient()
    parent = f"projects/{PROJECT_ID}/locations/global"

    # MIME type of the content to translate.
    # Supported MIME types:
    # https://cloud.google.com/translate/docs/supported-formats
    mime_type = "text/plain"

    # Translate text from the source to the target language.
    response = client.translate_text(
        contents=[text],
        parent=parent,
        mime_type=mime_type,
        source_language_code=source_language_code,
        target_language_code=target_language_code,
    )

    # Display the translation for the text.
    # For example, for "Hello! How are you doing today?":
    # Translated text: Bonjour comment vas-tu aujourd'hui?
    for translation in response.translations:
        print(f"Translated text: {translation.translated_text}")

    return response

Traduções personalizadas

Personalize as respostas do LLM de tradução fornecendo seus próprios exemplos de traduções. As traduções personalizadas só funcionam com o LLM de tradução.

É possível solicitar uma tradução personalizada pelo Vertex AI Studio. console ou API com uma diferença. O console aceita traduções personalizadas somente quando você fornecer exemplos em um arquivo TMX ou TSV. A API suporta traduções apenas quando você fornecer exemplos (até cinco pares de sentenças) inline como parte da solicitação de tradução.

Requisitos de dados

Se você fornecer exemplos de tradução em um arquivo para o console do Google Cloud , os exemplos devem ser escritos como pares de segmentos em um arquivo TMX ou TSV. Cada par inclui um segmento do idioma de origem e a tradução correspondente. Para mais informações, consulte Preparar exemplos de tradução na documentação do Cloud Translation.

Para ter resultados mais precisos, inclua exemplos específicos de uma ampla variedade de cenários. Inclua pelo menos cinco pares de frases e no máximo 10.000 pares. Além disso, um par de segmentos pode ter no máximo 512 caracteres.

Console

  1. Na seção "Vertex AI" do console Google Cloud , acesse a página Tradução para tradução no Vertex AI Studio.

    Acesse o Vertex AI Studio

  2. No painel Executar configurações, defina as configurações de tradução.

    1. No campo Modelo, selecione LLM de tradução.
    2. Para mudar a temperatura, abra Avançado.
  3. Clique em Adicionar exemplos.

    1. Selecione um arquivo local ou um arquivo do Cloud Storage. O Vertex AI Studio identificará os idiomas de origem e de destino do arquivo.
    2. Selecione o número de exemplos que o modelo usará antes de gerar uma resposta.

    O número de exemplos que você seleciona é contabilizado no limite de caracteres de entrada por solicitação de 3.000.

  4. No campo de entrada, digite o texto a ser traduzido.

  5. Clique em Enviar.

    A Vertex AI seleciona automaticamente o número especificado de frases de referência que são mais semelhantes à sua entrada. Modelo de tradução identifica padrões de seus exemplos e os aplica quando gerar uma resposta.

    O limite de saída por solicitação é de 3.000 caracteres. Qualquer texto além desse limite é descartado.

  6. Para acessar o código ou o comando curl que demonstra como solicitar traduções, clique em Acessar código.

API

Para solicitar traduções personalizadas, inclua até cinco pares de frases de referência no sua solicitação de tradução. O modelo de tradução usa todos eles para identificar padrões dos exemplos e, em seguida, os aplica ao gerar uma resposta.

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 seu projeto Google Cloud
  • LOCATION: o local onde você quer executar essa operação. Por exemplo, 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 entrada.
  • TARGET_LANGUAGE: o idioma de chegada para o qual traduzir o texto de entrada.
  • SOURCE_TEXT: texto no idioma de origem a ser traduzido.
  • MIME_TYPE (opcional): o formato do texto de origem, como text/html ou text/plain. Por padrão, o tipo MIME é definido como text/plain.

Método HTTP e URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/translate-llm:predict

Corpo JSON da solicitação:

{
  "instances": [
    {
      "reference_sentence_config": {
        "reference_sentence_pair_lists": [
          {
            "reference_sentence_pairs": [
              {
                "source_sentence": "REFERENCE_SOURCE_1_1",
                "target_sentence": "REFERENCE_TARGET_1_1"
              },
              {
                "source_sentence": "REFERENCE_SOURCE_1_2",
                "target_sentence": "REFERENCE_SOURCE_1_2"
              }
            ]
          }
        ],
        "source_language_code": "SOURCE_LANGUAGE_CODE",
        "target_language_code": "TARGET_LANGUAGE_CODE"
      },
      "content": [
        "SOURCE_TEXT"
      ],
      "mimeType": "MIME_TYPE"
    }
  ]
}

Para enviar a solicitação, expanda uma destas opções:

Você receberá uma resposta JSON semelhante a esta:

{
  "predictions": [
    {
      "languageCode": "TARGET_LANGUAGE",
      "translations": [
        {
          "translatedText": "TRANSLATED_TEXT"
        }
      ]
    }
  ]
}

Node.js

Antes de testar esse exemplo, siga as instruções de configuração para Node.js no Guia de início rápido da Vertex AI sobre como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vertex AI para Node.js.

Para autenticar na Vertex AI, 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 = {
    instances: [{
        "reference_sentence_config": {
          "reference_sentence_pair_lists": [{
            "reference_sentence_pairs": [{
              "source_sentence": 'SAMPLE_REFERENCE_SOURCE_1',
              "target_sentence": 'SAMPLE_REFERENCE_TARGET_1'
            },
            "reference_sentence_pairs": {
              "source_sentence": 'SAMPLE_REFERENCE_SOURCE_2',
              "target_sentence": 'SAMPLE_REFERENCE_TARGET_2'
            }]
          }],
          "source_language_code": 'SOURCE_LANGUAGE_CODE',
          "target_language_code": 'TARGET_LANGUAGE_CODE'
        },
        "contents": ["SOURCE_TEXT"]
    }]
  };
  const {google} = require('googleapis');
  const aiplatform = google.cloud('aiplatform');
  const endpoint = aiplatform.predictionEndpoint('projects/PROJECT_ID/locations/LOCATION/publishers/google/models/translate-llm');

  const [response] = await endpoint.predict(request)
  console.log('Translating')
  console.log(response)
}
  

Python

Antes de testar essa amostra, siga as instruções de configuração para Python Guia de início rápido da Vertex AI: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vertex AI para Python.

Para autenticar na Vertex AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.

from google.cloud import aiplatform
from google.protobuf.json_format import MessageToDict

def translate():
  # Create a client
  client_options = {"api_endpoint": "LOCATION-aiplatform.googleapis.com"}
  client = aiplatform.gapic.PredictionServiceClient(client_options=client_options)

  # Initialize the request
  endpoint_id = f"projects/PROJECT_ID/locations/LOCATION/publishers/google/models/translate-llm"
  instances=[{
      "reference_sentence_config": {
        "reference_sentence_pair_lists": [{
          "reference_sentence_pairs": [{
            "source_sentence": 'SAMPLE_REFERENCE_SOURCE_1',
            "target_sentence": 'SAMPLE_REFERENCE_TARGET_1'
          },
          {
            "source_sentence": 'SAMPLE_REFERENCE_SOURCE_2',
            "target_sentence": 'SAMPLE_REFERENCE_TARGET_2'
          }]
        }],
        "source_language_code": 'SOURCE_LANGUAGE_CODE',
        "target_language_code": 'TARGET_LANGUAGE_CODE'
      },
      "content": ["SOURCE_TEXT"]
  }]
  # Make the request
  response = client.predict(
      endpoint=endpoint_id, instances=instances,
  )
  # Handle the response
  print(response)

  # The predictions are a google.protobuf.Value representation of the model's predictions.
  predictions = MessageToDict(response._pb)['predictions']
  for prediction in predictions:
      print(prediction['translations'])
  

Também é possível usar a API Cloud Translation para criar um conjunto de dados e importar pares de sentenças de exemplo. Quando você usa a API Cloud Translation para solicitar traduções, é possível incluir um conjunto de dados para personalizar as respostas. O conjunto de dados persistem e podem ser reutilizados em várias solicitações de tradução. Para mais mais detalhadas, consulte Solicitar traduções adaptáveis nos Documentação do Cloud Translation.

Idiomas disponíveis

LLM de tradução

Com o LLM de tradução, é possível traduzir de e para qualquer um dos seguintes idiomas:

Nome da linguagem Código do idioma
Árabe ar
Bengalês bn
Búlgaro bg
Catalão ca
Chinês (simplificado) zh-CN
Croata hr
Tcheco cs
Dinamarquês da
Holandês nl
Inglês en
Estoniano et
Finlandês fi
Francês fr
Alemão de
Grego el
Gujarati gu
Hebraico he
Hindi hi
Húngaro hu
Islandês is
Indonésio id
Italiano it
Japonês ja
Kannada kn
Coreano ko
Letão lv
Lituano lt
Malaiala ml
Marati mr
Norueguês no
Persa fa
Polonês pl
Português pt
Punjabi pa
Romeno ro
Russo ru
Eslovaco sk
Esloveno sl
Espanhol es
Suaíli sw
Sueco sv
Tâmil ta
Télugo te
Tailandês th
Turco tr
Ucraniano uk
Urdu ur
Vietnamita vi
Zulu zu

Gemini e NMT

Para informações sobre os idiomas compatíveis com os modelos do Gemini e o modelo NMT do Cloud Translation, consulte a seguinte documentação: