Apa itu database vektor?

Database vektor adalah database yang memungkinkan Anda menyimpan, mengindeks, dan membuat kueri embedding vektor, atau representasi numerik data yang tidak terstruktur, seperti teks, gambar, atau audio.

Apa itu embedding vektor?

Embedding vektor adalah representasi yang berguna dari data tidak terstruktur karena memetakan konten sedemikian rupa sehingga kemiripan semantik diwakili oleh jarak dalam ruang vektor n dimensi. Hal ini memudahkan untuk mencari kesamaan, menemukan konten yang relevan di pusat informasi, atau mengambil item yang paling cocok dengan kueri kompleks buatan pengguna. 

Meskipun beberapa database khusus hanya mendukung embedding vektor, database yang lain mendukung banyak jenis kueri dan data lain selain embedding vektor. Dukungan untuk berbagai jenis data dan jenis kueri sangat penting untuk membangun aplikasi AI generatif di atas data yang lengkap dan nyata. Dengan semakin jelasnya manfaat kueri semantik menggunakan embedding vektor, sebagian besar database akan menambahkan dukungan vektor. Di masa mendatang, kami yakin bahwa setiap database akan menjadi database vektor.

Pelajari cara penelusuran vektor Vertex AI mendukung pembangunan aplikasi AI Generatif berperforma tinggi. Penelusuran vektor Vertex AI didasarkan pada Scalable Nearest Neighbor Search atau ScaNN, sebuah teknologi penelusuran vektor yang skalabel dan efisien yang dikembangkan oleh Tim Riset Google, sehingga ideal untuk menangani set data besar dan persyaratan penelusuran real-time. Pelajari penelusuran vektor dan embedding lebih lanjut di video ini, serta mulailah dengan panduan memulai ini. 

Bagaimana cara kerja database vektor?

Seperti jenis data lainnya, pembuatan kueri secara efisien terhadap sekumpulan besar vektor memerlukan indeks—dan database vektor mendukung indeks khusus untuk vektor. Tidak seperti banyak tipe data lainnya (seperti teks atau angka), yang memiliki urutan logis tunggal, vektor tidak memiliki urutan alami yang sesuai dengan kasus penggunaan praktis. Sebaliknya, kasus penggunaan yang paling umum adalah membuat kueri vektor k yang paling dekat dengan vektor lain dalam hal metrik jarak seperti perkalian titik, kesamaan kosinus, atau jarak euclidean. Kueri semacam ini disebut sebagai kueri "k (exact) nearest neighbors" atau "KNN".

Sayangnya, tidak ada algoritme umum untuk kueri KNN yang efisien-untuk mendapatkan jaminan menemukan k tetangga terdekat dari vektor yang diberikan, q, perlu menghitung jarak antara q dan setiap vektor lainnya. Namun, ada algoritma yang efisien untuk menemukan k approximate nearest neighbors ("ANN"). Algoritma ANN ini mengorbankan beberapa akurasi (khususnya recall, algoritma ini mungkin menghilangkan beberapa tetangga terdekat aktual) untuk peningkatan kecepatan yang signifikan. Karena banyak kasus penggunaan sudah menganggap proses komputasi vektor embedding agak tidak akurat, kasus penggunaan ini sering kali dapat menoleransi sejumlah kerugian dalam perolehan sebagai imbalan atas peningkatan performa yang signifikan.

Untuk mengaktifkan kueri ANN bagi vektor yang didasarkan jarak dari beberapa vektor lainnya, indeks vektor disusun sedemikian rupa sehingga cluster vektor terdekat umumnya dikelompokkan bersama. Jenis indeks vektor umum dapat disusun sebagai serangkaian daftar di mana setiap daftar mewakili vektor dalam cluster tertentu; sebuah grafik di mana setiap vektor terhubung ke beberapa tetangga terdekatnya; pohon di mana cabang-cabang tersebut sesuai dengan subset cluster node induk; dan lainnya. Setiap jenis indeks memberikan kompromi antara kecepatan pencarian, perolehan, konsumsi memori, waktu pembuatan indeks, dan faktor lainnya.

Namun, kebanyakan kueri database tidak hanya didasarkan pada kemiripan semantik. Misalnya, seorang pengguna mungkin mencari buku yang deskripsinya mirip dengan "kisah mengharukan tentang seorang anak dan anjing", tetapi dia juga ingin hasilnya dibatasi hanya untuk buku di bawah $20 yang tersedia dalam format sampul tipis. Database vektor tujuan khusus dapat menyediakan beberapa kemampuan pemfilteran tambahan yang terbatas (kadang-kadang disebut “membatasi”) sementara database tujuan umum dapat menyusun predikat kaya menggunakan bahasa standar seperti SQL, yang dapat dikombinasikan dengan pengurutan vektor kemiripan untuk memungkinkan kueri yang sangat andal dan ekspresif.

Kasus penggunaan database vektor

Kemampuan embedding vektor untuk merepresentasikan makna semantik dari data tidak terstruktur yang dipadukan dengan kemampuan database vektor untuk menelusuri vektor di sekitarnya secara efisien dapat membuka banyak kasus penggunaan penting:

  • Menemukan pesan dari histori chat yang relevan dengan percakapan saat ini sehingga memungkinkan chatbot yang didukung AI memiliki “memori”
  • Temukan klip video dari beragam arsip siaran olahraga yang cocok dengan deskripsi sederhana seperti “melompati pemain bertahan untuk menangkap bola dan mencetak touchdown”
  • Menemukan produk yang mirip dengan sesuatu yang pernah dibeli pengguna sebelumnya dan yang sesuai dengan harga dan preferensi gaya pengguna tersebut
  • Mencari dokumen yang relevan dengan tugas seperti "mengganti filter penyedot debu" sehingga asisten yang didukung AI dapat memberikan respons yang relevan dan faktual

Manfaat database vektor

Database vektor penting karena dapat digunakan untuk memecahkan berbagai masalah yang sulit atau tidak mungkin dipecahkan dengan predikat relasional atau teknik penelusuran teks saja.

Database vektor sangat cocok untuk aplikasi AI generatif karena memudahkan pengambilan konteks bisnis dan aplikasi penting seperti histori chat yang relevan atau konten tak terstruktur khusus bisnis untuk membantu LLM merespons kueri pengguna yang kompleks.

Database vektor juga dapat memudahkan penelusuran konten menggunakan bahasa alami atau kueri berdasarkan contoh.

Mengatasi tantangan bisnis Anda dengan Google Cloud

Pelanggan baru mendapatkan kredit gratis senilai $300 untuk dibelanjakan di Google Cloud.
Hubungi spesialis penjualan Google Cloud untuk membahas tantangan unik Anda secara lebih mendetail.

Langkah selanjutnya

Mulailah membangun solusi di Google Cloud dengan kredit gratis senilai $300 dan lebih dari 20 produk yang selalu gratis.

Google Cloud
  • ‪English‬
  • ‪Deutsch‬
  • ‪Español‬
  • ‪Español (Latinoamérica)‬
  • ‪Français‬
  • ‪Indonesia‬
  • ‪Italiano‬
  • ‪Português (Brasil)‬
  • ‪简体中文‬
  • ‪繁體中文‬
  • ‪日本語‬
  • ‪한국어‬
Konsol