Traduz o texto

Para tarefas de tradução, a IA generativa no Vertex AI oferece dois modelos de tradução especializados da API Cloud Translation:

  • MDI de tradução: a mais recente oferta de tradução da Google no estilo de MDI de qualidade mais elevada. Alcança a tradução da mais alta qualidade, ao mesmo tempo que oferece latências razoáveis (~3 vezes mais rápido do 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 da Google, que atinge traduções com uma latência de ~100 ms. Alcança a mais alta qualidade de todos os modelos de publicação de testes de referência com latências comparáveis e continua a registar avanços de qualidade contínuos. A NMT pode atingir latências até 20 vezes mais rápidas do que o Gemini 2.0 Flash.

Principais vantagens e diferenciadores do MDG de tradução

  • Qualidade de tradução incomparável: o MDG de tradução oferece a mais elevada qualidade de tradução, alcançando um desempenho significativamente superior em testes de referência em comparação com outros modelos de referência. O GML de tradução tem muito mais probabilidade de reescrever significativamente uma frase para que soe mais natural no idioma de destino, em vez de dar traduções "palavra a palavra" menos naturais, que são frequentemente vistas noutros modelos de tradução.
  • Compromisso qualidade/latência superior: o MDI/CE de tradução oferece traduções com tecnologia de MDI/CE a latências significativamente melhores do que o Gemini 2.0 Flash. Embora o GML de tradução tenha latências mais elevadas do que o modelo NMT, normalmente, fornece respostas de maior qualidade para uma vasta gama de aplicações.

Comparação de funcionalidades de modelos

Funcionalidade GML de tradução (com tecnologia do Gemini) Modelo NMT
Descrição Um modelo de linguagem (conteúdo extenso) especializado em tradução com tecnologia do Gemini, otimizado para tradução. Disponível com a IA generativa no Vertex AI e na API Cloud Translation – Advanced. O modelo de tradução automática neural da Google, disponível através das APIs Cloud Translation - Advanced e Cloud Translation - Basic . Otimizado em função da simplicidade e da escala.
Qualidade Tradução de qualidade superior. Supera a NMT, o Gemini 2.0 Flash e o Gemini 2.5 Pro em termos de qualidade. É mais provável que reescreva frases para um fluxo natural. Mostra uma redução significativa de erros. Qualidade média a elevada, consoante o par de idiomas. Entre os modelos de TMR em tempo real com melhor desempenho para muitas combinações de idiomas e domínios.
Latência A latência é significativamente melhor do que a do Gemini 2.0 Flash, mas ainda mais lenta do que a da NMT. Tradução em tempo real mais rápida. Latência baixa, adequada para aplicações de chat e em tempo real. Atinge latências até 20 vezes mais rápidas do que o Gemini 2.0 Flash
Suporte de idiomas Os idiomas suportados incluem alemão, árabe, checo, chinês, coreano, espanhol, francês, hindi, indonésio, inglês, italiano, japonês, neerlandês, polaco, português, russo, tailandês, turco, ucraniano e vietnamita. Consulte os idiomas suportados para ver uma lista completa. Os idiomas suportados incluem cantonês, fijiano e balinês. É possível traduzir de qualquer idioma para qualquer outro idioma na lista de idiomas suportados. Consulte os idiomas suportados para ver uma lista completa.
Personalização Suporte para - Glossários avançados, Ajuste fino supervisionado na Vertex AI para adaptações específicas do domínio/cliente, Tradução adaptativa para personalização de estilo em tempo real com alguns exemplos. Suporte para glossários para controlar a terminologia e preparação de modelos personalizados com o AutoML Translation na API Cloud Translation – Advanced.
Funcionalidades de tradução Tradução de HTML HTML, em lote, e tradução de documentos formatados
Integração da API Cloud Translation - Advanced API, Vertex AI API Cloud Translation - Basic API, Cloud Translation - Advanced API, Vertex AI API

Utilização

Esta secção mostra como usar o Vertex AI Studio para traduzir rapidamente texto de um idioma para outro. Pode usar o MDG de tradução ou o modelo de TMR para traduzir texto através da Google Cloud consola ou da API. Tenha em atenção que os idiomas suportados por cada modelo podem variar. Antes de pedir traduções, verifique se o modelo que está a usar suporta os seus idiomas de origem e de destino.

Consola

  1. Na secção Vertex AI da Google Cloud consola, aceda à página Traduzir texto no Vertex AI Studio.

    Aceda ao Vertex AI Studio

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

  3. Para alterar as definições do modelo (como a temperatura), expanda Avançadas.

  4. Defina os idiomas de origem e de destino.

  5. No campo de entrada, introduza o texto a traduzir.

  6. Clique em Enviar.

  7. Para obter o código ou o comando curl que demonstram como pedir traduções, clique em Obter código.

Tenha em atenção que, no Vertex AI Studio, o MDI/CE de tradução permite-lhe fornecer traduções de exemplo para personalizar as respostas do modelo de forma a corresponderem mais de perto ao seu estilo, tom e domínio da indústria. O modelo usa os seus exemplos como contexto de poucos exemplos antes de traduzir o texto.

API

Selecione o modelo a usar para as suas traduções.

GML de tradução

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

REST

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • PROJECT_NUMBER_OR_ID: o ID numérico ou alfanumérico do seu projeto Google Cloud
  • LOCATION: a localização onde quer executar esta operação. Por exemplo, us-central1.
  • SOURCE_LANGUAGE_CODE: o código do idioma do texto de entrada. Definido para um dos códigos de idioma indicados na tradução adaptativa.
  • TARGET_LANGUAGE_CODE: o idioma de destino para o qual o texto de entrada deve ser traduzido. Definido para um dos códigos de idioma indicados na tradução adaptativa.
  • SOURCE_TEXT: texto no idioma de origem a traduzir.
  • MIME_TYPE (Opcional): o formato do texto de origem, como text/html ou text/plain. Por predefinição, o tipo MIME está 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 do pedido:

{
  "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 o seu pedido, expanda uma destas opções:

Deve receber uma resposta JSON semelhante à seguinte:

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

Node.js

Antes de experimentar este exemplo, siga as Node.jsinstruções de configuração no início rápido do Vertex AI com bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Node.js Vertex AI.

Para se autenticar no Vertex AI, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure 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 experimentar este exemplo, siga as Pythoninstruções de configuração no início rápido do Vertex AI com bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Python Vertex AI.

Para se autenticar no Vertex AI, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure 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)
      

NMT

Use a Cloud Translation API e o modelo NMT para traduzir texto.

REST

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • PROJECT_NUMBER_OR_ID: o ID numérico ou alfanumérico do seu projeto Google Cloud .
  • SOURCE_LANGUAGE: (Opcional) O código do idioma do texto de entrada. Para ver os códigos de idiomas suportados, consulte o artigo Suporte de idiomas.
  • TARGET_LANGUAGE: o idioma de destino para o qual o texto de entrada deve ser traduzido. Definido para um dos códigos de idioma suportados.
  • SOURCE_TEXT: o texto a traduzir.

Método HTTP e URL:

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

Corpo JSON do pedido:

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

Para enviar o seu pedido, expanda uma destas opções:

Deve receber uma resposta JSON semelhante à seguinte:

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

Node.js

Antes de experimentar este exemplo, siga as Node.jsinstruções de configuração no início rápido do Vertex AI com bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Node.js Vertex AI.

Para se autenticar no Vertex AI, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure 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 experimentar este exemplo, siga as Pythoninstruções de configuração no início rápido do Vertex AI com bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Python Vertex AI.

Para se autenticar no Vertex AI, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure 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 GML de tradução fornecendo as suas próprias traduções de exemplo. As traduções personalizadas só funcionam com o GML de tradução.

Pode pedir uma tradução personalizada através da consola ou da API Vertex AI Studio, com uma diferença. A consola suporta traduções personalizadas apenas quando fornece exemplos num ficheiro TMX ou TSV. A API suporta traduções personalizadas apenas quando fornece exemplos (até 5 pares de frases) incorporados como parte do pedido de tradução.

Requisitos de dados

Se fornecer exemplos de traduções num ficheiro para a Google Cloud consola, os exemplos têm de ser escritos como pares de segmentos num ficheiro TMX ou TSV. Cada par inclui um segmento do idioma de origem e a respetiva tradução. Para mais informações, consulte o artigo Prepare traduções de exemplo na documentação do Cloud Translation.

Para receber os resultados mais precisos, inclua exemplos específicos de uma grande variedade de cenários. Tem de incluir, pelo menos, cinco pares de frases, mas não mais de 10 000 pares. Além disso, um par de segmentos pode ter, no máximo, um total de 512 carateres.

Consola

  1. Na secção Vertex AI da Google Cloud consola, aceda à página Traduzir texto no Vertex AI Studio.

    Aceda ao Vertex AI Studio

  2. No painel Definições de execução, configure as definições de tradução.

    1. No campo Modelo, selecione LLM de tradução.
    2. Para alterar a temperatura, expanda Avançadas.
  3. Clique em Adicionar exemplos.

    1. Selecione um ficheiro local ou um ficheiro do Cloud Storage. O Vertex AI Studio determina os idiomas de origem e destino a partir do seu ficheiro.
    2. Selecione o número de exemplos que o modelo deve usar antes de gerar uma resposta.

    O número de exemplos que selecionar conta para o limite de carateres de entrada por pedido de 3000.

  4. No campo de entrada, introduza o texto a traduzir.

  5. Clique em Enviar.

    O Vertex AI seleciona automaticamente o número especificado de frases de referência mais semelhantes à sua entrada. O modelo de tradução identifica padrões nos seus exemplos e, em seguida, aplica esses padrões quando gera uma resposta.

    O limite de saída por pedido é de 3000 carateres. Todo o texto além deste limite é ignorado.

  6. Para obter o código ou o comando curl que demonstram como pedir traduções, clique em Obter código.

API

Para pedir traduções personalizadas, inclua até cinco pares de frases de referência no seu pedido de tradução. O modelo de tradução usa todos estes elementos para identificar padrões nos seus exemplos e, em seguida, aplica esses padrões quando gera uma resposta.

REST

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • PROJECT_NUMBER_OR_ID: o ID numérico ou alfanumérico do seu projeto Google Cloud
  • LOCATION: a localização onde quer executar esta operação. Por exemplo, us-central1.
  • REFERENCE_SOURCE: uma frase no idioma de origem que faz parte de um par de frases de referência.
  • REFERENCE_TARGET: uma frase no idioma de destino que faz 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 destino para o qual o texto de entrada deve ser traduzido.
  • SOURCE_TEXT: texto no idioma de origem a traduzir.
  • MIME_TYPE (Opcional): o formato do texto de origem, como text/html ou text/plain. Por predefinição, o tipo MIME está 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 do pedido:

{
  "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 o seu pedido, expanda uma destas opções:

Deve receber uma resposta JSON semelhante à seguinte:

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

Node.js

Antes de experimentar este exemplo, siga as Node.jsinstruções de configuração no início rápido do Vertex AI com bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Node.js Vertex AI.

Para se autenticar no Vertex AI, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure 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 experimentar este exemplo, siga as Pythoninstruções de configuração no início rápido do Vertex AI com bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Python Vertex AI.

Para se autenticar no Vertex AI, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure 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 pode usar a API Cloud Translation para criar um conjunto de dados e importar os seus pares de frases de exemplo. Quando usa a API Cloud Translation para pedir traduções, pode incluir o seu conjunto de dados para personalizar as respostas. O conjunto de dados persiste e pode ser reutilizado com vários pedidos de tradução. Para mais informações, consulte o artigo Peça traduções adaptativas na documentação do Cloud Translation.

Idiomas suportados

GML de tradução

Com o MDG de tradução, pode traduzir para e a partir de qualquer um dos seguintes idiomas.

Nome do idioma Código do idioma
Árabe ar
Bengali bn
Búlgaro bg
Catalão ca
Chinês (simplificado) zh-CN
Croata hr
Checo cs
Dinamarquês da
Neerlandês nl
Inglês en
Estónio 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
Canará kn
Coreano ko
Letão lv
Lituânia lt
Malaiala ml
Marati mr
Norueguês no
Persa fa
Polaco pl
Português pt
Punjabi pa
Romeno ro
Russo ru
Eslovaco sk
Esloveno sl
Espanhol es
Suaíli sw
Sueco sv
Tamil ta
Telugu te
Tailandês th
Turco tr
Ucraniano uk
Urdu ur
Vietnamita vi
Zulu zu

NMT

Para informações sobre os idiomas suportados pelo modelo de TMR do Cloud Translation, consulte a seguinte documentação: