Embedding Neden Kritiktir?
Bilgisayarlar harfleri veya kelimeleri anlamazlar, sadece sayıları anlarlar. Embedding'den önce metin, sözlükteki her kelimeye tek bir '1' düşen dev ve anlamsız sıfır dizileriyle (one-hot encoding) temsil ediliyordu; bu gösterimde 'kedi' ile 'köpek' arasında hiçbir yakınlık kurulamıyordu. Embedding bu sorunu çözer: anlam, uzaydaki matematiksel mesafeye dönüşür. 'Kral', 'Kraliçe', 'Erkek', 'Kadın' kelimelerini vektör uzayına yerleştirirseniz şu ilişki ortaya çıkar: vec(Kral) - vec(Erkek) + vec(Kadın) ≈ vec(Kraliçe). Büyük dil modellerinin ilk katmanı bir embedding katmanıdır ve modelin dil hakkında bildiği her şey bu vektör temsilleri üzerine kurulur.
Kullanım Alanları
- check_circle Semantik Arama ve RAG: Anahtar kelime eşleşmesi yerine anlam eşleşmesiyle arama yapılır. Kullanıcının sorusu ve belgeler aynı uzaya gömülür, en yakın vektörler getirilir. RAG sistemlerinin temel bileşenidir.
- check_circle Tavsiye Sistemleri: Spotify'ın beğendiğiniz bir şarkıya en yakın vektörleri önerebilmesi embedding'e dayanır. Netflix ve e-ticaret siteleri de kullanıcı ve içerik vektörlerini eşleştirerek kişiselleştirme yapar.
- check_circle Çok Modlu Eşleşme: CLIP ve DALL-E gibi sistemlerde metin ve görsel embedding'i aynı uzayda eşleştirilir; 'sahilde gün batımı' metniyle fotoğraf arşivinde arama yapılabilir.
- check_circle Sınıflandırma ve Kümeleme: Metinler vektöre çevrildikten sonra spam tespiti, duygu analizi, konu sınıflandırma ve benzer belgeleri gruplama gibi görevler basit matematiksel işlemlere indirgenir.
Embedding Modelleri ve Türleri
- check_circle Word2Vec ve GloVe: Statik Kelime Gömüleri: Word2Vec (Google, 2013): CBOW ve Skip-gram mimarileriyle her kelimeye sabit bir vektör atar. GloVe global eş-görülme istatistiklerini kullanan alternatif yöntemdir. Ortak zayıflık: çok anlamlı kelimeler bağlamdan bağımsız hep aynı vektörü alır.
- check_circle BERT ve Bağlamsal Embedding'ler: BERT her kelimeyi cümle bağlamına göre farklı vektörle temsil eder. Sentence-BERT (SBERT) cümle düzeyinde semantik embedding üretir. E5, BGE ve paraphrase-multilingual-mpnet gibi modeller çok dilli desteğe sahiptir.
- check_circle OpenAI text-embedding Modelleri: text-embedding-3-small (1536 boyut) ve text-embedding-3-large (3072 boyut) RAG, anlamsal arama ve belge sınıflandırma için API üzerinden kullanılır. Türkçe dahil çok dilli metinleri başarıyla temsil eder.
- check_circle Multimodal Embedding: CLIP: OpenAI'nin CLIP modeli metin ve görüntüyü aynı vektör uzayında temsil eder. Zero-shot görüntü sınıflandırma ve metin-görüntü araması için temel altyapı olarak kullanılır.
Vektör Uzayında Anlam: Embedding Aritmetiği
İyi bir embedding modelinin en çarpıcı özelliği, anlamsal ilişkilerin vektör matematikle ifade edilebilmesidir. Word2Vec'in ünlü örneği: vec('King') - vec('Man') + vec('Woman') ≈ vec('Queen'). Benzer şekilde 'Paris - Fransa + Almanya ≈ Berlin' ilişkisi başkent kavramının vektör uzayında kodlandığını gösterir. Semantik arama bu özelliği kullanır: sorgu vektörü ile belge vektörleri arasındaki kosinüs benzerliği hesaplanarak en alakalı belgeler bulunur. Milyonlarca vektör arasında bu karşılaştırmayı hızlandırmak için HNSW gibi yaklaşık en yakın komşu (ANN) algoritmaları ve vektör veritabanları kullanılır. Model seçiminde MTEB gibi standart karşılaştırma çerçevelerine bakmak önerilir.
Öne Çıkan Embedding Modelleri
text-embedding-3-large (OpenAI)
3072 boyut; MTEB kıyaslamasında lider İngilizce ve çok dilli metin embeddingleri — RAG ve semantik arama için en güçlü kapalı kaynak seçenek.
E5-Mistral-7B-Instruct
Microsoft'un instruction-tuned 7B modeli; MTEB'de text-embedding-3-large ile rekabetçi — açık ağırlıklı ve yerel çalışır.
BGE-M3 (BAAI)
Monolingual, bilingual ve çok dilli embeddingleri tek modelde birleştirir; 100+ dilde güçlü gösterim, Türkçe için önerilen açık kaynak seçenek.
Nomic Embed
8192 token bağlam penceresi; uzun belge embeddinglerinde kısa-bağlamlı modellere göre belirgin avantaj, Apache 2.0 lisansı.
Sıkça Sorulan Sorular (FAQ)
- check_circle Embedding nedir? Embedding, kelimeler, cümleler, görüntüler veya diğer verilerin yüksek boyutlu sayısal vektörlere dönüştürülmesidir. Benzer anlamlı içerikler vektör uzayında birbirine yakın konumlanır. Doğal dil işleme, öneri sistemleri ve RAG'ın temel yapı taşıdır.
- check_circle Embedding ne demek, Türkçesi nedir? Embedding İngilizce'de 'gömme, yerleştirme' anlamına gelir. Türkçe kaynaklarda 'gömme' veya 'vektörleştirme' olarak geçer. Veri, çok boyutlu bir matematiksel uzaya gömülerek o uzayda bir koordinata yerleştirilir.
- check_circle Word2Vec ile BERT embedding'leri arasındaki fark nedir? Word2Vec her kelimeye bağlamdan bağımsız sabit bir vektör verir. BERT ise kelimeyi cümle bağlamıyla birlikte kodlar ve bağlama göre farklı vektörler üretir. Bağlamsal embedding'ler anlam belirsizliğini çözmede çok daha başarılıdır.
- check_circle Embedding'ler nerede saklanır? Üretilen vektörler Pinecone, Weaviate, Qdrant, Milvus veya PostgreSQL'in pgvector eklentisi gibi vektör veritabanlarında saklanır. Bu sistemler HNSW gibi indeksleme algoritmalarıyla milyonlarca vektör arasından en yakın komşuları milisaniyeler içinde bulur.
- check_circle Embedding boyutu nasıl seçilir? Büyük boyut daha fazla bilgi kodlar ama bellek ve hesaplama maliyetini artırır. Küçük ölçekli projeler için 384-768 boyutlu hafif modeller çoğu zaman yeterlidir. Seçimde model kalitesi (MTEB skoru), boyut, maliyet ve Türkçe desteği birlikte değerlendirilmelidir.