Layanan Vertex AI Translation memungkinkan Anda menerjemahkan teks yang ditulis dalam satu bahasa ke bahasa lain yang didukung.
Halaman ini menunjukkan cara menerjemahkan teks sampel menggunakan Vertex AI Translation API di Google Distributed Cloud (GDC) yang terisolasi.
Sebelum memulai
Sebelum dapat mulai menggunakan Vertex AI Translation API, Anda harus memiliki project dengan Vertex AI Translation API yang diaktifkan, dan Anda harus memiliki kredensial yang sesuai. Anda juga dapat menginstal library klien untuk membantu Anda melakukan panggilan ke API. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan project terjemahan.
Menerjemahkan teks
Metode translateText mengambil teks input dalam bahasa tertentu dan menampilkan
teks yang diterjemahkan ke dalam bahasa lain. Anda dapat memasukkan teks biasa atau HTML sebagai
input.
Jika Anda memasukkan teks HTML, metode translateText hanya menerjemahkan teks
di antara tag HTML tanpa menerjemahkan tag. Namun, atribut dalam tag HTML5, seperti atribut alt, akan diterjemahkan. Contoh penggunaan tag dan atribut HTML5 digunakan dalam sintaksis untuk mengecualikan teks dari terjemahan.
Output-nya mempertahankan tag HTML yang tidak diterjemahkan dan menyertakan teks terjemahan di antaranya.
Buat permintaan curl ke Vertex AI Translation API yang telah dilatih sebelumnya. Atau, berinteraksi dengan API terlatih Vertex AI Translation dari
skrip Python untuk menerjemahkan teks dari satu bahasa ke bahasa lain.
Contoh berikut menunjukkan cara menerjemahkan teks input dari satu bahasa ke bahasa lain:
curl
Ikuti langkah-langkah berikut untuk membuat permintaan curl:
Buat permintaan:
curl -vv -X POST -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID:translateText -d '{"parent": "projects/PROJECT_ID", "source_language_code": "SOURCE_LANGUAGE", "target_language_code": "TARGET_LANGUAGE", "contents": ["INPUT_TEXT"]}'
Ganti kode berikut:
TOKEN: token autentikasi yang Anda peroleh.ENDPOINT: endpoint Vertex AI Translation yang Anda gunakan untuk organisasi Anda. Untuk mengetahui informasi selengkapnya, lihat status dan endpoint layanan.PROJECT_ID: project ID Anda.SOURCE_LANGUAGE: kode bahasa teks input Anda. Lihat daftar bahasa yang didukung dan kode bahasanya masing-masing.TARGET_LANGUAGE: kode bahasa yang Anda inginkan untuk menerjemahkan teks. Lihat daftar bahasa yang didukung dan kode bahasanya masing-masing.INPUT_TEXT: teks input Anda dalam bahasa sumber.
Gunakan kolom mime_type untuk menentukan jenis file. Tetapkan kolom mime_type
ke salah satu nilai berikut:
text/plain: input Anda adalah teks biasa.text/html: input Anda adalah teks HTML.
Jika kolom mime_type kosong, text/html adalah nilai defaultnya.
Contoh berikut menggunakan kolom mime_type:
curl -vv -X POST -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID:translateText -d '{"mime_type": "text/html", "parent": "projects/PROJECT_ID", "source_language_code": "SOURCE_LANGUAGE", "target_language_code": "TARGET_LANGUAGE", "contents": ["INPUT_TEXT"]}'
Output menampilkan teks yang diterjemahkan.
Python
Ikuti langkah-langkah berikut untuk menggunakan layanan Vertex AI Translation dari skrip Python:
Tetapkan variabel lingkungan yang diperlukan pada skrip Python.
Tambahkan kode berikut ke skrip Python yang Anda buat:
from google.cloud import translate import google.auth from google.auth.transport import requests from google.api_core.client_options import ClientOptions audience = "https://ENDPOINT:443" api_endpoint="ENDPOINT:443" def translate_client(creds): opts = ClientOptions(api_endpoint=api_endpoint) return translate.TranslationServiceClient(credentials=creds, client_options=opts) def main(): creds = None try: creds, project_id = google.auth.default() creds = creds.with_gdch_audience(audience) req = requests.Request() creds.refresh(req) print("Got token: ") print(creds.token) except Exception as e: print("Caught exception" + str(e)) raise e return creds def translate_func(creds): tc = translate_client(creds) req = { "parent": "projects/PROJECT_ID", "source_language_code": "SOURCE_LANGUAGE", "target_language_code": "TARGET_LANGUAGE", "mime_type": "text/plain", "contents": ["INPUT_TEXT"] } resp = tc.translate_text(req) print(resp) if __name__=="__main__": creds = main() translate_func(creds)Ganti kode berikut:
ENDPOINT: endpoint Vertex AI Translation yang Anda gunakan untuk organisasi Anda. Untuk mengetahui informasi selengkapnya, lihat status dan endpoint layanan.PROJECT_ID: project ID Anda.SOURCE_LANGUAGE: kode bahasa teks input Anda. Lihat daftar bahasa yang didukung dan kode bahasanya masing-masing.TARGET_LANGUAGE: kode bahasa yang Anda inginkan untuk menerjemahkan teks. Lihat daftar bahasa yang didukung dan kode bahasanya masing-masing.INPUT_TEXT: teks input Anda dalam bahasa sumber.
Gunakan kolom
mime_typeuntuk menentukan jenis file. Tetapkan kolommime_typeke salah satu nilai berikut:text/plain: input Anda adalah teks biasa.text/html: input Anda adalah teks HTML.
Jika kolom
mime_typekosong,text/htmladalah nilai defaultnya.Simpan skrip Python.
Jalankan skrip Python untuk menerjemahkan teks:
python SCRIPT_NAMEGanti
SCRIPT_NAMEdengan nama yang Anda berikan ke skrip Python, sepertitranslation.py.
Untuk mengetahui informasi selengkapnya tentang metode translateText, lihat library klien Python.
Mengecualikan teks dari terjemahan
Gunakan salah satu tag HTML berikut di kolom contents permintaan untuk mengecualikan bagian teks Anda dari terjemahan:
<span translate="no">"TEXT"</span><span class="notranslate">"TEXT"</span>
Ganti TEXT dengan bagian teks yang ingin Anda kecualikan
dari terjemahan.
Misalnya, jika Anda memiliki teks input berikut dalam bahasa Spanyol:
Hola, esto es una prueba.
Kemudian, teks tersebut diterjemahkan ke dalam bahasa Inggris menjadi kalimat berikut:
Hello, this is a test.
Misalkan Anda hanya ingin menerjemahkan bagian teks berikut, tidak termasuk
Hola, dari teks input:
esto es una prueba.
Bagian teks tersebut diterjemahkan dalam bahasa Inggris menjadi kalimat berikut:
this is a test.
Gunakan tag HTML untuk mengecualikan teks dari terjemahan. Misalnya, permintaan curl berikut menggunakan tag <span class="notranslate">"TEXT"</span>
untuk mengecualikan Hola, dari teks input sebelumnya dalam bahasa Spanyol saat menerjemahkan
teks ke dalam bahasa Inggris:
curl -vv -X POST -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID:translateText -d '{"parent": "projects/PROJECT_ID", "source_language_code": "es", "target_language_code": "en", "contents": ["<span class=\"notranslate\">\"Hola,\"</span>\"esto es una prueba.\""]}'
Menerjemahkan dengan glosarium
Untuk menerjemahkan teks dengan kata-kata dari glosarium, Anda harus membuat glosarium:
Simpan file
request_glossary.jsonberikut:cat <<- EOF > request_glossary.json { "sourceLanguageCode": "SOURCE_LANGUAGE", "targetLanguageCode": "SOURCE_LANGUAGE", "contents": "TEXT", "glossaryConfig": { "glossary": "projects/PROJECT_ID/glossaries/GLOSSARY_ID", "ignoreCase": IGNORE_CASE_BOOLEAN, "contextual_translation_enabled": CONTEXTUAL_BOOLEAN } } EOFGanti kode berikut:
PROJECT_ID: project ID Anda.SOURCE_LANGUAGE: bahasa yang digunakan dalam dokumen Anda. Lihat daftar bahasa yang didukung dan kode bahasanya masing-masing.TARGET_LANGUAGE: bahasa yang Anda inginkan untuk menerjemahkan dokumen Anda. Lihat daftar bahasa yang didukung dan kode bahasanya masing-masing.TEXT: menerjemahkan teks yang menyertakan kata-kata glosariumGLOSSARY_ID: ID glosarium, contoh:G11111111114524
Buat permintaan:
curl -vv -X POST -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID:translateText -d @request_glossary.json
Contoh dan output yang diharapkan:
Permintaan:
{
"sourceLanguageCode": "es",
"targetLanguageCode": "en",
"contents": "La novela cuenta la historia de una joven que viaja a Madrid",
"glossaryConfig": {
"glossary": "projects/test-project/glossaries/GLOSSARY_ID",
"ignoreCase": true,
"contextual_translation_enabled": true
}
}
Respons:
{"translations":[
{
"translatedText":"The novel tells the story of a young woman who travels to Madrid"}],
"glossaryTranslations":[{"translatedText":"The novel account the story of a young woman who travels to Madrid",
"glossaryConfig":
{
"glossary":"projects/test-project/glossaries/GLOSSARY_ID"
}}
]}
Kolom translations berisi terjemahan mesin reguler sebelum glosarium diterapkan;
kolom glossaryTranslations berisi terjemahan setelah glosarium diterapkan.
Jika Anda menyetel kolom contextual_translation_enabled ke true, respons hanya akan berisi kolom glossaryTranslations, bukan kolom translations.
Deteksi bahasa
Metode detectLanguage menampilkan bahasa string teks dengan mengirimkan permintaan HTTP.
Misalnya, permintaan berikut mendeteksi bahasa Inggris sebagai bahasa dari
teks input Hello, this is a test:
curl
curl -vv -X POST -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID:detectLanguage -d '{"parent": "projects/PROJECT_ID", "content": "Hello, this is a test"}'
Mendapatkan operasi
Metode getOperation menampilkan status terbaru dari
operasi yang berjalan lama.
Gunakan metode ini untuk mengambil hasil operasi yang dihasilkan oleh layanan Vertex AI Translation API. Untuk menggunakan metode ini, tentukan
project ID dan endpoint Vertex AI Translation.
Misalnya, permintaan berikut menampilkan status operasi yang berjalan lama, seperti membuat glosarium, yang berjalan di project Anda:
curl
curl -vv -X GET -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID/operations/PROJECT_ID
Mencantumkan operasi
Metode listOperations menampilkan daftar operasi yang berjalan lama
yang cocok dengan filter yang ditentukan dalam permintaan. Untuk menggunakan metode ini, tentukan
project ID dan endpoint Vertex AI Translation.
Misalnya, permintaan berikut menampilkan daftar operasi yang berjalan di project Anda dan membatasi ukuran halaman hingga sepuluh hasil per halaman:
curl
curl -vv -X GET -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID/operations?page_size=10
Mendapatkan bahasa yang didukung
Metode supportedLanguages menampilkan daftar bahasa yang didukung oleh
Vertex AI Translation API.
Misalnya, permintaan berikut menampilkan bahasa yang didukung dengan menentukan endpoint Vertex AI Translation:
curl
curl -vv -X GET -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID/locations/PROJECT_ID/supportedLanguages
Untuk mengetahui daftar lengkap bahasa yang didukung, lihat Bahasa yang didukung untuk Vertex AI Translation.