Ana içeriğe geç

Vektör Veritabanı

İngilizcesi
Vector Database
Okunuşu
vektır deytabeys

Günlük kullanımda iki ad da yaygın.

Güncellendi 2 dk okuma

Bu sayfayı paylaşın

Bağlantıyı gönderin, tanımı bağlantısıyla birlikte alıntılayın ya da kendi sitenizde bir kart olarak gösterin.

https://softwaredictionary.org/tr/terimler/vector-database

Kısaca

Vektör veritabanı, embedding'leri saklayıp bir sorguya en benzer vektörleri hızla bulmak için tasarlanmış, anlamsal arama ve RAG'in dayandığı veritabanıdır.

Vektör veritabanı nedir?

Vektör veritabanı, embedding modellerinin ürettiği sayı listeleri olan vektörleri; başlık ya da tarih gibi orijinal içerik ve meta verilerle birlikte saklar. Asıl işi benzerlik aramasıdır: bir sorgu vektörü verildiğinde, ona en yakın kayıtlı vektörleri, yani anlamı en benzer öğeleri döndürür. Buna en yakın komşu araması da denir.

Bir sorguyu kayıtlı her vektörle tek tek karşılaştırmak milyonlarca öğe olduğunda çok yavaşlar. Bu yüzden vektör veritabanları özel indeksler kurar; en yaygını, vektörleri birkaç sıçramayla aranabilen katmanlı bir grafta düzenleyen HNSW gibi yaklaşık en yakın komşu (ANN) indeksleridir. Bu indeksler çok küçük bir doğruluk kaybına karşılık büyük hız kazancı sağlar; çoğu sistem sonuçları ayrıca yalnızca belirli bir ekibin belgeleri gibi meta verilere göre filtrelemenize de izin verir.

Kütüphane iyi bir benzetmedir: geleneksel veritabanı, tam başlığa ya da yazara göre arama yaptığınız bir katalog gibidir; vektör veritabanı ise başlıklarını bilmeseniz bile benzer konudaki kitapları elinize verebilen bir kütüphaneci gibidir. Vektör veritabanları anlamsal arama, öneri sistemleri, yinelenen kayıt tespiti, görüntü arama ve RAG uygulamalarının getirme adımı için kullanılır.

Vektör veritabanı her zaman ayrı bir ürün olmak zorunda değildir. Birçok ilişkisel ve NoSQL veritabanı artık vektör sütunlarını ve vektör indekslerini destekler; bu yüzden küçük ve orta ölçekli projeler embedding'leri çoğu zaman mevcut verilerinin yanında tutabilir. Özel bir vektör veritabanı esas olarak çok büyük koleksiyonlarda düşük gecikmeyle arama yapmanız gerektiğinde karşılığını verir.

Önemli noktalar

  • Vektör veritabanı embedding'leri saklar ve bir sorguya en benzer olanları bulur.
  • Benzerliği kosinüs benzerliği ya da Öklid uzaklığı gibi ölçütlerle hesaplar.
  • Yaklaşık en yakın komşu indeksleri milyonlarca vektör arasında aramayı hızlı yapar.
  • Anlamsal arama ve RAG için olağan getirme katmanıdır.
  • Birçok sıradan veritabanı artık vektör aramasını yerleşik bir özellik olarak sunar.

Örnek

Vektörleri saklamak ve aramaktypescript
// vectorDb and embed are placeholders for a real client and embedding model
await vectorDb.upsert("docs", [
  { id: "1", vector: await embed("How to reset your password"), metadata: { team: "support" } },
  { id: "2", vector: await embed("Quarterly revenue report"), metadata: { team: "finance" } },
]);

// Search by meaning: returns the closest vectors, not exact keyword matches
const results = await vectorDb.query("docs", {
  vector: await embed("I forgot my login"),
  topK: 1,
  filter: { team: "support" },
});

console.log(results[0].id); // "1"

Sık sorulan sorular

Neden sıradan bir veritabanı yerine vektör veritabanı kullanılır?

Sıradan veritabanı indeksleri, bir kullanıcıyı e-postasıyla bulmak gibi birebir eşleşmeler ve aralıklar için geliştirilmiştir. Vektör veritabanı ise anlamı benzer öğeleri bulmak için tasarlanmıştır; anahtar kelime ya da birebir eşleşme sorguları bunu yapamaz.

Yaklaşık en yakın komşu araması nedir?

Yaklaşık en yakın komşu (ANN) araması, kayıtlı her vektörü kontrol etmeden sorguya çok yakın vektörleri bulur. Ara sıra kesin en iyi eşleşmeyi kaçırabilir, ancak büyük veri kümelerinde çok daha hızlıdır.

İlişkisel bir veritabanı vektör saklayabilir mi?

Evet. Birçok ilişkisel veritabanı yerleşik özellikler ya da eklentiler aracılığıyla vektör sütunlarını ve benzerlik aramasını destekler. Birçok uygulama için bu yeterlidir ve ayrı bir sistemi çalıştırmayı ve senkronize etmeyi önler.

İlgili sayfalar

Bu sayfada bir hata ya da eksik mi gördünüz?Düzeltme önerin

Daha fazla

Ayarlar