- Cohere, Wikipedia’nın tamamını vektör olarak gömülmüş bir veri seti olarak yayımladı
- Bu veri seti sayesinde bireyler, Wikipedia’nın anlam tabanlı bir vektör indeksini oluşturabiliyor
Zorluklar
- Sorun veri setinin boyutu değil (yalnızca İngilizce korpus 180GB)
- Mevcut vektör veritabanları, belleği aşan veri setlerini indeksleyemiyordu
- JVector kütüphanesi, sıkıştırılmış vektörler kullanarak bellekten büyük veri setlerinin indekslenmesini mümkün kılıyor
Gereksinimler
- Linux veya MacOS gerekli (
ChronicleMap kısıtlamaları nedeniyle Windows kullanılamıyor)
- Veri seti için 180GB boş alan ve indeks için 90GB alan gerekli
- İndeks oluştururken 36GB heap alanına sahip JVM’i çalıştırabilecek kadar yeterli RAM gerekli
- İndeks oluşturmadan önce swap’ın devre dışı bırakılması gerekli
İndeks oluşturma ve arama
Nasıl çalışıyor
- JVector ile vektör indeksi oluşturuluyor, makale verileri Chronicle Map ile saklanıyor
- Vektör sıkıştırması için Locally-Adaptive Quantization (LVQ) kullanılıyor
- Veriler, paralel stream kullanılarak paralel işleniyor
Sonuç
- JVector kütüphanesi sayesinde İngilizce Wikipedia’nın tamamını bir dizüstü bilgisayarda indekslemek gerçekçi hale geliyor
- DataStax Astra hizmetiyle birlikte kullanıldığında, gerçek zamanlı ekleme, güncelleme ve silmeyi destekleyen güçlü indeksleme yeteneklerinden yararlanılabiliyor
GN⁺’nin görüşü
- JVector’ın yenilikçiliği: JVector, büyük veri setlerinin bellek kısıtı olmadan indekslenmesini mümkün kılarak veri bilimi ve arama motoru alanında önemli bir yenilik getirebilir.
- Pratiklik: Bireylerin bir dizüstü bilgisayarda Wikipedia’nın tamamını indeksleyebilmesi, araştırmacıların ve geliştiricilerin büyük veri setlerinden daha kolay yararlanmasını sağlayabilir.
- Teknik değerlendirmeler: Bu teknolojiyi kullanmak için yeterli disk alanı ve bellek ile swap’ı devre dışı bırakma gibi sistem ayarları gerekiyor.
- Alternatif teknolojiler: Benzer işlevler sunan diğer açık kaynak projeler arasında FAISS (Facebook AI Similarity Search) ve Annoy (Approximate Nearest Neighbors Oh Yeah) bulunuyor.
- Performans optimizasyonu: Paralel işleme ve vektör sıkıştırma teknikleriyle performans optimize edilebilir, ancak sistem kaynaklarının yönetimine dikkat etmek gerekir.
Henüz yorum yok.