Modelo GML de tradução (TLLM)

O modelo de tradução mais recente e avançado da Google, o TLLM, é um LLM ajustado com LoRA que oferece a mais alta qualidade de tradução disponível. Alcança pontuações MetricX e COMET significativamente melhores em cargas de trabalho difíceis do que outros modelos de tradução. Suporta a personalização, bem como a tradução adaptativa mais simples.

O ID do modelo é general/translation-llm.

Para aceder ao modelo TLLM, tem de ter um Google Cloud projeto que tenha a API Cloud Translation - Advanced ativada, com credenciais para fazer chamadas autenticadas. Para aceder ao modelo através de Python ou outra linguagem de programação, instale a biblioteca cliente v3 adequada .

Nos exemplos apresentados aqui, PROJECT_ID representa o ID do seu projeto e REGION_NAME representa o nome técnico da região Google Cloud onde quer executar a operação de tradução (como us-central1). Use códigos ISO-639 para identificar os idiomas de origem e de destino, quando necessário.

Exemplo de REST de tradução de texto

Pode usar a API REST para chamar a função TranslateText no modelo TLLM. Pode colocar os campos de pedido num ficheiro JSON com um nome como request.json:

{
  "contents": ["This is text that I would like to have translated.",
               "It can include up to 1024 strings."],
  "mimeType": "text/plain",
  "sourceLanguageCode": "en"
  "targetLanguageCode": "it",
  "model": "projects/PROJECT_ID/locations/REGION_NAME/models/general/translation-llm"
}

Em seguida, pode usar um comando curl para enviar o pedido:

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth print-access-token)" \
     -H "x-goog-user-project: PROJECT_ID" \
     -H "Content-Type: application/json; charset=utf-8" \
     -d @request.json \
     "https://translation.googleapis.com/v3/projects/PROJECT_ID:translateText"

A resposta é um documento JSON com o seguinte aspeto:

{
  "translations": [
    {
      "translatedText": "Este es el texto que me gustaría traducir.",
      "model": "projects/PROJECT_ID/locations/REGION_NAME/models/general/translation-llm"
    },
    {
      "translatedText": "Puede incluir hasta 1024 cadenas.",
      "model": "projects/PROJECT_ID/locations/REGION_NAME/models/general/translation-llm"
    }
  ]
}

Exemplo de Python de tradução de texto

Segue-se um exemplo de código Python para chamar TranslateText com o modelo TLLM:

from google.cloud import translate_v3

def translate():

  response = translate_v3.TranslationServiceClient().translate_text(
      contents=["Life is short.",
                  "Art is long."],
      target_language_code='fr',
      source_language_code='en',
      parent=f"projects/PROJECT_ID/locations/REGION_NAME",
      model=f"projects/PROJECT_ID/locations/REGION_NAME/models/general/translation-llm"
  )

  print(response)

  return response

translate()

A resposta assume a forma de objetos JSON:

translations {
  translated_text: "La vie est courte."
  model: "projects/261347268520/locations/us-central1/models/general/translation-llm"
}
translations {
  translated_text: "L'art est long."
  model: "projects/261347268520/locations/us-central1/models/general/translation-llm"
}

translations {
  translated_text: "La vie est courte."
  model: "projects/261347268520/locations/us-central1/models/general/translation-llm"
}
translations {
  translated_text: "L'art est long."
  model: "projects/261347268520/locations/us-central1/models/general/translation-llm"