Dokumen ini menjelaskan cara membuat embedding teks menggunakan Text embeddings API Vertex AI.
Embedding teks adalah representasi vektor padat dari teks. Misalnya, model gemini-embedding-001 menghasilkan vektor 3072 dimensi untuk bagian teks tertentu. Embed vektor padat ini dibuat menggunakan metode deep learning yang mirip dengan yang digunakan oleh model bahasa besar.
Tidak seperti vektor jarang yang memetakan kata ke angka, vektor padat dirancang untuk merepresentasikan makna semantik teks. Manfaat utama penggunaan embedding vektor padat adalah kemampuan untuk melakukan penelusuran semantik. Daripada menelusuri pencocokan kata atau sintaksis langsung, Anda dapat menelusuri bagian teks yang selaras dengan makna kueri Anda, meskipun bagian teks tersebut tidak menggunakan frasa yang sama.
Vektor penyematan dinormalisasi, sehingga Anda dapat menggunakan kesamaan kosinus, perkalian titik, atau jarak Euclidean untuk mendapatkan peringkat kesamaan yang sama.
- Untuk mempelajari penyematan lebih lanjut, lihat ringkasan API penyematan.
- Untuk mempelajari model penyematan teks, lihat Penyematan teks.
- Untuk informasi tentang bahasa yang didukung setiap model penyematan, lihat Bahasa teks yang didukung.

Sebelum memulai
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Enable the Vertex AI API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Enable the Vertex AI API.
- Pilih jenis tugas untuk tugas penyematan Anda.
- Untuk mempelajari batas kapasitas lebih lanjut, lihat Batas kapasitas AI Generatif di Vertex AI.
- Untuk mendapatkan prediksi batch untuk embedding, lihat Mendapatkan prediksi embedding teks batch
- Untuk mempelajari embedding multimodal lebih lanjut, lihat Mendapatkan embedding multimodal
- Untuk menyesuaikan embedding, lihat Menyesuaikan embedding teks
- Untuk mempelajari lebih lanjut riset di balik
text-embedding-005
dantext-multilingual-embedding-002
, lihat makalah riset Gecko: Versatile Text Embeddings Distilled from Large Language Models.
Model yang didukung
Anda bisa mendapatkan embedding teks dengan menggunakan model berikut:
Nama model | Deskripsi | Dimensi Output | Panjang urutan maksimum | Bahasa teks yang didukung |
---|---|---|---|---|
gemini-embedding-001 |
Performa canggih di seluruh tugas bahasa Inggris, multibahasa, dan kode. Model ini menyatukan model khusus sebelumnya seperti text-embedding-005 dan text-multilingual-embedding-002 serta mencapai performa yang lebih baik di domain masing-masing. Baca Laporan Teknis kami untuk mengetahui detail selengkapnya. |
hingga 3072 | 2048 token | Bahasa teks yang didukung |
text-embedding-005 |
Berspesialisasi dalam tugas bahasa Inggris dan kode. | hingga 768 | 2048 token | Inggris |
text-multilingual-embedding-002 |
Berspesialisasi dalam tugas multibahasa. | hingga 768 | 2048 token | Bahasa teks yang didukung |
Untuk kualitas penyematan yang unggul, gemini-embedding-001
adalah model besar kami yang dirancang untuk memberikan performa tertinggi. Perhatikan bahwa
gemini-embedding-001
mendukung satu instance per permintaan.
Mendapatkan embedding teks untuk cuplikan teks
Anda bisa mendapatkan embedding teks untuk cuplikan teks dengan menggunakan Vertex AI API atau Vertex AI SDK untuk Python.
Batas API
Untuk setiap permintaan, Anda dibatasi hingga 250 teks input untuk model non-Gemini,
dan satu teks input untuk model Embedding Gemini.
API ini memiliki batas token input maksimum 20.000.
Input yang melebihi batas ini akan menyebabkan error 400. Setiap teks input individual
lebih lanjut dibatasi hingga 2.048 token; kelebihan apa pun akan terpotong secara otomatis. Anda juga
dapat menonaktifkan pemotongan senyap dengan menetapkan autoTruncate
ke false
.
Untuk informasi selengkapnya, lihat Batas penyematan teks.
Memilih dimensi penyematan
Semua model menghasilkan vektor penyematan berdurasi penuh secara default. Untuk gemini-embedding-001
,
vektor ini memiliki 3072 dimensi, dan model lain menghasilkan vektor 768 dimensi. Namun, dengan
menggunakan parameter output_dimensionality
, pengguna dapat mengontrol ukuran vektor penyematan output.
Memilih dimensi output yang lebih kecil dapat menghemat ruang penyimpanan dan
meningkatkan efisiensi komputasi untuk aplikasi downstream, sekaligus sedikit
menyedekatkan kualitas.
Contoh berikut menggunakan model gemini-embedding-001
.
Gen AI SDK for Python
Instal
pip install --upgrade google-genai
Untuk mempelajari lebih lanjut, lihat dokumentasi referensi SDK.
Tetapkan variabel lingkungan untuk menggunakan Gen AI SDK dengan Vertex AI:
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_VERTEXAI=True
Menambahkan penyematan ke database vektor
Setelah membuat embedding, Anda dapat menambahkan embedding ke database vektor, seperti Vector Search. Hal ini memungkinkan pengambilan dengan latensi rendah, dan sangat penting seiring bertambahnya ukuran data Anda.
Untuk mempelajari Vector Search lebih lanjut, lihat Ringkasan Vector Search.