Vektör veritabanı, makine öğrenmesi modellerinin anlamı temsil etmek için kullandığı, genellikle yüzlerce ya da binlerce kayan noktalı sayıdan oluşan sayısal diziler olan yüksek boyutlu vektörleri işlemek için tasarlanmış özel bir depolama sistemidir. Kelimeler, cümleler, görseller, ses klipleri ve kullanıcı davranışlarının tümü vektör olarak kodlanabilir; bir vektör veritabanı milyarlarca gömme bilgisini depolamayı ve yeni bir sorguya en yakın eşleşmeleri milisaniyeler içinde bulmayı mümkün kılar.
Vektör veritabanı nasıl çalışır
Büyük bir dil modeli ya da görsel kodlayıcı gibi bir makine öğrenmesi modeli bir gömme ürettiğinde, bu vektör veritabanına orijinal öğeye (bir metin parçası, görsel dosyası, ürün kaydı vb.) bir referansla birlikte gönderilir. Veritabanı, HNSW (Hiyerarşik Gezilebilir Küçük Dünya) veya IVF (Ters Dosya İndeksi) gibi yaklaşık en yakın komşu (ANN) algoritması kullanarak bir indeks oluşturur; bu yapılar küçük bir kesinlik kaybı karşılığında büyük veri kümelerinde çok daha hızlı sorgular sunar. Arama zamanında uygulama, sorgu olarak yeni bir gömme gönderir ve indeks, benzerlik metriğine (yaygın olarak kosinüs benzerliği, nokta çarpımı veya Öklid mesafesi) göre sıralanmış en iyi k vektörü döndürür.
Neden önemlidir
Geleneksel anahtar kelime araması "kedicik dost" ile "ev kedisi"nın neredeyse aynı şeyi ifade ettiğini anlayamaz; ancak bu ifadelerin gömme değerleri vektör uzayında birbirine yakın konumlandığı için vektör veritabanı onları yine de eşleşme olarak öne çıkarır. Bu yetenek, modern anlamsal aramanın, öneri motorlarının, görsel ve ses erişiminin, anomali tespitinin ve bir LLM'nin bir vektör deposundan getirilen belgelerle temellendirildiği Retrieval-Augmented Generation (RAG) içindeki erişim adımının temelini oluşturur. Amaca yönelik tasarlanmış indeksleme olmadan, bir sorguyu milyonlarca vektörle tek tek karşılaştırmak üretim trafiği için çok yavaş kalır.
Temel türler ve örnekler
- Adanmış vektör veritabanları: baştan sona ANN indeksleri etrafında tasarlanmış Milvus, Qdrant, Weaviate ve Pinecone gibi özel amaçlı motorlar.
- Vektör arama kütüphaneleri: bağımsız bir hizmet olarak değil, bir uygulamanın içinde çalışan FAISS ve Annoy gibi hafif motorlar.
- Hibrit veritabanları: mevcut belge veya ilişkisel özelliklere vektör indeksleme ekleyen PostgreSQL (pgvector aracılığıyla), Elasticsearch ve MongoDB gibi geleneksel depolar.
- Yönetilen bulut hizmetleri: vektör aramayı daha geniş veri platformlarıyla bütünleştiren büyük bulut sağlayıcılarının sunduğu barındırılan hizmetler.
Aralarında seçim yapmak genellikle ölçek, gecikme gereksinimleri, verilerin yapılandırılmış kayıtlarla birlikte bulunup bulunmadığı ve ekibin ne kadar operasyonel yük üstlenmeye istekli olduğuna bağlıdır. Alandaki en güçlü sistemler, temsili veri kümeleri genelinde geri çağırmayı saniye başına sorgu sayısıyla karşılaştıran ANN-Benchmarks sıralaması gibi kıyaslamalarla değerlendirilir.