Ana içeriğe geç
Yapay Zeka

4 bit vektör kuantizasyonunda FAISS turbovec ve Infino karşılaştırıldı

Öne çıkanlar

  • Infino 1,50 ms ve turbovec 1,59 ms sorgu gecikmesiyle 45,5 ms süren FAISS'i geride bıraktı.
  • Tüm yöntemler 586 MiB boyutundaki ham vektör verisini yaklaşık 75 MiB seviyesine sıkıştırdı.
  • turbovec veriden bağımsız kuantizasyon sayesinde dizini 1,2 CPU saniyesinde oluşturdu.

Infino ekibi, 1536 boyutlu 100 bin OpenAI vektörü üzerinde 4 bit kuantizasyon kullanan üç farklı arama yaklaşımını karşılaştırdı. Meta'nın geliştirdiği FAISS kütüphanesinin klasik çarpım kuantizasyonu (PQ), TurboQuant tabanlı turbovec ve Infino'nun skalar kuantizasyon (SQ4) yöntemi aynı veri kümesinde test edildi. Yapılan testlerde tüm yöntemler vektör başına yaklaşık 768 bayt bellek harcadı ve yüzde 94 ile 97 arasında benzer geri çağırma (recall) oranları yakaladı.

Bellek tasarrufu ve doğruluk oranları benzer kalırken sorgu gecikme sürelerinde belirgin farklar görüldü. Infino 1,50 milisaniye ve turbovec 1,59 milisaniye ortalama sorgu süresine ulaşırken, FAISS tarafında bu süre 45,5 milisaniyeye kadar çıktı. FAISS arama sırasında her sorgu için önceden hesaplanan mesafe tablosu üzerinden çok sayıda bellek taraması yaparken, turbovec ve Infino SIMD yazmaçlarına sığabilen doğrudan tam sayı çarpımları ve önceden hesaplanmış ızgara yöntemleriyle gecikmeyi düşürdü.

Dizin oluşturma maliyetlerinde de yöntemler ayrıştı. FAISS veri kümesi üzerinde 768 adet k-means eğiterek 312 CPU saniyesi harcarken, veriden bağımsız döndürme uygulayan turbovec işlemi 1,2 CPU saniyesinde tamamladı. İndekslenen vektörleri doğrudan Parquet dosyalarına kaydeden Infino ise yazma ve kalıcılık adımlarını 1,7 saniyede bitirdi.

Kaynak

Bu özet yapay zekâ ile hazırlanmıştır; ayrıntılar ve doğrulama için orijinal kaynağa başvurun.