Pengantar penelusuran vektor

Dokumen ini memberikan ringkasan tentang penelusuran vektor di BigQuery. Penelusuran vektor memungkinkan Anda menelusuri penyematan untuk mengidentifikasi entity yang mirip secara semantik.

Embedding adalah vektor numerik berdimensi tinggi yang mewakili entitas tertentu, seperti potongan teks atau file audio. Model machine learning (ML) menggunakan penyematan untuk mengenkode semantik tentang entitas tersebut agar lebih mudah untuk memahami dan membandingkannya. Misalnya, operasi umum dalam model pengelompokan, klasifikasi, dan rekomendasi adalah mengukur jarak antara vektor dalam ruang penyematan untuk menemukan item yang paling mirip secara semantik.

Untuk melakukan penelusuran vektor, Anda menggunakan fungsi VECTOR_SEARCH dan secara opsional indeks vektor. Saat indeks vektor digunakan, VECTOR_SEARCH menggunakan teknik penelusuran Approximate Nearest Neighbor untuk membantu meningkatkan performa penelusuran vektor, dengan kompromi pengurangan recall sehingga menampilkan hasil yang lebih mendekati. Brute force digunakan untuk menampilkan hasil yang sama persis saat indeks vektor tidak tersedia, dan Anda dapat memilih untuk menggunakan brute force untuk mendapatkan hasil yang sama persis meskipun indeks vektor tersedia.

Kasus penggunaan

Kombinasi pembuatan penyematan dan penelusuran vektor memungkinkan banyak kasus penggunaan yang menarik, dengan retrieval-augmented generation (RAG) menjadi kasus penggunaan kanonis. Beberapa kemungkinan kasus penggunaan lainnya adalah sebagai berikut:

  • Dengan sekumpulan kasus dukungan baru, temukan beberapa kasus serupa yang telah diselesaikan untuk setiap kasus. Teruskan informasi tentang kasus yang telah diselesaikan ke model bahasa besar (LLM) untuk digunakan sebagai konteks saat meringkas dan menyarankan penyelesaian untuk kasus dukungan baru.
  • Dengan entri log audit, temukan entri yang paling cocok dalam 30 hari terakhir.
  • Buat penyematan dari data profil pasien, lalu gunakan penelusuran vektor untuk menemukan pasien dengan profil serupa guna mempelajari rencana pengobatan yang berhasil diresepkan untuk kelompok pasien tersebut.
  • Dengan penyematan yang mewakili momen pra-kecelakaan dari semua sensor dan kamera di armada bus sekolah, temukan momen serupa dari semua kendaraan lain dalam armada untuk analisis, penyesuaian, dan pelatihan ulang lebih lanjut model yang mengatur interaksi fitur keselamatan.
  • Dengan gambar tertentu, temukan gambar yang paling terkait di tabel objek BigQuery, dan teruskan gambar tersebut ke model untuk membuat teks.

Harga

Pernyataan CREATE VECTOR INDEX dan fungsi VECTOR_SEARCH menggunakan harga komputasi BigQuery. Untuk pernyataan CREATE VECTOR INDEX, hanya kolom yang diindeks yang dipertimbangkan dalam byte yang diproses.

Pemrosesan yang diperlukan untuk membuat dan memuat ulang indeks vektor tidak dikenai biaya jika ukuran total data tabel yang diindeks berada di bawah batas per organisasi. Untuk mendukung pengindeksan di luar batas ini, Anda harus menyediakan pemesanan sendiri untuk menangani tugas pengelolaan indeks. Indeks vektor akan dikenai biaya penyimpanan saat aktif. Anda dapat menemukan ukuran penyimpanan indeks dalam tampilan INFORMATION_SCHEMA.VECTOR_INDEXES. Jika indeks vektor belum mencapai cakupan 100%, Anda tetap akan dikenakan biaya untuk semua penyimpanan indeks yang dilaporkan dalam tampilan INFORMATION_SCHEMA.VECTOR_INDEXES.

Kuota dan batas

Untuk informasi selengkapnya, lihat Batas indeks vektor.

Batasan

  • Kueri yang berisi fungsi VECTOR_SEARCH tidak akan dipercepat oleh BigQuery BI Engine.
  • Aturan tata kelola dan keamanan data BigQuery berlaku untuk penggunaan VECTOR_SEARCH. Untuk mengetahui informasi selengkapnya, lihat bagian Batasan di VECTOR_SEARCH. Aturan ini tidak berlaku untuk pembuatan indeks vektor.

Langkah selanjutnya