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.
Google Cloud mengintegrasikan kemampuan tingkat perusahaan ini secara langsung ke dalam layanan terkelolanya, termasuk AlloyDB untuk PostgreSQL, Spanner, dan BigQuery yang membantu Anda membangun aplikasi cerdas tanpa mengelola infrastruktur secara terpisah.
Embedding vektor adalah representasi numerik data, yang biasanya didefinisikan sebagai array bilangan floating-point. Vektor tersebut menerjemahkan data tidak terstruktur yang kompleks, seperti teks, gambar, atau audio ke dalam format yang dapat diproses oleh model machine learning.
Dengan memetakan data ini ke ruang vektor, embedding menangkap makna semantik. Kemudian, item yang mirip ditempatkan lebih berdekatan, sedangkan item yang tidak mirip ditempatkan lebih berjauhan. Hubungan spasial ini membantu sistem mengidentifikasi hubungan antara titik data berdasarkan konteks dan makna, bukan hanya kecocokan kata kunci.
Meskipun beberapa database khusus hanya mendukung embedding vektor, database yang lain mendukung banyak jenis kueri dan data selain embedding vektor. Hal ini 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 berikut, serta mulailah dengan panduan memulai ini.
Pembuatan kueri secara efisien terhadap sekumpulan besar vektor memerlukan pengindeksan khusus dan strategi penelusuran yang berbeda dari teks tradisional atau kolom numerik. Karena vektor tidak memiliki pengurutan logis tunggal, database vektor mengandalkan mekanisme berikut untuk mengambil data:
Embedding vektor menangkap makna semantik data yang kompleks. Jika digabungkan dengan database vektor, yang menyediakan pengindeksan dan pengambilan data secara efisien, developer dapat membangun berbagai aplikasi cerdas dan alat pemrosesan data.
Developer dapat menggunakan database vektor sebagai pusat informasi eksternal untuk model bahasa besar (LLM). Dengan mengambil konteks relevan dan eksklusif sebelum mengirimkan perintah ke model, aplikasi dapat mengurangi halusinasi dan memberikan respons yang akurat secara faktual dan spesifik per domain. Hal ini penting untuk membangun agen dukungan berteknologi AI, penganalisis dokumen hukum, dan sistem pengelolaan informasi internal.
Database vektor memungkinkan developer membangun sistem personalisasi yang melampaui penyaringan kolaboratif. Dengan merepresentasikan perilaku pengguna dan atribut produk sebagai vektor, aplikasi dapat mengidentifikasi item serupa atau mencocokkan pengguna dengan konten yang sesuai dengan preferensi mereka secara real time. Arsitektur ini mendukung saran produk e-commerce, content feed, dan rekomendasi streaming media.
Tidak seperti penelusuran kata kunci tradisional, database vektor memungkinkan aplikasi penelusuran semantik yang memahami maksud pengguna. Developer dapat membangun pengalaman penelusuran yang memungkinkan pengguna membuat kueri berdasarkan konsep, bukan frasa yang tepat. Selain itu, karena vektor dapat merepresentasikan berbagai jenis data dalam ruang yang sama, Anda dapat membangun alat penelusuran multimodal—yang memungkinkan pengguna menelusuri gambar menggunakan deskripsi teks atau menemukan dokumen terkait menggunakan gambar input.
Database vektor dapat membantu mengidentifikasi pola tidak teratur dalam set data besar. Dengan membuat ruang vektor yang merepresentasikan perilaku atau transaksi "normal", developer dapat mendeteksi anomali secara terprogram yang berada jauh dari cluster yang sudah ada. Kemampuan ini sangat penting untuk membangun sistem deteksi penipuan keuangan, alat pemantauan keamanan jaringan, dan health check infrastruktur IT.
Dalam alur kerja data engineering, database vektor dapat membantu membersihkan dan menyatukan set data yang berbeda. Dengan membandingkan embedding dari data pelanggan atau listingan produk, sistem dapat mengidentifikasi entri duplikat meskipun teksnya sedikit berbeda (misalnya, "Jl. Utama" vs. "Jalan Utama"). Hal ini membantu organisasi mempertahankan satu tampilan data yang akurat.
AlloyDB untuk PostgreSQL menggabungkan kompatibilitas PostgreSQL dengan infrastruktur Google yang skalabel. Layanan ini menyertakan dukungan bawaan untuk embedding vektor melalui ekstensi pgvector standar dan meningkatkannya dengan indeks ScaNN Google. Hal ini dapat mempercepat kueri vektor dan memungkinkan "pemfilteran inline", yang dapat membantu mengoptimalkan penelusuran campuran dengan mengevaluasi kemiripan vektor dan filter metadata secara bersamaan untuk performa yang lebih baik.
Contoh: Penelusuran campuran untuk real estat
Sebuah aplikasi real estat tempat pengguna ingin menemukan rumah berdasarkan "suasana" (misalnya, "modern abad pertengahan dengan cahaya alami") sambil tetap mematuhi batasan yang ketat (misalnya, "3 kamar tidur", "di bawah $800 ribu", "di Distrik Sekolah A").
Google Cloud mengintegrasikan kemampuan penelusuran vektor langsung ke dalam layanan database intinya, sehingga membantu Anda mengoperasionalkan AI generatif menggunakan data dan alur kerja yang ada.
Spanner, database Google yang didistribusikan secara global, mendukung penelusuran vektor untuk aplikasi transaksional. Spanner dapat menyediakan penelusuran vektor yang sangat tersedia dan skalabel menggunakan algoritma tetangga terdekat yang tepat dan perkiraan tetangga terdekat. Hal ini memungkinkan aplikasi global menerapkan fitur seperti rekomendasi real-time atau penelusuran semantik sekaligus mempertahankan konsistensi dan keandalan yang ketat.
Contoh: Rekomendasi real-time untuk e-commerce
Platform e-commerce global ingin membangun mesin rekomendasi yang menangani penelusuran pengguna yang tidak jelas seperti "sepatu hiking terbaik untuk cuaca hujan" sekaligus memastikan ketersediaan produk secara langsung.
BigQuery dapat memungkinkan Anda melakukan analisis vektor pada set data besar tanpa perlu memindahkan data dari data warehouse Anda. Dengan fungsi VECTOR_SEARCH, Anda dapat menjalankan penelusuran kesamaan menggunakan SQL standar. Hal ini sangat berguna untuk kasus penggunaan analitis, seperti mengelompokkan pelanggan berdasarkan perilaku atau mengidentifikasi tren produk serupa di miliaran baris data.
Contoh: Deteksi ancaman pengamanan cyber dalam skala besar
Tim keamanan perlu menganalisis log server berukuran petabyte untuk mengidentifikasi aktivitas berbahaya. Penyerang sering kali sedikit memodifikasi kode mereka untuk menghindari penelusuran kata kunci dengan pencocokan persis.
Mulailah membangun solusi di Google Cloud dengan kredit gratis senilai $300 dan lebih dari 20 produk yang selalu gratis.