- Cohere merilis dataset yang meng-embed seluruh Wikipedia sebagai vektor
- Dengan dataset ini, individu kini dapat membuat indeks vektor berbasis semantik untuk Wikipedia
Tantangan
- Ukuran dataset (180GB hanya untuk korpus bahasa Inggris) bukanlah masalah utamanya
- Basis data vektor yang ada sebelumnya tidak dapat mengindeks dataset yang lebih besar daripada memori
- Library JVector memungkinkan pengindeksan dataset yang lebih besar daripada memori dengan menggunakan vektor terkompresi
Persyaratan
- Memerlukan Linux atau MacOS (Windows tidak dapat digunakan karena keterbatasan ChronicleMap)
- Memerlukan 180GB ruang kosong untuk dataset dan 90GB ruang untuk indeks
- Saat membangun indeks, dibutuhkan RAM yang cukup untuk menjalankan JVM dengan heap sebesar 36GB
- Swap perlu dinonaktifkan sebelum membangun indeks
Membangun indeks dan pencarian
Cara kerjanya
- Membuat indeks vektor dengan JVector, menyimpan data artikel dengan Chronicle Map
- Menggunakan Locally-Adaptive Quantization (LVQ) untuk kompresi vektor
- Memproses data secara paralel menggunakan parallel stream
Kesimpulan
- Berkat library JVector, mengindeks seluruh Wikipedia bahasa Inggris di laptop kini menjadi hal yang realistis
- Jika digunakan bersama layanan DataStax Astra, kemampuan pengindeksan yang kuat dengan dukungan penyisipan, pembaruan, dan penghapusan secara real-time dapat dimanfaatkan
Pendapat GN⁺
- Inovasi JVector: JVector memungkinkan pengindeksan dataset besar tanpa batasan memori, sehingga berpotensi membawa inovasi besar di bidang data science dan search engine.
- Kepraktisan: Dengan kemampuan mengindeks seluruh Wikipedia di laptop pribadi, peneliti dan pengembang dapat memanfaatkan dataset berskala besar dengan lebih mudah.
- Pertimbangan teknis: Untuk mengadopsi teknologi ini, diperlukan ruang disk dan memori yang memadai, serta pengaturan sistem seperti menonaktifkan swap.
- Teknologi alternatif: Proyek open source lain yang menawarkan fungsi serupa antara lain FAISS (Facebook AI Similarity Search) dan Annoy (Approximate Nearest Neighbors Oh Yeah).
- Optimasi performa: Performa dapat dioptimalkan melalui pemrosesan paralel dan teknik kompresi vektor, tetapi pengelolaan sumber daya sistem tetap perlu diperhatikan.
Belum ada komentar.