Anda dapat menggunakan glosarium untuk menentukan terminologi khusus domain Anda. Dengan glosarium, Anda dapat menambahkan pasangan istilah, termasuk istilah bahasa sumber dan target. Pasangan istilah memastikan bahwa layanan Vertex AI Translation menerjemahkan terminologi Anda secara konsisten.
Berikut adalah contoh kasus saat Anda dapat menentukan entri glosarium:
- Nama produk: Mengidentifikasi nama produk agar tetap ada dalam terjemahan. Misalnya, Google Home harus diterjemahkan menjadi Google Home.
- Kata ambigu: Tentukan arti kata-kata yang tidak jelas dan homonim. Misalnya, bat dapat berarti peralatan olahraga atau hewan.
- Kata pinjaman: Memperjelas arti kata yang diadopsi dari bahasa lain. Misalnya, bouillabaisse dalam bahasa Prancis diterjemahkan menjadi bouillabaisse dalam bahasa Inggris, yaitu hidangan sup ikan.
Istilah dalam glosarium dapat berupa satu kata (juga disebut sebagai token) atau frasa pendek, biasanya kurang dari lima kata. Vertex AI Translation mengabaikan entri glosarium yang cocok jika kata-katanya adalah stopwords.
Vertex AI Translation menawarkan metode glosarium berikut yang tersedia di Google Distributed Cloud (GDC) dengan air gap:
Metode | Deskripsi |
---|---|
CreateGlossary |
Buat daftar istilah. |
GetGlossary |
Menampilkan glosarium tersimpan. |
ListGlossaries |
Menampilkan daftar ID glosarium dalam sebuah project. |
DeleteGlossary |
Hapus glosarium yang tidak lagi Anda perlukan. |
Sebelum memulai
Sebelum membuat glosarium untuk menentukan terminologi Anda untuk terjemahan, Anda harus memiliki project bernama translation-glossary-project
. Resource kustom project harus terlihat seperti contoh berikut:
apiVersion: resourcemanager.gdc.goog/v1
kind: Project
metadata:
labels:
atat.config.google.com/clin-number: CLIN_NUMBER
atat.config.google.com/task-order-number: TASK_ORDER_NUMBER
name: translation-glossary-project
namespace: platform
Untuk mendapatkan izin yang Anda perlukan untuk menggunakan glosarium, minta Admin IAM Project Anda untuk memberi Anda peran berikut di namespace project Anda:
- Developer Terjemahan AI: Dapatkan peran
Developer Terjemahan AI (
ai-translation-developer
) untuk mengakses layanan Vertex AI Translation. - Project Bucket Admin: Dapatkan peran Project Bucket Admin (
project-bucket-admin
) untuk mengelola bucket dan objek penyimpanan dalam bucket, yang memungkinkan Anda membuat dan mengupload file.
Untuk mengetahui informasi selengkapnya tentang prasyarat, lihat Menyiapkan project terjemahan.
Membuat file glosarium
Anda harus membuat file glosarium untuk menyimpan istilah bahasa sumber dan bahasa target. Bagian ini berisi dua tata letak glosarium berbeda yang dapat Anda gunakan untuk menentukan istilah.
Tabel berikut menjelaskan batas yang didukung di Distributed Cloud untuk file glosarium:
Deskripsi | Batas |
---|---|
Ukuran file maksimal | 10,4 juta (10.485.760) byte UTF-8 |
Panjang maksimum istilah glosarium | 1.024 byte UTF-8 |
Jumlah maksimum resource glosarium untuk project | 10.000 |
Pilih salah satu tata letak berikut untuk file glosarium Anda:
- Glosarium searah: Tentukan terjemahan yang diharapkan untuk pasangan istilah sumber dan target dalam bahasa tertentu. Glosarium satu arah mendukung format file TSV, CSV, dan TMX.
- Glosarium kumpulan padanan istilah: Tentukan terjemahan yang diharapkan dalam beberapa bahasa di setiap baris. Glosarium kumpulan padanan istilah mendukung format file CSV.
Glosarium searah
Vertex AI Translation API menerima nilai yang dipisahkan tab (TSV) dan
nilai yang dipisahkan koma (CSV). Setiap baris berisi pasangan istilah yang dipisahkan oleh
tab (\t
) atau koma (,
) untuk format file ini.
Vertex AI Translation API juga menerima format Translation Memory eXchange (TMX), format XML standar untuk menyediakan pasangan istilah sumber dan target terjemahan. File input yang didukung memiliki format berdasarkan TMX versi 1.4.
Contoh berikut menunjukkan struktur yang diperlukan untuk format file TSV, CSV, dan TMX glosarium satu arah:
TSV dan CSV
Gambar berikut menunjukkan dua kolom dalam file TSV atau CSV. Kolom pertama berisi istilah bahasa sumber, dan kolom kedua berisi istilah bahasa target.
Saat membuat file glosarium, Anda dapat menentukan baris header. Permintaan glosarium membuat file tersedia untuk Vertex AI Translation API.
TMX
Contoh berikut mengilustrasikan struktur yang diperlukan dalam file TMX:
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE tmx SYSTEM "tmx14.dtd">
<tmx version="1.4">
<header segtype="sentence" o-tmf="UTF-8" adminlang="en" srclang="en" datatype="PlainText"/>
<body>
<tu>
<tuv xml:lang="en">
<seg>account</seg>
</tuv>
<tuv xml:lang="es">
<seg>cuenta</seg>
</tuv>
</tu>
<tu>
<tuv xml:lang="en">
<seg>directions</seg>
</tuv>
<tuv xml:lang="es">
<seg>indicaciones</seg>
</tuv>
</tu>
</body>
</tmx>
Jika file Anda berisi tag XML yang tidak ditampilkan dalam contoh ini, Vertex AI Translation API akan mengabaikan tag tersebut.
Sertakan elemen berikut dalam file TMX Anda untuk memastikan pemrosesan berhasil oleh Vertex AI Translation API:
<header>
: Identifikasi bahasa sumber menggunakan atributsrclang
.<tu>
: Sertakan sepasang elemen<tuv>
dengan bahasa sumber dan target yang sama. Elemen<tuv>
ini mematuhi hal berikut:- Setiap elemen
<tuv>
mengidentifikasi bahasa teks yang dimuat menggunakan atributxml:lang
. Gunakan kode ISO-639-1 untuk mengidentifikasi bahasa sumber dan target. Lihat daftar bahasa yang didukung dan kode bahasanya masing-masing. - Jika elemen
<tu>
berisi lebih dari dua elemen<tuv>
, Vertex AI Translation API hanya akan memproses elemen<tuv>
pertama yang cocok dengan bahasa sumber dan elemen<tuv>
pertama yang cocok dengan bahasa target. Layanan mengabaikan elemen<tuv>
lainnya. - Jika elemen
<tu>
tidak memiliki pasangan elemen<tuv>
yang cocok, Vertex AI Translation API akan mengabaikan elemen<tu>
yang tidak valid.
- Setiap elemen
<seg>
: Merepresentasikan string teks umum. Vertex AI Translation API mengecualikan tag markup dari elemen<seg>
sebelum memproses file. Jika elemen<tuv>
berisi lebih dari satu elemen<seg>
, Vertex AI Translation API akan menggabungkan teksnya menjadi satu elemen yang dipisahkan dengan spasi.
Setelah mengidentifikasi istilah glosarium dalam glosarium satu arah, upload file ke bucket penyimpanan dan sediakan untuk Vertex AI Translation API dengan membuat dan mengimpor glosarium.
Glosarium kumpulan padanan istilah
Vertex AI Translation API menerima file glosarium untuk kumpulan padanan istilah menggunakan format CSV. Untuk menentukan kumpulan padanan istilah, buat file CSV multi-kolom yang setiap barisnya mencantumkan satu istilah glosarium dalam beberapa bahasa. Lihat daftar bahasa yang didukung dan kode bahasanya masing-masing.
Gambar berikut menunjukkan contoh file CSV multi-kolom. Setiap baris mewakili istilah glosarium, dan setiap kolom mewakili terjemahan istilah ke dalam bahasa yang berbeda.
Header adalah baris pertama dalam file, yang mengidentifikasi bahasa untuk setiap
kolom. Baris header menggunakan kode bahasa standar ISO-639-1 atau BCP-47. Vertex AI Translation API tidak menggunakan informasi part-of-speech (pos
), dan nilai posisi tertentu tidak divalidasi.
Setiap baris berikutnya berisi padanan istilah glosarium dalam bahasa yang diidentifikasi di header. Anda dapat mengosongkan kolom jika istilah tidak tersedia dalam semua bahasa.
Setelah mengidentifikasi istilah glosarium dalam kumpulan padanan istilah, upload file ke bucket penyimpanan dan sediakan untuk Vertex AI Translation API dengan membuat dan mengimpor glosarium.
Mengupload file glosarium ke bucket penyimpanan
Ikuti langkah-langkah berikut untuk mengupload file glosarium ke bucket penyimpanan:
- Konfigurasi gdcloud CLI untuk penyimpanan objek.
Buat bucket penyimpanan di namespace project Anda. Gunakan kelas penyimpanan
Standard
.Anda dapat membuat bucket penyimpanan dengan men-deploy resource
Bucket
di namespace project Anda:apiVersion: object.gdc.goog/v1 kind: Bucket metadata: name: glossary-bucket namespace: translation-glossary-project spec: description: bucket for translation glossary storageClass: Standard bucketPolicy: lockingPolicy: defaultObjectRetentionDays: 90
Berikan izin
read
pada bucket ke akun layanan (ai-translation-system-sa
) yang digunakan oleh layanan Vertex AI Translation.Anda dapat mengikuti langkah-langkah berikut untuk membuat peran dan binding peran menggunakan resource kustom:
Buat peran dengan men-deploy resource
Role
di namespace project:apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: name: ai-translation-glossary-reader namespace: translation-glossary-project rules: - apiGroups: - object.gdc.goog resources: - buckets verbs: - read-object
Buat binding peran dengan men-deploy resource
RoleBinding
di namespace project:apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: name: ai-translation-glossary-reader-rolebinding namespace: translation-glossary-project roleRef: apiGroup: rbac.authorization.k8s.io kind: Role name: ai-translation-glossary-reader subjects: - kind: ServiceAccount name: ai-translation-system-sa namespace: ai-translation-system
Upload file glosarium Anda ke bucket penyimpanan yang Anda buat. Untuk mengetahui informasi selengkapnya, lihat Mengupload dan mendownload objek penyimpanan dalam project.
Membuat glosarium
Metode CreateGlossary
membuat glosarium dan menampilkan ID ke
operasi yang berjalan lama yang
membuat glosarium.
Untuk membuat glosarium, ganti hal berikut sebelum menggunakan data permintaan:
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.GLOSSARY_ID
: ID glosarium Anda, yang merupakan nama resource Anda.BUCKET_NAME
: nama bucket penyimpanan tempat file glosarium Anda berada.GLOSSARY_FILENAME
: nama file glosarium Anda di bucket penyimpanan.
Berikut adalah sintaksis untuk permintaan HTTP guna membuat glosarium:
POST https://ENDPOINT/v3/projects/PROJECT_ID/glossaries
Menurut file glosarium yang Anda buat, pilih salah satu opsi berikut untuk membuat glosarium:
Unidirectional
Untuk membuat glosarium searah, tentukan pasangan bahasa
(language_pair
) dengan bahasa sumber (source_language_code
) dan
target bahasa (target_language_code
).
Ikuti langkah-langkah berikut untuk membuat glosarium satu arah:
Simpan isi permintaan berikut dalam file JSON bernama
request.json
:{ "name":"projects/PROJECT_ID/glossaries/GLOSSARY_ID, "language_pair": { "source_language_code": "SOURCE_LANGUAGE", "target_language_code": "TARGET_LANGUAGE" }, "{"input_config": { "s3_source": { "input_uri": "s3://BUCKET_NAME/GLOSSARY_FILENAME" } } }
Ganti kode berikut:
SOURCE_LANGUAGE
: kode bahasa sumber bahasa glosarium. Lihat daftar bahasa yang didukung dan kode bahasanya masing-masing.TARGET_LANGUAGE
: kode bahasa target glosarium. Lihat daftar bahasa yang didukung dan kode bahasanya masing-masing.
Buat permintaan. Contoh berikut menggunakan metode REST API dan command line, tetapi Anda juga dapat menggunakan library klien untuk membuat glosarium searah.
curl
curl -X POST \
-H "Authorization: Bearer TOKEN" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://ENDPOINT/v3/projects/PROJECT_ID/glossaries"
Ganti TOKEN
dengan
token autentikasi
yang Anda peroleh.
PowerShell
$cred = TOKEN
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest
-Method POST
-Headers $headers
-ContentType: "application/json; charset=utf-8"
-InFile request.json
-Uri "https://ENDPOINT/v3/projects/PROJECT_ID/glossaries"
| Select-Object -Expand Content
Ganti TOKEN
dengan
token autentikasi
yang Anda peroleh.
Anda harus menerima respons JSON yang mirip dengan yang berikut ini:
{
"name": "projects/PROJECT_ID/operations/operation-id",
"metadata": {
"@type": "type.googleapis.com/google.cloud.translation.v3.CreateGlossaryMetadata",
"name": "projects/PROJECT_ID/glossaries/GLOSSARY_ID",
"state": "RUNNING",
"submitTime": TIME
}
}
Kumpulan padanan istilah
Untuk membuat glosarium kumpulan padanan istilah, tentukan kumpulan bahasa
(language_codes_set
) dengan kode bahasa (language_codes
) dari
glosarium.
Ikuti langkah-langkah berikut untuk membuat glosarium kumpulan padanan istilah:
Simpan isi permintaan berikut dalam file JSON bernama
request.json
:{ "name":"projects/PROJECT_ID/glossaries/GLOSSARY_ID", "language_codes_set": { "language_codes": ["LANGUAGE_CODE_1", "LANGUAGE_CODE_2", "LANGUAGE_CODE_3", ... ] }, "input_config": { "s3_source": { "input_uri": "s3://BUCKET_NAME/GLOSSARY_FILENAME" } } }
Ganti
LANGUAGE_CODE
dengan kode bahasa atau bahasa glosarium. Lihat daftar bahasa yang didukung dan kode bahasanya masing-masing.Buat permintaan:
curl
curl -X POST \
-H "Authorization: Bearer TOKEN" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://ENDPOINT/v3/projects/PROJECT_ID/glossaries"
Ganti TOKEN
dengan
token autentikasi
yang Anda peroleh.
Anda harus menerima respons JSON yang mirip dengan yang berikut ini:
{
"name": "projects/PROJECT_ID/operations/GLOSSARY_ID,
"metadata": {
"@type": "type.googleapis.com/google.cloud.translation.v3.CreateGlossaryMetadata",
"name": "projects/PROJECT_ID/glossaries/GLOSSARY_ID",
"state": "RUNNING",
"submitTime": TIME
}
}
PowerShell
$cred = TOKEN
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://ENDPOINT/v3/projects/PROJECT_ID/glossaries"
| Select-Object -Expand Content
Ganti TOKEN
dengan
token autentikasi
yang Anda peroleh.
Anda harus menerima respons JSON yang mirip dengan yang berikut ini:
{
"name": "projects/PROJECT_ID/operations/GLOSSARY_ID",
"metadata": {
"@type": "type.googleapis.com/google.cloud.translation.v3.CreateGlossaryMetadata",
"name": "projects/PROJECT_ID/glossaries/GLOSSARY_ID",
"state": "RUNNING",
"submitTime": TIME
}
}
Python
Tetapkan variabel lingkungan yang diperlukan pada skrip Python.
Tambahkan kode berikut ke skrip Python yang Anda buat:
from google.cloud import translate_v3 as translate def create_glossary( project_id=PROJECT_ID, input_uri= "s3://BUCKET_NAME/GLOSSARY_FILENAME", glossary_id=GLOSSARY_ID, timeout=180, ): client = translate.TranslationServiceClient() # Supported language codes source_lang_code = "LANGUAGE_CODE_1" target_lang_code = "LANGUAGE_CODE_2", "LANGUAGE_CODE_3", ...
Simpan skrip Python.
Jalankan skrip Python:
python SCRIPT_NAME
Ganti SCRIPT_NAME
dengan nama yang Anda berikan ke skrip
Python, seperti glossary.py
.
Untuk mengetahui informasi selengkapnya tentang metode create_glossary
, lihat library klien Python.
Bergantung pada ukuran file glosarium, pembuatan glosarium biasanya memerlukan waktu kurang dari 10 menit. Anda dapat mengambil status operasi ini untuk mengetahui kapan operasi selesai.
Mendapatkan glosarium
Metode GetGlossary
menampilkan glosarium yang disimpan. Jika glosarium tidak ada, output akan menampilkan nilai NOT_FOUND
. Untuk memanggil metode GetGlossary
, tentukan project ID dan ID glosarium Anda. Metode
CreateGlossary
dan ListGlossaries
menampilkan ID glosarium.
Misalnya, permintaan berikut menampilkan informasi tentang glosarium tertentu dalam project Anda:
curl
curl -X GET \
-H "Authorization: Bearer TOKEN" \
"http://ENDPOINT/v3/projects/PROJECT_ID/glossaries/GLOSSARY_ID"
Ganti TOKEN
dengan
token autentikasi
yang Anda peroleh.
Python
from google.cloud import translate_v3 as translate
def get_glossary(project_id="PROJECT_ID", glossary_id="GLOSSARY_ID"):
"""Get a particular glossary based on the glossary ID."""
client = translate.TranslationServiceClient()
name = client.glossary_path(project_id, glossary_id)
response = client.get_glossary(name=name)
print(u"Glossary name: {}".format(response.name))
print(u"Input URI: {}".format(response.input_config.s3_source.input_uri))
Membuat daftar glosarium
Metode ListGlossaries
menampilkan daftar ID glosarium dalam project. Jika glosarium tidak ada, output akan menampilkan nilai NOT_FOUND
. Untuk memanggil metode
ListGlossaries
, tentukan project ID Anda dan
endpoint Vertex AI Translation.
Misalnya, permintaan berikut menampilkan daftar ID glosarium dalam project Anda:
curl -X GET \
-H "Authorization: Bearer TOKEN" \
"http://ENDPOINT/v3/projects/PROJECT_ID/glossaries?page_size=10"
Ganti TOKEN
dengan
token autentikasi
yang Anda peroleh.
Menghapus glosarium
Metode DeleteGlossary
menghapus glosarium. Jika glosarium tidak ada, output akan menampilkan nilai NOT_FOUND
. Untuk memanggil metode DeleteGlossary
,
tentukan project ID, ID glosarium, dan
endpoint Vertex AI Translation.
Metode
CreateGlossary
dan ListGlossaries
menampilkan ID glosarium.
Misalnya, permintaan berikut menghapus glosarium dari project Anda:
curl -X DELETE \
-H "Authorization: Bearer TOKEN" \
"http://ENDPOINT/v3/projects/PROJECT_ID/glossaries/GLOSSARY_ID"
Ganti TOKEN
dengan
token autentikasi
yang Anda peroleh.