Vektör veritabanı nedir?

Hızlı yanıt

Vektör veritabanı, bir yapay zeka modelinin anlamı temsil etmek için ürettiği sayı listeleri olan gömme verilerini saklamak ve bir sorguya en yakın kayıtları milisaniyeler içinde döndürmek üzere tasarlanmış bir veritabanıdır. Belgelerinle sohbet etme ve anlamsal aramadaki arama adımıdır. Metin, modele bütün halinde gönderilemeyecek kadar büyük olduğunda buna ihtiyaç duyarsın.

Vektör veritabanı tek bir soruyu çok hızlı yanıtlar

Ona bir sayı listesi ver, sana saklı listeler arasından ona en yakın olanları döndürsün. Arayüzün tamamı bu.

Bu listeler gömme (embedding) verileridir. Bir gömme modeli, bir pasajı, bir ürün açıklamasını veya bir görseli birkaç yüzden birkaç bine kadar sayıya dönüştürür ve benzer anlamları birbirine yakın yerleştirir; yapay zekada gömme (embedding) nedir bunun nasıl yapıldığını anlatır. Bu listeler çok sayıda biriktiğinde barındıkları yer bir vektör veritabanıdır. Her birini bir kimlik ve bazı meta verilerle saklar, üzerlerine bir indeks kurar ve en yakın komşu aramasını yanıtlar: "işte bir sorgu vektörü, bana en yakın on taneyi ver."

Zor kısım "hızlı" kelimesidir. Her biri 1.536 sayıdan oluşan bir milyon saklı vektörle bir sorguyu karşılaştırmak 1,5 milyar çarpma demektir ve bunu her tuş vuruşunda yapmak ölçeklenmez. Bu yüzden vektör veritabanları yaklaşık en yakın komşu indeksleri kullanır; en yaygını, Malkov ve Yashunin'in 2016 tarihli makalesinden gelen bir grafik yapısı olan HNSW'dir. Bu yapı bir milyon aday yerine birkaç yüzünü ziyaret eder ve neredeyse her seferinde doğru yanıtı verir. Bu "neredeyse" bir takas anlamına gelir: bin kat hız artışı karşılığında biraz kesinlik kaybı.

Mevcut veritabanın kelimeleri eşleştirir; vektör veritabanı anlamı eşleştirir

İlişkisel bir veritabanı değerleri eşleşen satırları bulur: WHERE customer_id = 4127. Tam metin indeksi belirli kelimeleri içeren belgeleri bulur: refund AND policy. Vektör veritabanı ise anlamı yakın olan kayıtları bulur: "param nasıl geri alınır" sorgusu, iki metin ortak hiçbir kelime paylaşmasa bile "İadeler ve geri ödemeler" başlıklı pasajı döndürür.

İlişkisel veritabanıTam metin aramaVektör veritabanı
SorarHangi satırlar bu değerle eşleşiyor?Hangi belgeler bu kelimeleri içeriyor?Hangi kayıtlar buna anlamca yakın?
İndeksSütunlar üzerinde B-treeTerimler üzerinde ters indeksVektörler üzerinde grafik veya kümeleme (HNSW, IVF)
Kesin mi?EvetEvetGenellikle yaklaşık
İyi olduğu alanKimlikler, tarihler, tutarlar, birleştirmelerİsimler, kodlar, tam ifadelerEş anlamlılar, yeniden ifade, diller arası, görseller
Zayıf olduğu alanAnlamAnlamTam dizeler, sayma, değere göre filtreleme
ÖrneklerPostgres, MySQL, SQLiteElasticsearch, LucenePinecone, Weaviate, Qdrant, Milvus, Chroma, pgvector

Son satır kategorinin ne kadar bulanık olduğunu gösteriyor. pgvector, sıradan Postgres'e vektör sütunları ve bir HNSW indeksi ekler; Elasticsearch ise 2019'daki 7.0 sürümünden beri bir vektör alanı, 2022'deki 8.0 sürümünden beri de HNSW arama taşıyor. "Vektör veritabanı" çoğu zaman yeni bir ürün değil, halihazırda kullandığın bir veritabanının içindeki bir yetenektir; bağımsız ürünler ise Postgres'in yapamadığı bir şeyi yapmak yerine ölçek ve operasyonel cila konusunda rekabet eder.

Belgelerinle sohbet etmek, ucunda model olan bir vektör aramasıdır

RAG nedir sayfasının anlattığı erişim destekli üretimin (retrieval-augmented generation) bir arama adımı, bir de yazma adımı vardır. Vektör veritabanı arama adımıdır.

  1. Her belgeyi birkaç yüz ile bin token arasındaki pasajlara böl.
  2. Her pasajı göm ve vektörleri, pasaj metniyle ve kaynağıyla birlikte vektör veritabanında sakla.
  3. Bir soru geldiğinde onu göm ve veritabanından en yakın pasajları iste.
  4. Bu pasajları soruyla birlikte dil modeline ver ve yanıtı yazmasına izin ver.

Birinci ve ikinci adımlar belgeler eklenirken bir kez gerçekleşir. Üçüncü ve dördüncü adımlar ise her soruda gerçekleşir. Dil modeli koleksiyonun tamamını hiçbir zaman görmez; yalnızca veritabanının seçtiği beş ya da on pasajı görür. Yanıtın kalitesinin aramanın kalitesine bağlı olmasının nedeni budur: en yakın vektör yanlış pasajsa model kendinden emin biçimde yanlış soruyu yanıtlar; yapay zeka halüsinasyonu nedir bunu bir uydurma değil bir erişim hatası olarak sınıflandırır.

Ne zaman buna ihtiyacın var, ne zaman tüm dosyayı göndermek daha iyi

Karar boyutla ilgilidir. Bir model aynı anda yalnızca kendi bağlam penceresini değerlendirebilir ve içindeki her token her turda ücretlendirilir. Vektör veritabanının amacı, modelin önüne yalnızca ilgili kısmı koymaktır. Sığan tek bir belge için erişim atlanabilecek bir adımdır; sığmayan bir koleksiyon için ise tek seçenektir.

İki tasarımı 300.000 tokenlık, birkaç yüz sayfalık bir raporda, on soru sorularak ve soru başına beş adet 1.000 tokenlık pasaj çekilerek fiyatlandıralım. Dosyanın tamamını her seferinde göndermek 3 milyon girdi tokeni demektir. Soru başına beş adet 1.000 tokenlık pasaj çekmek ise 50.000 token demektir. Yapay zeka model maliyet endeksindeki, 2026-08-20 tarihinde OpenRouter'dan alınan liste girdi fiyatlarına göre fark her modelde 60 kattır. Sağlayıcının sunduğu yerlerde önbelleğe alınan istemler (prompt caching), aynı dosyanın yeniden okunmasını liste fiyatının onda biri ile yarısı arasında bir bedelle faturalandırır; bu da farkı kabaca 6 ile 30 kat arasına indirir. Erişim yine de kazanır, ama daha az farkla.

300.000 tokenlık bir raporda sorulan on soru, dosya her seferinde gönderilirse 60 kat daha pahalıya mal olur
çekilen pasajlarher turda tüm dosya$0$5$10$15liste fiyatı, on soruGPT-5.6 Luna$0.01$0.6060xGemini 3.7 Flash$0.019$1.1360xClaude Sonnet 5$0.10$6.0060xClaude Opus 5$0.25$15.0060x

Tüm dosyayı gönderme tasarımı, dosya bütçeye sığdığında bu paranın karşılığını verir: yaklaşık 40.000 tokenlık, 60 sayfalık bir sözleşme, modelin "burada 14. madde ile çelişen bir şey var mı" gibi belgenin tamamını aynı anda gerektiren soruları yanıtlamasına izin verir; erişim bunu soramaz çünkü 14. maddeyi ve olası çelişkiyi asla aynı grupta görmez. Buradan çıkan kural şudur: tek bir belge, ya da bir avuç belge, bütün halinde girer; bir kütüphane ise vektör veritabanından geçer. İkisi arasında kalıyorsan yüklemeyi konuya göre böl, böylece model ihtiyaç duyduğu bölümü alır.

Whizi, 40.000 tokenlık bir tur sınırına kadar metnin kendisini gönderir

Whizi, sohbetin için bir vektör veritabanı çalıştırmaz. Bir dosya eklediğinde belge yükleme süreci metni çıkarır ve tur başına düz 40.000 tokenlık bir bütçeye kadar model istemine metin olarak gönderir; daha uzun bir yükleme, bir bildirimle ve mesaj içi bir işaretçiyle belirtilerek kesilir. Proje dosyaları da aynı şekilde çalışır: projeler özelliği en fazla 10 dosyayı sabitler ve her mesajda metinlerini yeniden istemin içine kurar; bu, dosya başına 32.000 karakterle ve tüm proje bloğu için 120.000 karakterle sınırlıdır.

Sınırlar tasarımın kenarını oluşturur. 32.000 karakteri aşan sabitlenmiş bir dosya kısaltılır, 40.000 tokenlık tur bütçesini aşan bir ek kesilir ve bir proje aranabilir bir kütüphane değil bir klasördür. Bu takas bilinçli olarak yapılmıştır: tur bütçesine sığan bir sözleşme veya makale için metnin orada bulunması, aranmasından daha iyidir; asıl önemli kontrol olan modelden kullandığı pasajı alıntılamasını istemek işe yarar çünkü pasaj gerçekten oradadır. Binlerce belge için doğru araç bir vektör veritabanıdır, bir sohbet uygulaması değil.

Bu mekanizmadan iki alışkanlık devreye girer. Birden fazla dosya eklendiğinde sorununda dosyayı adıyla an, aksi halde model sessizce kendi seçimini yapar. Ve harekete geçeceğin her yanıtta alıntı iste. Bir erişim sistemi yanlış pasajı döndürebilir; tüm dosyayı gönderen bir sistem ise dosya yerine hafızasından yanıt verebilir. Alıntı her ikisini de yakalar.

Kontrol listesi
  • Tek bir belgeyi bütün halinde gönder; bir koleksiyonu ise bir vektör veritabanının arkasına koy
  • Uzun bir yüklemeyi konuya göre böl, böylece model sorunun ihtiyaç duyduğu bölümü alır
  • Yanıta güvenmeden önce modelden kullandığı pasajı alıntılamasını iste
  • Kimlikler, kodlar ve tam ifadeler için düz metin aramasını kullan; vektör araması karakterleri değil anlamı eşleştirir
  • Bir erişim hatasını bir arama sorunu olarak ele al: yazar modeli suçlamadan önce daha iyi bir modelle veya daha küçük pasajlarla yeniden göm

Sık sorulan sorular

Vektör veritabanı basit anlatımla nedir?

Bir yapay zeka modelinin anlamı temsil etmek için kullandığı sayı listelerini saklayan ve en yakın eşleşmeleri hızlıca bulmak için tasarlanmış bir depodur. Ona bir sorunun gömme verisini verirsin, o da anlamca benzer gömme verilerini ve arkalarındaki metni döndürür. Koleksiyon bütün halinde gönderilemeyecek kadar büyük olduğunda belgelerinle sohbet etmenin arama yarısıdır.

Belgelerimle yapay zeka kullanmak için vektör veritabanına ihtiyacım var mı?

Yalnızca belgeler modelin bağlam penceresine sığmayacaksa. Tek bir rapor veya sözleşme modele bütün halinde gönderilebilir; Whizi'nin ekler ve sabitlenmiş proje dosyalarıyla yaptığı da budur. Binlerce belgeden oluşan bir kütüphane ise erişim gerektirir ve erişim, ister özel bir üründe ister pgvector gibi bir Postgres uzantısında olsun, bir vektör indeksi gerektirir.

Vektör veritabanı ile normal bir veritabanı arasındaki fark nedir?

Normal bir veritabanı değerleri eşleştirir: bu kimlik, bu tarih, bu tam kelime. Vektör veritabanı ise anlamı eşleştirir ve gömme verileri sorgununkine en yakın olan kayıtları döndürür. Genellikle yaklaşıktır; her kayıt yerine birkaç yüz adayı kontrol eden HNSW gibi bir indeks kullanır ve normal bir veritabanının iyi yaptığı tam eşleştirmede zayıftır.

En çok kullanılan vektör veritabanları hangileri?

Pinecone, Weaviate, Qdrant, Milvus ve Chroma en yaygın bağımsız ürünlerdir; pgvector aynı yeteneği Postgres'e ekler. Elasticsearch ve OpenSearch da vektör araması sunar. Seçim genellikle operasyoneldir, ölçek ve barındırmayla ilgilidir, çünkü hepsi aynı yaklaşık en yakın komşu fikrini uygular.

Erişim, tüm dosyayı göndermeye kıyasla ne kadar tasarruf sağlar?

300.000 tokenlık bir raporda sorulan on soru, dosya her turda gönderilirse Claude Sonnet 5'te $6.00'a, bunun yerine beş adet 1.000 tokenlık pasaj çekilirse $0.10'a mal olur; bu, 2026-08-20 tarihinde alınan OpenRouter liste fiyatlarına göredir. GPT-5.6 Luna'da aynı çift $0.60'a karşı $0.01'dir. Oran her modelde 60 kattır çünkü iki tasarım da aynı token başına ücreti öder.