Menerjemahkan teks

Untuk tugas terjemahan, AI Generatif di Vertex AI menawarkan pilihan antara model Gemini dan dua model terjemahan khusus dari Cloud Translation API:

  • LLM Terjemahan - Penawaran terjemahan gaya LLM berkualitas tertinggi terbaru dari Google. Mencapai terjemahan berkualitas tertinggi sekaligus ditayangkan dengan latensi yang wajar (~3x lebih cepat daripada Gemini 2.0 Flash).

  • Model Terjemahan Mesin Neural (NMT) Cloud Translation - Penawaran terjemahan real-time premium Google yang mencapai terjemahan latensi ~100 md. Model ini mencapai kualitas tertinggi dari semua model yang diukur dengan benchmark yang ditayangkan pada latensi yang sebanding dan terus mengalami peningkatan kualitas yang berkelanjutan. NMT dapat mencapai latensi hingga 20x lebih cepat daripada Gemini 2.0 Flash.

Keunggulan & pembeda utama LLM Terjemahan

  • Kualitas Terjemahan yang Tak Tertandingi - Translation LLM menawarkan kualitas terjemahan tertinggi yang mencapai performa yang jauh lebih tinggi pada benchmark dibandingkan dengan model lain yang diukur. LLM Terjemahan jauh lebih mungkin untuk menulis ulang kalimat secara signifikan agar terdengar lebih alami dalam bahasa target, daripada memberikan terjemahan "kata demi kata" yang kurang alami yang sering terlihat dalam model terjemahan lainnya.
  • Kompromi Kualitas/Latensi yang Lebih Baik - LLM Terjemahan memberikan terjemahan yang didukung LLM dengan latensi yang jauh lebih baik daripada Gemini 2.0 Flash. Meskipun LLM Terjemahan memiliki latensi yang lebih tinggi daripada model NMT, model ini biasanya memberikan respons berkualitas lebih tinggi untuk berbagai aplikasi.

Perbandingan fitur model

Fitur LLM Terjemahan (Didukung oleh Gemini) Model NMT
Deskripsi Model Bahasa Besar (LLM) khusus terjemahan yang didukung oleh Gemini, yang disesuaikan untuk terjemahan. Tersedia dengan AI Generatif di Vertex AI dan Cloud Translation - Advanced API. Model Terjemahan Mesin Neural Google, yang tersedia melalui Cloud Translation - Advanced dan Cloud Translation - Basic API . Dioptimalkan untuk kesederhanaan dan skala.
Kualitas Terjemahan berkualitas tertinggi. Kualitasnya lebih baik daripada NMT, Gemini 2.0 Flash, dan Gemini 2.5 Pro Experimental. Lebih cenderung menulis ulang kalimat untuk alur yang alami. Menunjukkan pengurangan error yang signifikan. Kualitas sedang hingga tinggi, bergantung pada pasangan bahasa. Salah satu model NMT real-time berperforma terbaik untuk banyak kombinasi domain bahasa.
Latensi Latensi jauh lebih baik daripada Gemini 2.0 Flash, tetapi masih lebih lambat daripada NMT. Terjemahan Real-Time Tercepat. Latensi rendah, cocok untuk aplikasi chat dan real-time. Mencapai latensi hingga 20x lebih cepat daripada Gemini 2.0 Flash
Dukungan bahasa Mendukung 19 bahasa. Daftar bahasa mencakup Arab, China, Ceko, Belanda, Inggris, Prancis, Jerman, Hindi, Indonesia, Italia, Jepang, Korea, Polandia, Portugis, Rusia, Spanyol,Thai, Turkiye, Ukraina, dan Vietnam. Ekspansi bahasa yang signifikan akan hadir pada April 2025. Mendukung 189 bahasa, termasuk Kanton, Fiji, dan Bali. Terjemahan dari bahasa apa pun ke bahasa lain dalam daftar yang didukung dapat dilakukan.
Penyesuaian Dukungan untuk - Glosarium Lanjutan, Penyesuaian yang Diawasi di Vertex AI untuk adaptasi khusus domain/pelanggan, Terjemahan adaptif untuk penyesuaian gaya real-time dengan beberapa contoh. Dukungan untuk - Glosarium guna mengontrol terminologi, dan melatih Model Kustom dengan AutoML Translation di Cloud Translation - Advanced API.
Fitur terjemahan Terjemahan HTML Terjemahan dokumen HTML, Batch, dan Berformat
Integrasi API Cloud Translation - Advanced API, Vertex AI API Cloud Translation - Basic API, Cloud Translation - Advanced API, Vertex AI API

Penggunaan

Bagian ini menunjukkan cara menggunakan Vertex AI Studio untuk menerjemahkan teks dari satu bahasa ke bahasa lain dengan cepat. Anda dapat menggunakan LLM Terjemahan, Gemini, atau model NMT untuk menerjemahkan teks menggunakan konsol atau API Google Cloud. Perhatikan bahwa bahasa yang didukung setiap model dapat bervariasi. Sebelum meminta terjemahan, pastikan model yang Anda gunakan mendukung bahasa sumber dan target Anda.

Konsol

  1. Di bagian Vertex AI pada konsol Google Cloud, buka halaman Translate text di Vertex AI Studio.

    Buka Vertex AI Studio

  2. Di panel Run settings, pilih model terjemahan di kolom Model.

  3. Untuk mengubah setelan model (seperti suhu), luaskan Lanjutan.

  4. Tetapkan bahasa sumber dan target.

  5. Di kolom input, masukkan teks yang ingin diterjemahkan.

  6. Klik Kirim.

  7. Untuk mendapatkan kode atau perintah curl yang menunjukkan cara meminta terjemahan, klik Dapatkan kode.

Perhatikan bahwa di Vertex AI Studio, LLM Terjemahan memungkinkan Anda memberikan contoh terjemahan untuk menyesuaikan respons model agar lebih cocok dengan gaya, nuansa, dan domain industri Anda. Model ini menggunakan contoh Anda sebagai konteks sedikit sebelum menerjemahkan teks.

API

Pilih model yang akan digunakan untuk terjemahan Anda.

LLM Terjemahan

Menggunakan Vertex AI API dan LLM Terjemahan untuk menerjemahkan teks.

REST

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_NUMBER_OR_ID: ID numerik atau alfanumerik untuk project Google Cloud Anda
  • LOCATION: Lokasi tempat Anda ingin menjalankan operasi ini. Contoh, us-central1.
  • SOURCE_LANGUAGE_CODE: Kode bahasa teks input. Tetapkan ke salah satu kode bahasa yang tercantum di terjemahan adaptif.
  • TARGET_LANGUAGE_CODE: Bahasa target untuk menerjemahkan teks input. Tetapkan ke salah satu kode bahasa yang tercantum di terjemahan adaptif.
  • SOURCE_TEXT: Teks dalam bahasa sumber yang akan diterjemahkan.
  • MIME_TYPE (Opsional): Format teks sumber, seperti text/html atau text/plain. Secara default, jenis MIME disetel ke text/plain.

Metode HTTP dan URL:

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

Meminta isi JSON:

{
  "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"
    }
  ]
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan menerima respons JSON yang mirip dengan yang berikut ini:

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

Node.js

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di panduan memulai Vertex AI menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Node.js Vertex AI.

Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.

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

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di Panduan memulai Vertex AI menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Python Vertex AI.

Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.

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

Gunakan Vertex AI API dan Gemini untuk menerjemahkan teks.

Anda dapat menyesuaikan respons Gemini lebih lanjut melalui perintah terbuka dan rekayasa perintah.

REST

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_NUMBER_OR_ID: ID numerik atau alfanumerik untuk project Google Cloud Anda.
  • LOCATION: Lokasi untuk memproses permintaan. Opsi yang tersedia mencakup hal berikut:

    Klik untuk meluaskan sebagian daftar region yang tersedia

    • us-central1
    • us-west4
    • northamerica-northeast1
    • us-east4
    • us-west1
    • asia-northeast3
    • asia-southeast1
    • asia-northeast1
  • MODEL_ID: ID model, seperti gemini-1.0-pro-002
  • SOURCE_LANGUAGE_CODE: Bahasa teks input.
  • TARGET_LANGUAGE_CODE: Bahasa target untuk menerjemahkan teks input.
  • SOURCE_TEXT: Teks untuk diterjemahkan.
  • TEMPERATURE: Suhu digunakan untuk pengambilan sampel selama pembuatan respons, yang terjadi saat topP dan topK diterapkan. Suhu mengontrol tingkat keacakan dalam pemilihan token. Suhu yang lebih rendah cocok untuk perintah yang memerlukan respons yang kurang terbuka atau kreatif, sedangkan suhu yang lebih tinggi dapat memberikan hasil yang lebih beragam atau kreatif. Suhu 0 berarti token probabilitas tertinggi selalu dipilih. Dalam hal ini, respons untuk permintaan tertentu sebagian besar deterministik, tetapi sedikit variasi masih dapat dilakukan.

    Jika model menampilkan respons yang terlalu umum, terlalu pendek, atau model memberikan respons pengganti, coba tingkatkan suhunya.

  • TOP_P: Top-P mengubah cara model memilih token untuk output. Token dipilih dari yang paling mungkin (lihat top-K) hingga yang paling tidak mungkin sampai jumlah probabilitasnya sama dengan nilai top-P. Misalnya, jika token A, B, dan C memiliki probabilitas 0,3, 0,2, dan 0,1 dengan nilai top-P adalah 0.5, model akan memilih A atau B sebagai token berikutnya dengan menggunakan suhu dan mengecualikan C sebagai kandidat.

    Tentukan nilai yang lebih rendah untuk respons acak yang lebih sedikit dan nilai yang lebih tinggi untuk respons acak yang lebih banyak.

  • TOP_K: Top-K mengubah cara model memilih token untuk output. Top-K dari 1 berarti token yang dipilih berikutnya adalah yang paling mungkin di antara semua token dalam kosakata model (juga disebut decoding greedy), sedangkan nilai top-K dari 3 berarti token berikutnya dipilih di antara tiga token yang paling mungkin menggunakan suhu.

    Untuk setiap langkah pemilihan token, token top-K dengan probabilitas tertinggi akan diambil sampelnya. Kemudian token akan difilter lebih lanjut berdasarkan top-P dengan token akhir yang dipilih menggunakan pengambilan sampel suhu.

    Tentukan nilai yang lebih rendah untuk respons acak yang lebih sedikit dan nilai yang lebih tinggi untuk respons acak yang lebih banyak.

  • MAX_OUTPUT_TOKENS: Jumlah maksimum token yang dapat dibuat dalam respons. Token terdiri dari sekitar empat karakter. 100 token setara dengan sekitar 60-80 kata.

    Tentukan nilai yang lebih rendah untuk respons yang lebih singkat dan nilai yang lebih tinggi untuk respons yang berpotensi lebih panjang.

  • SAFETY_CATEGORY: Kategori keamanan untuk mengonfigurasi nilai minimum. Nilai yang dapat diterima mencakup hal berikut:

    Klik untuk meluaskan kategori keamanan

    • HARM_CATEGORY_SEXUALLY_EXPLICIT
    • HARM_CATEGORY_HATE_SPEECH
    • HARM_CATEGORY_HARASSMENT
    • HARM_CATEGORY_DANGEROUS_CONTENT
  • THRESHOLD: Batas untuk memblokir respons yang mungkin termasuk dalam kategori keamanan yang ditentukan berdasarkan probabilitas. Nilai yang dapat diterima mencakup hal berikut:

    Klik untuk meluaskan nilai minimum pemblokiran

    • BLOCK_NONE
    • BLOCK_ONLY_HIGH
    • BLOCK_MEDIUM_AND_ABOVE (default)
    • BLOCK_LOW_AND_ABOVE
    BLOCK_LOW_AND_ABOVE memblokir paling banyak, sedangkan BLOCK_ONLY_HIGH memblokir paling sedikit.

Metode HTTP dan URL:

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

Meminta isi JSON:

{
  "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"
    }
  ]
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan menerima kode status yang menandakan proses berhasil (2xx), dan sebuah respons kosong.

Node.js

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di Panduan memulai Vertex AI menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Node.js Vertex AI.

Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.

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

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di Panduan memulai Vertex AI menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Python Vertex AI.

Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.

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

Gunakan Cloud Translation API dan model NMT untuk menerjemahkan teks.

REST

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_NUMBER_OR_ID: ID numerik atau alfanumerik untuk project Google Cloud Anda.
  • SOURCE_LANGUAGE: (Opsional) Kode bahasa teks input. Untuk kode bahasa yang didukung, lihat Dukungan bahasa.
  • TARGET_LANGUAGE: Bahasa target untuk menerjemahkan teks input. Tetapkan ke salah satu kode bahasa yang didukung.
  • SOURCE_TEXT: Teks untuk diterjemahkan.

Metode HTTP dan URL:

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

Meminta isi JSON:

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

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan menerima respons JSON yang mirip dengan yang berikut ini:

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

Node.js

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di panduan memulai Vertex AI menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Node.js Vertex AI.

Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.

/**
 * 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() {
  // Construct request
  const request = {
    parent: `projects/${projectId}/locations/${location}`,
    contents: [text],
    mimeType: 'text/plain', // mime types: text/plain, text/html
    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

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di Panduan memulai Vertex AI menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Python Vertex AI.

Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.

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

Terjemahan kustom

Sesuaikan respons dari Translation LLM dengan memberikan contoh terjemahan Anda sendiri. Terjemahan kustom hanya berfungsi dengan LLM Terjemahan.

Anda dapat meminta terjemahan yang disesuaikan melalui konsol atau API Vertex AI Studio dengan satu perbedaan. Konsol hanya mendukung terjemahan kustom saat Anda memberikan contoh dalam file TMX atau TSV. API ini hanya mendukung terjemahan kustom jika Anda memberikan contoh (maksimal 5 pasangan kalimat) secara inline sebagai bagian dari permintaan terjemahan.

Persyaratan data

Jika Anda memberikan contoh terjemahan dalam file untuk konsol Google Cloud, contoh harus ditulis sebagai pasangan segmen dalam file TMX atau TSV. Setiap pasangan menyertakan segmen bahasa sumber dan terjemahan yang sesuai. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan contoh terjemahan dalam dokumentasi Cloud Translation.

Untuk mendapatkan hasil yang paling akurat, sertakan contoh spesifik dari berbagai skenario. Anda harus menyertakan minimal lima pasangan kalimat,tetapi tidak lebih dari 10.000 pasangan. Selain itu, pasangan segmen dapat berisi maksimal 512 karakter.

Konsol

  1. Di bagian Vertex AI pada konsol Google Cloud, buka halaman Translate text di Vertex AI Studio.

    Buka Vertex AI Studio

  2. Di panel Run settings, konfigurasikan setelan terjemahan Anda.

    1. Di kolom Model, pilih Translation LLM.
    2. Untuk mengubah suhu, luaskan Lanjutan.
  3. Klik Tambahkan contoh.

    1. Pilih file lokal atau file dari Cloud Storage. Vertex AI Studio menentukan bahasa sumber dan target dari file Anda.
    2. Pilih jumlah contoh yang akan digunakan model sebelum membuat respons.

    Jumlah contoh yang Anda pilih akan mengurangi batas karakter input per permintaan sebesar 3.000.

  4. Di kolom input, masukkan teks yang ingin diterjemahkan.

  5. Klik Kirim.

    Vertex AI akan otomatis memilih jumlah kalimat referensi yang Anda tentukan yang paling mirip dengan input Anda. Model terjemahan mengidentifikasi pola dari contoh Anda, lalu menerapkan pola tersebut saat membuat respons.

    Batas output per permintaan adalah 3.000 karakter. Teks apa pun yang melebihi batas ini akan dihapus.

  6. Untuk mendapatkan kode atau perintah curl yang menunjukkan cara meminta terjemahan, klik Get code.

API

Untuk meminta terjemahan kustom, sertakan hingga lima pasangan kalimat referensi dalam permintaan terjemahan Anda. Model terjemahan menggunakan semuanya untuk mengidentifikasi pola dari contoh Anda, lalu menerapkan pola tersebut saat membuat respons.

REST

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_NUMBER_OR_ID: ID numerik atau alfanumerik untuk project Google Cloud Anda
  • LOCATION: Lokasi tempat Anda ingin menjalankan operasi ini. Contoh, us-central1.
  • REFERENCE_SOURCE: Kalimat dalam bahasa sumber yang merupakan bagian dari pasangan kalimat referensi.
  • REFERENCE_TARGET: Kalimat dalam bahasa target yang merupakan bagian dari pasangan kalimat referensi.
  • SOURCE_LANGUAGE: Kode bahasa teks input.
  • TARGET_LANGUAGE: Bahasa target untuk menerjemahkan teks input.
  • SOURCE_TEXT: Teks dalam bahasa sumber yang akan diterjemahkan.
  • MIME_TYPE (Opsional): Format teks sumber, seperti text/html atau text/plain. Secara default, jenis MIME disetel ke text/plain.

Metode HTTP dan URL:

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

Meminta isi JSON:

{
  "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"
    }
  ]
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan menerima respons JSON yang mirip dengan yang berikut ini:

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

Node.js

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di panduan memulai Vertex AI menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Node.js Vertex AI.

Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.

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

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di Panduan memulai Vertex AI menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Python Vertex AI.

Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.

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'])
  

Anda juga dapat menggunakan Cloud Translation API untuk membuat set data dan mengimpor contoh pasangan kalimat. Saat menggunakan Cloud Translation API untuk meminta terjemahan, Anda dapat menyertakan set data untuk menyesuaikan respons. Set data akan tetap ada dan dapat digunakan kembali dengan beberapa permintaan terjemahan. Untuk mengetahui informasi selengkapnya, lihat Meminta terjemahan adaptif dalam dokumentasi Cloud Translation.

Bahasa yang didukung

LLM Terjemahan

Dengan LLM Terjemahan, Anda dapat menerjemahkan ke dan dari salah satu bahasa berikut.

Nama bahasa Kode bahasa
Arab ar
China zh-CN
Ceko cs
Belanda nl
Inggris en
Prancis fr
Jerman de
Hindi hi
Indonesia id
Italia it
Jepang ja
Korean ko
Polandia pl
Portugis pt
Rusia ru
Spanyol es
Thai th
Turki tr
Ukraina uk
Vietnam vi

Gemini dan NMT

Untuk mengetahui informasi tentang bahasa yang didukung oleh model Gemini dan model NMT Cloud Translation, lihat dokumentasi berikut: