LLM'lerin ve anlamsal aramanın yükselişi, arama, öneri ve getirme sistemlerini nasıl kurduğumuzu kökten değiştirdi. Geleneksel anahtar kelime araması—ister SQL LIKE ile, ister Lucene inverted ya da tam metin indeksleriyle olsun—kullanıcılar doğal dil anlama beklediğinde giderek yetersiz kalıyor.
İşte bu noktada gömlemeler (embeddings) ve vektör veritabanları devreye giriyor.
MongoDB bu alanda Atlas Vector Search ile hızla evrildi ve geliştiricilere belgeler + meta veriler + vektörler için tek bir veritabanı—tek bir API altında—sundu. Bu rehberde şunları ele alacağız:
MongoDB, verileri esnek BSON belgelerde saklayan belge odaklı bir NoSQL veritabanıdır—BSON, yaygın olarak web tabanlı uygulamalarda veri iletimi ve depolaması için kullanılan metinsel bir nesne gösterimi olan JavaScript Object Notation'ın (JSON) ikili kodlanmış halidir. Katı ilişkisel veritabanlarının aksine, MongoDB şema evrimini basitleştirir ve şunları sunar:
Yatay ölçeklenebilirlik (parçalama).
Zengin toplu işleme (aggregation) çerçevesi.
Tam metin arama.
Vektör araması.
Zaman serisi koleksiyonları.
Şema esnekliği.
Tamamen yönetilen bulut hizmeti olan MongoDB Atlas, bunları şu özelliklerle genişletir:
Otomatik ölçekleme, yedekleme, güvenlik ve izleme.
Vektörler sıklıkla meta verilerle yan yana bulunduğu ve MongoDB Atlas bunların hepsini tek bir sistemde topladığı için, MongoDB yapay zeka iş yükleri için güçlü bir seçenek haline geldi.
Gömlemeler Nedir ve Neden Sorgu Gömlemelerini Kullanırız?
Yapay zeka uygulamalarında arama veya getirme ile çalışırken, karşılaştığınız ilk kavramlardan biri gömlemelerdir (embeddings).
Bir gömme, özünde bir metnin (veya görsel, ses vb.) anlamını yakalayan, kayan noktalı değerlerden oluşan uzun bir listedir. Tam sözcüklere bakmak yerine, gömlemeler metni, benzer fikirlerin birbirine yakın düştüğü bir vektör uzayına eşler. Örneğin, üç farklı kullanıcı ifadesini düşünün:
Faturalandırma sorunu
Ödeme hatası
Maaş yatmadı
Kelimeler farklı olsa da üçü de finansal bir sorunu tarif ediyor. İyi bir gömme modeli, bu metinleri vektör uzayında birbirine yakın konumlandırır; böylece anahtar kelimelere değil, anlama dayalı olarak bunları getirebilirsiniz.
Bu, kullanıcı bir arama yaptığında özellikle önemlidir. Yazdıkları metin—“Maaşım neden gecikti?”—de bir gömmeye dönüştürülür. Bu yeni vektöre sorgu gömlemesi denir. Ardından bu sorgu vektörünü, hangi belgelerin anlamsal olarak benzer olduğunu bulmak için tüm saklanan gömlemelerle karşılaştırırsınız. Vektörler ne kadar yakınsa, sonuç o kadar alakalıdır.
MongoDB Atlas, bu iş akışının tamamını Atlas Vector Search ile son derece basitleştirir. Belgelerinizi ve gömlemelerini bir MongoDB koleksiyonunda sakladıktan sonra Atlas, ölçekli bir şekilde benzer belgeleri hızla getirebilen bir vektör indeksi (arka planda HNSW kullanır) oluşturur. Örneğin, destek makalelerini gömlemeleriyle saklarsanız, şöyle bir sorgu…
query ="Why isn't my salary showing up this month?"
query_vec = get_embedding(query)# Explained in below examplesAltyapı:
MongoDB, anahtar kelime eşleme ya da manuel puanlama yapmanıza gerek kalmadan, gömlemeleri sorguya en yakın olan ilk 3 destek makalesini otomatik olarak döndürür.
MongoDB Atlas'taki gömlemelerin gücü budur: yalnızca metni değil, anlamı saklarsınız ve yalnızca sözcüklere değil, amaca göre sorgularsınız. Bu dönüşüm, gömlemelerin anlamsal arama, RAG sistemleri, yapay zeka asistanları ve akıllı bilgi tabanları için temel bir yapı taşı haline gelmesinin nedenidir.
LLM'inize bilgi tabanınızdan doğru bağlam besleyin
Kırılgan anahtar kelime aramasını değiştirin
Derin anlayış gerektiren sohbet botları
Portal yardım masası
Müşteri desteği
Ürün önerisi
“Bu ürüne benzer ürünler”
Belge veya çoğaltma tespiti
Kümeleme
Konu gruplama
Anahtar kelime araması başarısız olduğunda
“maaş yatırma gecikmesi” ile “ödeme işleme sorunu” gibi sorgular
Şu durumlarda gömlemeleri kullanmayın:
Tam eşleşme gerekiyorsa (ID'ler, fatura numaraları).
Veri kümeniz çok küçükse (basit arama yeterlidir).
Sayısal filtreleme/karşılaştırma gerekiyorsa (bunu meta verilerle yapmalısınız).
Gömlemeler MongoDB'de Nasıl Saklanır
MongoDB'nin güzelliği, gömlemelerin doğal olarak belgelere sığmasıdır. Bunları yalnızca float dizileri olarak saklarsınız.
Örnek belge şeması
Tipik bir belge yapısı şöyledir:
{"_id":"uuid-123","text":"This is a sample document about MongoDB vector search.","embedding":[0.123,-0.241,0.998, ...],"tags":["mongodb","vector","ai"],"createdAt":"2025-01-01T10:20:00Z"}Altyapı:
Aklınızda tutmanız gereken önemli noktalar:
Bir koleksiyondaki her gömmenin aynı boyutsallığa sahip olması gerekir.
Gömlemeler ideal olarak float32 olarak saklanmalıdır (MongoDB dahili olarak float64'e dönüştürür).
Belgeleriniz uzunsa, gömmeye geçmeden önce onları parçalara ayırın (chunk).
Meta verileri ayrı saklayın—etiketler, kategori, URL, zaman damgaları vb. Bu, hibrit aramayı güçlü kılar.
MongoDB'de Vektör İndeksi Oluşturma (Kritik Adım)
Gömlemeleri saklamadan veya sorgulamadan önce MongoDB Atlas'ta bir vektör arama indeksi oluşturmalısınız.
MongoDB Atlas'ta şu yolu izleyin:Atlas → Database → Collections → Search → Create Search Index
Daha büyük büyüklük VE hizalanma → daha büyük skor
Vektör uzunluğuna duyarlıdır
Kendiliğinden normalleştirilmez
Ne zaman kullanılır
Daha uzun vektörlerin daha fazla etkisi olmasını istediğinizde veya gömme modeliniz noktasal çarpımı esas alarak eğitildiyse noktasal çarpımı kullanın.
Yaygın kullanım alanları
iç çarpım puanlamasını varsayan büyük dil modeli gömlemeleri
Sinir ağı benzerlik katmanları
Özellik “gücü”nün anlamlı olduğu öneri modelleri
Hızlı kural
Ölçüt
Şunlar için iyi
Şu durumda kaçının
Kosinüs
Metin, anlamsal arama, genel gömlemeler
Büyüklük önemliyse
Öklidyen
Görseller, geometrik özellikler, kümeleme
Veri keyfi ölçeklemeye sahipse
Noktasal çarpım
İç çarpımla eğitilmiş modeller, öneri sistemleri
Büyüklükler benzerliği çarpıtıyorsa
Gömleme Oluşturma, Saklama ve Sorgulama (Python Eğitimi)
Bunu gerçek bir sistem kuruyormuşuz gibi adım adım ele alalım.
OpenAI kullanarak (tercih ettiğiniz herhangi bir gömme sağlayıcısıyla değiştirebilirsiniz):
import os
from openai import OpenAI
os.environ["OPENAI_API_KEY"]="your_api_key_here"
client = OpenAI()defget_embedding(text:str):
response = client.embeddings.create(
model="text-embedding-3-small",input=text
)return response.data[0].embeddingAltyapı:
MongoDB'ye bağlanın ve belgeleri ekleyin
OpenAI kullanarak (tercih ettiğiniz herhangi bir gömme sağlayıcısıyla değiştirebilirsiniz):
from pymongo import MongoClient
import uuid
mongo = MongoClient("<MONGODB_ATLAS_URI>")
db = mongo["vector_db"]
collection = db["documents"]
text ="This is a sample document about MongoDB vector search."
embedding = get_embedding(text)
document ={"_id":str(uuid.uuid4()),"text": text,"embedding": embedding,"tags":["mongodb","search"],}
collection.insert_one(document)print("Document inserted successfully!")Altyapı:
Bu noktada verileriniz anlamsal arama için hazırdır.
MongoDB'de gömlemeleri sorgulama
Şimdi sıra eğlenceli kısımda: vektör sorgusu kullanarak benzer belgeleri getirmek. MongoDB, bir toplama (aggregation) hattında $vectorSearch kullanır.
Sorgu vektörünü oluşturun
from pymongo import MongoClient
query ="How does MongoDB handle semantic search?"
query_vec = get_embedding(query)Altyapı:
Vektör araması yapın (sorgu gömlemeleri)
results = collection.aggregate([{"$vectorSearch":{"index":"vector_index","path":"embedding","queryVector": query_vec,"numCandidates":100,"limit":5,"similarity":"cosine"}},{"$project":{"text":1,"score":{"$meta":"vectorSearchScore"}}}])for r in results:print(r)Altyapı:
Bu, anlamsal olarak en benzer beş belgeyi döndürür.
Anlamsal arama istediğiniz RAG hatları için bu çok güçlüdür.
Yukarıdaki sorgunun adım adım açıklaması
$vectorSearch → Belge alanı olan embedding'in, belirtilen benzerlik ölçütünü kullanarak queryVector'a en yakın olduğu belgeleri bulur
numCandidates → Motorun nihai üst sonuçları seçmeden önce kaç potansiyel eşleşmeyi değerlendireceği
limit → Döndürülecek nihai benzer sonuç sayısı
$project → Orijinal metni ve score adlı özel alanı döndürür
Score alanı nedir?
MongoDB Atlas Vector Search, "score": {"$meta": "vectorSearchScore"} adlı özel bir meta veri alanı döndürür; bu alan, saklanan bir vektörün sorgu vektörünüze ne kadar benzer olduğunu gösterir.
Skorun anlamı, aşağıda açıklandığı gibi, seçtiğiniz benzerlik ölçütüne bağlıdır:
Benzerlik ölçütü
Skor neyi ifade eder
Yüksek skor = daha benzer mi?
Skor aralığı
cosine
Vektörler arasındaki açı benzerliği
Evet
–1 ila +1
euclidean
Negatif L2 mesafesi
Hayır—0'a yakınsa daha benzer
–∞ ila 0
dotProduct
Vektör büyüklüğü hizalanması
Evet
–∞ ila +∞
En İyi Uygulamalar
Uzun belgeleri parçalayın (her biri 300–500 token): Daha iyi alaka + uzun blokları gömmekten kaçınır
Meta verileri ayrı saklayın: Filtreleme ve sıralamaya yardımcı olur
Gömleme üretimini toplu yapın: Verimi artırır ve model maliyetini düşürür
Modelinizde float32 gömlemeler kullanın: MongoDB dahili olarak float64 kullanır ama float32 dizilerini kabul eder
Yalnızca vektör alanını indeksleyin: İndeksteki fazladan alanlar bellek ve gecikmeyi artırır
Kaçınılması Gereken Yaygın Tuzaklar
Sorun
Neden olur
Boyut uyuşmazlığı
Sorgu vektörü boyutu ≠ indeks boyutu
İlgisiz sonuçlar
Saklama ve sorguda farklı modellerin kullanılması
Yavaş arama
Çok fazla numCandidates ya da büyük küme gereksinimleri
Belge çok büyük
16MB belge sınırı
Yanlış benzerlik ölçütü
Model kosinüs için eğitildi ama noktasal çarpım kullanılıyor
Son Düşünceler
Gömlemeler ve anlamsal arama artık modern yapay zeka ürünlerinin temelini oluşturuyor. Bir sohbet botu, RAG hattı, öneri motoru veya akıllı arama katmanı kuruyor olun, vektörleri güvenilir şekilde saklayıp verimli biçimde sorgulamanız gerekir.
MongoDB size şu unsurların bir arada bulunduğu bir birleşik platform sunar:
Metniniz burada yaşar.
Meta verileriniz burada yaşar.
Gömlemeleriniz burada yaşar.
Vektör aramanız burada çalışır.
Her şey birlikte ölçeklenir.
Bu, ayrı veritabanlarıyla uğraşma karmaşıklığını ortadan kaldırır ve altyapı yerine ürün yeteneklerini inşa etmeye odaklanmanızı sağlar.
FAQs
MongoDB'yi gömlemeler için kullanıyorsam ayrı bir vektör veritabanına ihtiyacım var mı?⌄
Hayır. MongoDB Atlas Vector Search yerleşiktir; böylece Pinecone veya Milvus gibi ayrı bir vektör veritabanı kullanmadan belgeleri, meta verileri ve vektörleri aynı yerde saklayabilirsiniz.
MongoDB'de hangi gömme boyutsallığını kullanmalıyım?⌄
Gömleme modelinizin sağladığı boyutsallığı kullanın (ör. 768 veya 1536). Bir koleksiyondaki tüm belgeler, vektör indeksinin boyutuyla aynı boyutu kullanmalıdır.
MongoDB hibrit arama (meta veri + vektör araması) yapabilir mi?⌄
Aynı toplama hattında önce $match ile filtreleyip ardından $vectorSearch uygulayabilirsiniz—RAG ve öneri sistemleri için idealdir.
MongoDB, büyük ölçekli vektör arama iş yükleri için uygun mu?⌄
Evet. MongoDB, Atlas Search'te HNSW tabanlı indekslemeyi kullanır ve milyonlarca belge için iyi ölçeklenir. İşlem hacmi, indeks boyutuna, küme katmanına ve iş yükü örüntülerine bağlıdır.
MongoDB ile herhangi bir gömme modelini kullanabilir miyim?⌄
Kesinlikle. MongoDB modelden bağımsızdır. Boyutlar indeksle eşleştiği sürece OpenAI, HuggingFace, Cohere, yerel modeller veya özel gömlemeleri kullanabilirsiniz.
Algoritmalar, sistem tasarımı ve davranışsal senaryoları kapsayan bu temel sorularla teknik mülakat sürecine hakim olun. Uzman cevapları, kod örnekleri ve kanıtlanmış hazırlık stratejileri edinin.
Git deponuzu temiz tutmak için .gitignore’u nasıl kullanacağınızı öğrenin. Bu eğitim; temelleri, yaygın kullanım durumlarını ve başlamanıza yardımcı olacak pratik örnekleri kapsar!
LLM'lerin ve anlamsal aramanın yükselişi, arama, öneri ve getirme sistemlerini nasıl kurduğumuzu kökten değiştirdi. Geleneksel anahtar kelime araması—ister SQL LIKE ile, ister Lucene inverted ya da tam metin indeksleriyle olsun—kullanıcılar doğal dil anlama beklediğinde giderek yetersiz kalıyor.
İşte bu noktada gömlemeler (embeddings) ve vektör veritabanları devreye giriyor.
MongoDB bu alanda Atlas Vector Search ile hızla evrildi ve geliştiricilere belgeler + meta veriler + vektörler için tek bir veritabanı—tek bir API altında—sundu. Bu rehberde şunları ele alacağız:
Bu eğitim uygulamalıdır ve geri getirme ile zenginleştirilmiş üretim (RAG), benzerlik araması veya öneri hattınıza entegre etmeye hazırdır.
MongoDB nedir?
MongoDB, verileri esnek BSON belgelerde saklayan belge odaklı bir NoSQL veritabanıdır—BSON, yaygın olarak web tabanlı uygulamalarda veri iletimi ve depolaması için kullanılan metinsel bir nesne gösterimi olan JavaScript Object Notation'ın (JSON) ikili kodlanmış halidir. Katı ilişkisel veritabanlarının aksine, MongoDB şema evrimini basitleştirir ve şunları sunar:
Tamamen yönetilen bulut hizmeti olan MongoDB Atlas, bunları şu özelliklerle genişletir:
Vektörler sıklıkla meta verilerle yan yana bulunduğu ve MongoDB Atlas bunların hepsini tek bir sistemde topladığı için, MongoDB yapay zeka iş yükleri için güçlü bir seçenek haline geldi.
Gömlemeler Nedir ve Neden Sorgu Gömlemelerini Kullanırız?
Yapay zeka uygulamalarında arama veya getirme ile çalışırken, karşılaştığınız ilk kavramlardan biri gömlemelerdir (embeddings).
Bir gömme, özünde bir metnin (veya görsel, ses vb.) anlamını yakalayan, kayan noktalı değerlerden oluşan uzun bir listedir. Tam sözcüklere bakmak yerine, gömlemeler metni, benzer fikirlerin birbirine yakın düştüğü bir vektör uzayına eşler. Örneğin, üç farklı kullanıcı ifadesini düşünün:
Kelimeler farklı olsa da üçü de finansal bir sorunu tarif ediyor. İyi bir gömme modeli, bu metinleri vektör uzayında birbirine yakın konumlandırır; böylece anahtar kelimelere değil, anlama dayalı olarak bunları getirebilirsiniz.
Bu, kullanıcı bir arama yaptığında özellikle önemlidir. Yazdıkları metin—“Maaşım neden gecikti?”—de bir gömmeye dönüştürülür. Bu yeni vektöre sorgu gömlemesi denir. Ardından bu sorgu vektörünü, hangi belgelerin anlamsal olarak benzer olduğunu bulmak için tüm saklanan gömlemelerle karşılaştırırsınız. Vektörler ne kadar yakınsa, sonuç o kadar alakalıdır.
MongoDB Atlas, bu iş akışının tamamını Atlas Vector Search ile son derece basitleştirir. Belgelerinizi ve gömlemelerini bir MongoDB koleksiyonunda sakladıktan sonra Atlas, ölçekli bir şekilde benzer belgeleri hızla getirebilen bir vektör indeksi (arka planda HNSW kullanır) oluşturur. Örneğin, destek makalelerini gömlemeleriyle saklarsanız, şöyle bir sorgu…
…doğrudan MongoDB'de kullanılabilir:
MongoDB, anahtar kelime eşleme ya da manuel puanlama yapmanıza gerek kalmadan, gömlemeleri sorguya en yakın olan ilk 3 destek makalesini otomatik olarak döndürür.
MongoDB Atlas'taki gömlemelerin gücü budur: yalnızca metni değil, anlamı saklarsınız ve yalnızca sözcüklere değil, amaca göre sorgularsınız. Bu dönüşüm, gömlemelerin anlamsal arama, RAG sistemleri, yapay zeka asistanları ve akıllı bilgi tabanları için temel bir yapı taşı haline gelmesinin nedenidir.
Sorgu Gömlemelerini Ne Zaman Kullanmalı
Şunu istediğinizde gömlemeleri kullanın: anlamsal benzerlik; örneğin:
Geri getirme ile zenginleştirilmiş üretim (RAG)
Derin anlayış gerektiren sohbet botları
Ürün önerisi
Belge veya çoğaltma tespiti
Anahtar kelime araması başarısız olduğunda
Şu durumlarda gömlemeleri kullanmayın:
Gömlemeler MongoDB'de Nasıl Saklanır
MongoDB'nin güzelliği, gömlemelerin doğal olarak belgelere sığmasıdır. Bunları yalnızca float dizileri olarak saklarsınız.
Örnek belge şeması
Tipik bir belge yapısı şöyledir:
Aklınızda tutmanız gereken önemli noktalar:
MongoDB'de Vektör İndeksi Oluşturma (Kritik Adım)
Gömlemeleri saklamadan veya sorgulamadan önce MongoDB Atlas'ta bir vektör arama indeksi oluşturmalısınız.
MongoDB Atlas'ta şu yolu izleyin: Atlas → Database → Collections → Search → Create Search Index
Şuna benzer bir tanım kullanın:
Bu, MongoDB'ye şunları söyler:
Bu indeks, tüm vektör arama sorgularını güçlendirir.
MongoDB, yerel vektör arama yetenekleri sunar ve şunları destekler:
Seçimi gömme modelinize göre yapın—peki neyi seçeceğimizi nasıl bileceğiz? Derinlemesine bakalım.
Kosinüs benzerliği
Ne ölçer
İki vektörün ne kadar hizalı olduğunu—yani aralarındaki açıyı—ölçer. Büyüklüğü yok sayar ve yalnızca yönü dikkate alır.
Sezgi
Ne zaman kullanılır
Büyüklük önemli olmadığında, yalnızca ifade edilen örüntü ya da kavram önemli olduğunda kosinüsü kullanın.
Yaygın kullanım alanları
Kosinüs, çoğu gömme modeli için en güvenli varsayılandır.
Öklidyen mesafe
Ne ölçer
Uzaydaki iki vektör arasındaki doğrusal mesafeyi ölçer.
Sezgi
Ne zaman kullanılır
Mutlak değerler ve büyüklükler önemli olduğunda, yalnızca yönden ibaret olmadığında Öklidyen'i kullanın.
Yaygın kullanım alanları
Veriniz doğal olarak geometrik bir uzayda yaşıyorsa (ör. piksel yoğunlukları), Öklidyen sıklıkla daha mantıklıdır.
Noktasal çarpım (dot product)
Ne ölçer
Benzerlik ile büyüklüğün birleşimini ölçer.
Matematiksel olarak: dot(u, v) = |u| × |v| × cos(θ)
Sezgi
Ne zaman kullanılır
Daha uzun vektörlerin daha fazla etkisi olmasını istediğinizde veya gömme modeliniz noktasal çarpımı esas alarak eğitildiyse noktasal çarpımı kullanın.
Yaygın kullanım alanları
Hızlı kural
Ölçüt
Şunlar için iyi
Şu durumda kaçının
Kosinüs
Metin, anlamsal arama, genel gömlemeler
Büyüklük önemliyse
Öklidyen
Görseller, geometrik özellikler, kümeleme
Veri keyfi ölçeklemeye sahipse
Noktasal çarpım
İç çarpımla eğitilmiş modeller, öneri sistemleri
Büyüklükler benzerliği çarpıtıyorsa
Gömleme Oluşturma, Saklama ve Sorgulama (Python Eğitimi)
Bunu gerçek bir sistem kuruyormuşuz gibi adım adım ele alalım.
Bağımlılıkları kurun
Gömlemeleri oluşturun
OpenAI kullanarak (tercih ettiğiniz herhangi bir gömme sağlayıcısıyla değiştirebilirsiniz):
MongoDB'ye bağlanın ve belgeleri ekleyin
OpenAI kullanarak (tercih ettiğiniz herhangi bir gömme sağlayıcısıyla değiştirebilirsiniz):
Bu noktada verileriniz anlamsal arama için hazırdır.
MongoDB'de gömlemeleri sorgulama
Şimdi sıra eğlenceli kısımda: vektör sorgusu kullanarak benzer belgeleri getirmek. MongoDB, bir toplama (aggregation) hattında $vectorSearch kullanır.
Sorgu vektörünü oluşturun
Vektör araması yapın (sorgu gömlemeleri)
Bu, anlamsal olarak en benzer beş belgeyi döndürür.
Anlamsal arama istediğiniz RAG hatları için bu çok güçlüdür.
Yukarıdaki sorgunun adım adım açıklaması
$vectorSearch → Belge alanı olan embedding'in, belirtilen benzerlik ölçütünü kullanarak queryVector'a en yakın olduğu belgeleri bulur
numCandidates → Motorun nihai üst sonuçları seçmeden önce kaç potansiyel eşleşmeyi değerlendireceği
limit → Döndürülecek nihai benzer sonuç sayısı
$project → Orijinal metni ve score adlı özel alanı döndürür
Score alanı nedir?
MongoDB Atlas Vector Search, "score": {"$meta": "vectorSearchScore"} adlı özel bir meta veri alanı döndürür; bu alan, saklanan bir vektörün sorgu vektörünüze ne kadar benzer olduğunu gösterir.
Skorun anlamı, aşağıda açıklandığı gibi, seçtiğiniz benzerlik ölçütüne bağlıdır:
Benzerlik ölçütü
Skor neyi ifade eder
Yüksek skor = daha benzer mi?
Skor aralığı
cosine
Vektörler arasındaki açı benzerliği
Evet
–1 ila +1
euclidean
Negatif L2 mesafesi
Hayır—0'a yakınsa daha benzer
–∞ ila 0
dotProduct
Vektör büyüklüğü hizalanması
Evet
–∞ ila +∞
En İyi Uygulamalar
Kaçınılması Gereken Yaygın Tuzaklar
Sorun
Neden olur
Boyut uyuşmazlığı
Sorgu vektörü boyutu ≠ indeks boyutu
İlgisiz sonuçlar
Saklama ve sorguda farklı modellerin kullanılması
Yavaş arama
Çok fazla numCandidates ya da büyük küme gereksinimleri
Belge çok büyük
16MB belge sınırı
Yanlış benzerlik ölçütü
Model kosinüs için eğitildi ama noktasal çarpım kullanılıyor
Son Düşünceler
Gömlemeler ve anlamsal arama artık modern yapay zeka ürünlerinin temelini oluşturuyor. Bir sohbet botu, RAG hattı, öneri motoru veya akıllı arama katmanı kuruyor olun, vektörleri güvenilir şekilde saklayıp verimli biçimde sorgulamanız gerekir.
MongoDB size şu unsurların bir arada bulunduğu bir birleşik platform sunar:
Bu, ayrı veritabanlarıyla uğraşma karmaşıklığını ortadan kaldırır ve altyapı yerine ürün yeteneklerini inşa etmeye odaklanmanızı sağlar.