Google: Gemini Embedding 2
Gemini Embedding 2 memetakan teks, gambar, audio, video, dan PDF ke ruang numerik bersama. Vektornya mendukung pencarian lintas modalitas, temu kembali, klasifikasi, dan pengelompokan, dengan dimensi fleksibel serta batas masukan 8.192 token.
Tentang model
Deskripsi ini mencakup kemampuan model. Masukan, keluaran, dan opsi yang tersedia di Ailoot tercantum di bawah untuk metode yang dipilih.
Gemini Embedding 2 adalah model embedding multimodal Google untuk representasi numerik teks, gambar, video, audio, dan PDF. Model memetakan berbagai jenis media ke ruang bersama agar aplikasi dapat membandingkan maknanya lintas media. Hasilnya berupa vektor angka yang berguna untuk pencarian semantik, temu kembali dokumen, rekomendasi, klasifikasi, atau pengelompokan; bukan jawaban tertulis atau berkas media yang dihasilkan. Google mendokumentasikan cakupan semantik dalam lebih dari 100 bahasa.
Untuk basis pengetahuan, buat vektor bagian sumber, bandingkan kueri pengguna dengannya, dan temukan materi relevan. Model teks terpisah kemudian dapat menyusun jawaban menggunakan sumber tersebut. Untuk koleksi media, deskripsi tekstual dapat mencari gambar atau video terkait; gambar juga dapat menjadi kueri. Pertahankan hubungan setiap vektor dengan konten asli, termasuk rujukan halaman atau klip, agar hasil temu kembali dapat diperiksa dan ditampilkan dalam konteks aslinya.
Batas masukan keseluruhan adalah 8.192 token. Panduan model stabil mengizinkan hingga enam gambar PNG atau JPEG, hingga 180 detik audio MP3 atau WAV, dan hingga 120 detik video MP4 atau MOV. Codec video yang didokumentasikan adalah H264, H265, AV1, dan VP9. Pemrosesan video menggunakan paling banyak 32 bingkai: klip hingga 32 detik disampel pada satu bingkai per detik, sedangkan klip lebih panjang disampel secara merata menjadi 32 bingkai. Trek audio video tidak diproses dalam masukan video tersebut; buat embedding suaranya secara terpisah ketika penting untuk temu kembali.
Masukan PDF menerima satu berkas dengan paling banyak enam halaman. Google menyarankan satu halaman per PDF untuk kualitas terbaik. Bagi sumber yang lebih besar menjadi halaman atau bagian bermakna dan pertahankan hubungannya dengan dokumen asli. Pilih kutipan yang mewakili materi yang harus dapat ditemukan alih-alih menggabungkan materi tidak terkait hanya karena muat dalam batas. Batas token bersama tetap berlaku untuk permintaan media campuran. Setiap halaman PDF menggunakan 258 token visual selain token teks yang diekstrak. Dalam alur Google yang didokumentasikan, konten yang melampaui batas bersama 8.192 token dipotong tanpa galat.
Dimensi keluaran fleksibel dari 128 hingga 3.072, dengan 3.072 sebagai bawaan dan 768, 1.536, serta 3.072 sebagai ukuran yang disarankan. Model menggunakan Matryoshka Representation Learning, sehingga bagian awal vektor tetap berguna pada dimensi lebih kecil. Panduannya mendokumentasikan normalisasi otomatis untuk vektor bawaan maupun yang dipendekkan. Pilih dimensi konsisten untuk rekaman dan kueri yang dibandingkan aplikasi; ukuran yang diminta mengubah representasi numerik, bukan konten sumber itu sendiri.
Untuk tugas teks saja, sertakan tujuan dalam teks alih-alih menggunakan bidang task_type lama. Google membedakan temu kembali asimetris dari perbandingan simetris. Kueri pencarian menggunakan “task: search result | query: {content}”, sedangkan dokumen sumber menggunakan “title: {title} | text: {content}”; gunakan “title: none” jika tidak memiliki judul. Tugas tanya jawab, pemeriksaan fakta, dan temu kembali kode memiliki prefiks kueri sendiri. Untuk klasifikasi, pengelompokan, atau kemiripan kalimat, gunakan format tugas yang sama secara konsisten pada kedua sisi. Panduan secara umum menyarankan agar tidak menambahkan prefiks tugas ke bagian teks dari representasi multimodal gabungan.
Struktur masukan menentukan apakah hasil merepresentasikan satu objek gabungan atau item terpisah. Beberapa bagian yang diberikan bersama menghasilkan embedding agregat; objek Content terpisah menghasilkan embedding terpisah untuk setiap entri. Untuk kiriman yang memuat teks dan gambar, representasi gabungan dapat menangkap hubungannya. Untuk rekaman yang dapat dicari secara independen, pisahkan. Pilihan ini memengaruhi tingkat perincian temu kembali: satu vektor untuk seluruh kiriman berbeda dari satu vektor untuk setiap bagian teks atau gambar.
Panduan menyatakan bahwa vektor Gemini Embedding 001 dan Gemini Embedding 2 berada dalam ruang yang tidak kompatibel dan tidak dapat dibandingkan langsung. Koleksi yang dimigrasikan dari model lama perlu dibuat ulang embedding-nya untuk ruang baru. Pertahankan pilihan model dan dimensi agar konsisten dengan vektor yang dibandingkan, serta simpan teks asli dan media terpisah dari indeks numerik. Kemiripan embedding adalah sinyal temu kembali, bukan penjelasan faktual tentang alasan suatu dokumen menjawab pertanyaan pengguna.
Untuk katalog praktis, buat embedding foto produk bersama deskripsi yang disetujui ketika pasangan itu harus ditemukan sebagai satu objek. Untuk koleksi dokumen, buat embedding bagian terfokus dan bandingkan dengan kueri berformat tujuan, lalu sajikan bagian sumber di samping hasil pencarian. Untuk audio atau video, pilih segmen yang menjelaskan kejadian yang dapat dicari dan simpan rentang waktu aslinya. Hasil yang berguna adalah representasi numerik yang terhubung dengan bukti sumber untuk tahap pencarian atau analisis aplikasi berikutnya.
Ailoot Ultra · Embedding POST /v1/embeddings google/gemini-embedding-2
google/gemini-embedding-2Mulai
Gemini Embedding 2 memetakan teks, gambar, audio, video, dan PDF ke ruang numerik bersama. Vektornya mendukung pencarian lintas modalitas, temu kembali, klasifikasi, dan pengelompokan, dengan dimensi fleksibel serta batas masukan 8.192 token.
- Masukan yang diterima
- Teks · token_ids
- Hasil
- embedding
Tersedia di Ailoot · masukan & metode
Ailoot Ultra · Embedding POST /v1/embeddings
- Masukan
text,token_ids- Keluaran
embedding- Konteks
- 8.192 tokens
- Format keluaran
- json
| Kolom | Jenis | Persyaratan | Nilai & batasan | Bawaan |
|---|---|---|---|---|
Kolommodel | Jenisstring | PersyaratanWajib | Nilai & batasan google/gemini-embedding-2 | Bawaan— |
Kolominput | Jenisstring|string[]|integer[]|integer[][] | PersyaratanWajib | Nilai & batasan Item minimum: 1 Kondisi: Batch homogen yang tidak kosong. ID token berupa bilangan bulat nonnegatif. Anggaran masukan: Maksimum: 8.192 · Satuan teks: byte UTF8 · Satuan token: elemen array token | Bawaan— |
Kolomencoding_format | Jenisstring | PersyaratanOpsional | Nilai & batasan float | Bawaanfloat |
Kolomdimensions | Jenisinteger | PersyaratanTidak didukung | Nilai & batasan Minimum: 1 | Bawaan— |
Kolomuser | Jenisjson_value | PersyaratanOpsional | Nilai & batasan Kondisi: Sumber mengizinkan kolom metadata JSON ini; makna tepatnya pada layanan hulu bergantung pada model. | Bawaan— |
Kolomsession_id | Jenisjson_value | PersyaratanOpsional | Nilai & batasan Kondisi: Sumber mengizinkan kolom metadata JSON ini; makna tepatnya pada layanan hulu bergantung pada model. | Bawaan— |
Kolomtrace | Jenisjson_value | PersyaratanOpsional | Nilai & batasan Kondisi: Sumber mengizinkan kolom metadata JSON ini; makna tepatnya pada layanan hulu bergantung pada model. | Bawaan— |
Kolomprovider | Jenisobject | PersyaratanOpsional | Nilai & batasan Kondisi: provider.options ditolak | Bawaan— |
Kombinasi bahan masukan
text_to_embedding
Parameter metode dan siklus hidup
| Parameter | Kontrak |
|---|---|
Parametercontent_type | Kontrakapplication/json |
Parameterrequired | Kontrakmodel, input |
Parameterinput_shapes | Kontrakstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parameterencoding_format | Kontrakfloat |
Parameterdimensions_override | Kontrakfalse |
Parametermax_input_budget_units | Kontrak8192 |
Parametermultimodal_objects | Kontrakfalse |
Parametermaterial_types | Kontraktext, token_ids |
Siklus hidup: synchronous_json
Pertahankan index dan dimensi setiap vektor.
Nama model multimodal tidak mengizinkan objek gambar pada jalur persis ini.
Paket
Referensi tarif tidak menambah opsi permintaan. Parameter yang didukung tercantum pada metode yang dipilih.
- Mode Fast
- Tarif standar Saat mode fast dipilih
- Mode Flex
- Tarif standar Saat mode flex dipilih
- Upaya penalaran maksimum
- Tarif standar Saat upaya penalaran maksimum menggunakan penyesuaian default
Tarif Ailoot
Harga menurut konfigurasi
| Konfigurasi | Jadwal tarif | Biaya |
|---|---|---|
| KonfigurasiTarif dasar token | Jadwal tarifTarif dasar | Biaya Masukan · Token masukan $0.0004 / 1K token Keluaran · Token keluaran $0 / 1K token Masukan · Pembacaan cache — / 1K token Masukan · Penulisan cache — / 1K token Masukan · Penulisan cache, 1 jam — / 1K token |
Ailoot mencadangkan perkiraan dana sebelum permintaan. Setelah hasil diterima, tagihan akhir diselesaikan berdasarkan penggunaan yang terukur. Penyelesaian tagihan streaming menggunakan catatan penggunaan akhir. Cara kerja cadangan dan penyelesaian tagihan →
Contoh permintaan
Ailoot Ultra · Embedding
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "google/gemini-embedding-2", "input": ["First document", "Second document"]}')
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("data",[]): print(json.dumps({"index":x.get("index"),"embedding":x.get("embedding")}))
PY_RESULT
from openai import OpenAI
import os
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.embeddings.create(model='google/gemini-embedding-2',input=["First document","Second document"])
print(result)
for item in result.data:print(item.index,item.embedding)
Terima dan simpan hasil
Ailoot Ultra · Embedding
json
Simpan semua hasil yang selesai
Simpan setiap respons lengkap, berkas, dan bagian konten yang dikembalikan.
Simpan setiap vektor beserta index masing-masing. Jumlah vektor harus sama dengan jumlah input; dimensinya harus konsisten.
Jika respons asli perlu diperiksa
Endpoint untuk tugas embedding tidak ditambahkan.
Kolom respons
| Kolom | Jenis |
|---|---|
Kolomobject | Jenisstring |
Kolommodel | Jenisstring |
Kolomdata[].index | Jenisinteger |
Kolomdata[].embedding | Jenisfinite float[] |
Kolomusage | Jenisobject |
Kesalahan dan langkah berikutnya
| Respons | Kondisi | Langkah berikutnya |
|---|---|---|
Respons400 · invalid_request_error | KondisiBidang wajib, representasi materi, atau nilai parameter tidak valid | Langkah berikutnyaPerbaiki bidang yang ditunjukkan sebelum permintaan pembuatan baru. |
Alias
Alias model
Ailoot Ultra google/gemini-embedding-2
Alias jalur metode
Gunakan jalur metode yang ditampilkan di atas.
ID pemanggil terkait
FAQ · Google: Gemini Embedding 2
- Input dan hasil apa yang tersedia?
POST /v1/embeddings·google/gemini-embedding-2:text,token_ids→embedding- Kolom apa yang digunakan permintaan?
POST /v1/embeddings·google/gemini-embedding-2:model,input,encoding_format,provider- Batasan apa yang berlaku?
POST /v1/embeddings·google/gemini-embedding-2:ctx:8192;input.budget.maximum:8192(byte UTF8);input.min_items:1