← Blog
·Yapay Zeka·10 dk okuma

Semantik Arama: Makinelerin “Anlam” Peşindeki Yolculuğu

Kelimelerden Anlamlara, Dizgilerden NiyetlereClaude ile oluşturulan görsel.“Dil, varlığın evidir.” — Martin HeideggerHeidegger dili varlığın evi olarak tanımladığında, muhtemelen…

Kelimelerden Anlamlara, Dizgilerden Niyetlere

Claude ile oluşturulan görsel.
“Dil, varlığın evidir.” — Martin Heidegger

Heidegger dili varlığın evi olarak tanımladığında, muhtemelen bir gün makinelerin de bu evin kapısını çalacağını hayal etmemişti. Semantik arama, makinelerin bu eve adım atma girişimidir — “anlam”ı kavrama çabası. Artık bir arama motoruna “soğuk havada ne giymeli” yazdığınızda, sistem sadece “soğuk”, “hava” ve “giymek” kelimelerini arayan bir kâtip değil; sizin niyetinizi anlayan, bağlamınızı yorumlayan ve ihtiyacınıza uygun sonuçları sunan bir dijital hermenötikçidir.

Bu yazıda, semantik aramanın teknik temellerinden felsefi derinliklerine, Word2Vec’ten Sentence Transformer’lara, vektör veritabanlarından RAG mimarisine uzanan kapsamlı bir yolculuğa çıkacağız.

1. Anahtar Kelime Aramasının Sınırları

Geleneksel arama motorları, temelde bir eşleme makinesidir. Kullanıcının yazdığı kelimeleri, belgelerdeki kelimelerle birebir karşılaştırır. Bu yaklaşım — leksikal arama (lexical search) — BM25 gibi algoritmalarla onlarca yıl boyunca arama teknolojisinin omurgasını oluşturdu.

Ancak dilin doğası, bu basit eşleme mantığıyla sürekli çatışır. Düşünün:

  • Bir kullanıcı “uygun fiyatlı koşu ayakkabısı” aradığında, “bütçe dostu atletik ayakkabı” içeren bir sonuç neden görüntülenmesin?
  • “Elma” kelimesi geçen bir sorgu, bir meyve mi yoksa bir teknoloji şirketini mi hedefliyor?
  • “Python öğrenmek istiyorum” diyen biri, bir programlama dilinden mi yoksa gerçek bir yılandan mı bahsediyor?

İnsan zihni bu belirsizlikleri bağlam, niyet ve dünya bilgisiyle anında çözer. O yüzden yok artık denecek birşey yok. Geleneksel arama motorları ise bu anlamsal boşlukta kaybolur. İşte semantik arama, tam da bu boşluğu kapatmak için ortaya çıktı.

2. Semantik Arama Nedir?

Semantik arama, kullanıcı sorgularını yalnızca anahtar kelime eşleştirmesi üzerinden değil, niyet (intent) ve bağlamsal anlam (contextual meaning) üzerinden işleyen gelişmiş bir bilgi erişim tekniğidir. Doğal dil işleme (NLP), makine öğrenmesi ve bilgi grafikleri (knowledge graphs) gibi teknolojileri kullanarak, kelimeler ve kavramlar arasındaki ilişkileri yorumlar.

Semantik aramanın temel bileşenleri şunlardır:

Doğal Dil İşleme (NLP): Makinelerin insan dilini anlama, yorumlama ve yanıt verme kapasitesini sağlayan yapay zekâ alt dalı. Semantik aramanın omurgasıdır.

Varlık Tanıma (Entity Recognition): Bir sorgu içindeki belirli varlıkları — kişiler, yerler, kuruluşlar — bağlama göre tanımlama yeteneği. “Apple”ın bir meyve mi yoksa bir şirket mi olduğunu bağlamdan anlama becerisi.

Bilgi Grafiği (Knowledge Graph): Varlıklar ve kavramlar arasındaki ilişkileri temsil eden yapılandırılmış veritabanı. Google’ın Knowledge Graph’ı bugün 8 milyardan fazla varlık hakkında 800 milyarı aşkın gerçeği işlemektedir.

Sorgu Niyeti (Query Intent): Kullanıcının arama sorgusunun ardındaki temel amaç. Bilgi mi arıyor? Bir satın alma mı yapmak istiyor? Bir yere mi ulaşmak istiyor?

3. Kelimelerden Vektörlere: Embedding Devrimi

Semantik aramanın kalbinde, metni sayısal temsillere — embedding’lere — dönüştürme fikri yatar. Bu dönüşüm, dilin matematiksel bir uzayda temsil edilmesini sağlar ve anlam benzerliğini geometrik yakınlıkla ölçmeyi mümkün kılar.

3.1 Word2Vec ve GloVe: İlk Adımlar (2013–2015)
Word2Vec (Mikolov et al., 2013) ve GloVe (Pennington et al., 2014), kelime düzeyinde yoğun(dense) vektör temsilleri üreten öncü çalışmalardı. “Kral” ve “Kraliçe” vektörleri arasındaki ilişkinin, “Erkek” ve “Kadın” arasındaki ilişkiyle paralellik gösterdiğini keşfetmek, NLP dünyasında bir paradigma kaymasıydı.

Ancak bu modellerin kritik bir sınırlaması vardı: bağlam bağımsızlığı. “Yüz” kelimesi ister “insan yüzü” ister “yüz sayısı” ister “yüzmek” anlamında kullanılsın, aynı vektörle temsil ediliyordu.

3.2 BERT: Bağlamsal Devrimin Başlangıcı (2018)
Google’ın 2018'de tanıttığı BERT (Bidirectional Encoder Representations from Transformers), oyunu tamamen değiştirdi. BERT, bir cümledeki her kelimeyi diğer tüm kelimelerle ilişkili olarak işler ve bağlama duyarlı temsiller üretir. Aynı “yüz” kelimesi artık kullanıldığı cümleye göre farklı vektörlerle temsil edilebiliyordu.

Ancak BERT’in doğrudan semantik arama için kullanımı pratik açıdan sorunluydu. İki cümlenin benzerliğini hesaplamak için her iki cümlenin birlikte ağa beslenmesi gerekiyordu (cross-encoder mimarisi). 10.000 cümlelik bir koleksiyonda en benzer çifti bulmak yaklaşık 50 milyon çıkarım hesaplaması ve 65 saat gerektiriyordu.

3.3 Sentence-BERT: Pratik Semantik Aramanın Doğuşu (2019)
2019'da Nils Reimers ve Iryna Gurevych’in yayımladığı Sentence-BERT (SBERT), semantik arama için gerçek dönüm noktası oldu. SBERT, BERT’in siyam ağ (siamese network) mimarisiyle modifiye edilmiş halidir. İki özdeş BERT ağı paylaşılan ağırlıklarla çalışır ve her cümle için bağımsız bir embedding üretir.

Bu embedding’ler daha sonra kosinüs benzerliği ile karşılaştırılabilir. Sonuç dramatiktir: aynı 10.000 cümlelik koleksiyondaki en benzer çifti bulma süresi 65 saatten yaklaşık 5 saniyeye düşerken, BERT’in doğruluğu korunmuştur.

SBERT’in çalışma prensibi şu şekilde özetlenebilir:

  1. Her cümle ayrı bir BERT encoder’dan geçirilir
  2. Çıktıya mean-pooling uygulanarak sabit boyutlu cümle embedding’i elde edilir
  3. Eğitim sırasında iki embedding birleştirilir ve softmax sınıflandırıcıdan geçirilir
  4. Çıkarım sırasında embedding’ler kosinüs benzerliği ile karşılaştırılır

3.4 Modern Sentence Transformer Ekosistemi
Bugün Hugging Face’te 15.000'den fazla önceden eğitilmiş Sentence Transformer modeli mevcuttur. sentence-transformers kütüphanesi, embedding üretimini birkaç satır koda indirgemektedir:

from sentence_transformers import SentenceTransformer
model = SentenceTransformer("all-MiniLM-L6-v2")
sentences = [
"Bugün hava çok güzel.",
"Dışarısı çok güneşli!",
"Stadyuma arabayla gitti."
]
embeddings = model.encode(sentences)
similarities = model.similarity(embeddings, embeddings)
# İlk iki cümle yüksek benzerlik skoru alırken,
# üçüncü cümle düşük skor alır

MTEB (Massive Text Embeddings Benchmark) lider tablosu, modellerin çeşitli görevlerdeki performansını kıyaslayan standart referans noktası haline gelmiştir.

4. Simetrik vs. Asimetrik Arama: Doğru Modeli Seçmek

Semantik arama sistemlerinde kritik bir tasarım kararı, arama türünün doğru belirlenmesidir:

Simetrik Semantik Arama: Sorgu ve belge benzer uzunluk ve içeriktedir. Örneğin, “Python’u çevrimiçi nasıl öğrenirim?” sorusuna benzer soruların bulunması. Bu senaryoda sorgu ve belge yer değiştirebilir.

Asimetrik Semantik Arama: Kısa bir sorgu ile uzun bir belgede eşleşme aranır. Örneğin, “iklim değişikliğinin etkileri” sorgusuna karşılık detaylı bir bilimsel makalenin erişimi. Bu ayrım, model seçimini doğrudan etkiler — asimetrik görevler için dot-product optimizeli modeller (örn. msmarco-distilbert-base-dot-prod-v3) daha başarılıdır.

5. Vektör Veritabanları: Anlam Uzayının Depoları

Milyonlarca embedding’i verimli bir şekilde depolamak ve sorgulamak, özel altyapı gerektirir. Geleneksel veritabanları bu yüksek boyutlu vektörlerde yakın komşu araması (nearest neighbor search) için optimize edilmemiştir. Bu boşluğu vektör veritabanları doldurur.

5.1 Temel Kavramlar
Vektör veritabanları, yüksek boyutlu vektör embedding’lerini depolamak, indekslemek ve verimli bir şekilde erişmek için tasarlanmış özel veritabanlarıdır. Öklid mesafesi, kosinüs benzerliği ve iç çarpım gibi mesafe metrikleri kullanarak benzerlik sorguları gerçekleştirir.

Büyük ölçekli veri setlerinde tam en yakın komşu araması (exact nearest neighbor) pratik olarak çok yavaştır. Bu nedenle Yaklaşık En Yakın Komşu (ANN — Approximate Nearest Neighbor) algoritmaları kullanılır. ANN, veriyi benzer embedding’lerin küçük bölümlerine ayırır ve milisaniyeler içinde arama yapılmasını sağlar — milyonlarca vektörle bile.

5.2 Güncel Vektör Veritabanı Ekosistemi
2025 itibarıyla vektör veritabanı pazarının 2028'e kadar 4,3 milyar dolara ulaşması öngörülmektedir. Başlıca seçenekler:

FAISS (Meta): Yoğun vektör benzerlik araması için açık kaynaklı bir kütüphane. Tam bir veritabanı değildir; kalıcılık, API ve yönetim katmanları geliştiricinin sorumluluğundadır. Ancak ham performansta rakipsizdir — GPU hızlandırmalı milyarlarca vektörde milisaniyelik arama sunar. Meta üretim ortamında milyarlarca vektörle kullanmaktadır.

Pinecone: Tam yönetilen (fully managed) bulut çözümü. En hızlı prototipleme deneyimi sunar, ancak ölçeklendirmede maliyet artabilir. Başlangıç için idealdir.

Weaviate: Bilgi grafiği entegrasyonlu, açık kaynaklı vektör veritabanı. Hem semantik arama hem de yapılandırılmış veri ilişkilerini bir arada sunması, özellikle bilgi tabanları ve içerik yönetim sistemleri için güçlü bir seçenek yapar.

Qdrant: Rust ile yazılmış, yüksek performanslı açık kaynaklı çözüm. Güçlü metadata filtreleme yetenekleri ve üretim ortamına hazır mimarisiyle öne çıkar.

Milvus: Kurumsal ölçekli dağıtık mimari. Hibrit arama (vektör + skaler + tam metin), zaman yolculuğu (point-in-time queries) gibi gelişmiş özellikleri ile büyük ölçekli uygulamalar için tasarlanmıştır.

Chroma: Hafif, geliştirici dostu embedding veritabanı. LangChain ve PyTorch entegrasyonları ile RAG prototipleri ve MVP’ler için idealdir.

6. Hibrit Arama: İki Dünyanın En İyisi

Gerçek dünya uygulamalarında, ne tamamen semantik ne de tamamen leksikal arama tek başına yeterlidir. Hibrit arama, her iki yaklaşımın güçlü yanlarını birleştirir:

Yoğun (Dense) Retrieval: Embedding tabanlı semantik eşleşme. “Finansal kazançlar” sorgusu, “çeyreklik gelir” içeren belgeleri yakalayabilir — tam kelime eşleşmesi olmasa bile.

Seyrek (Sparse) Retrieval: BM25 gibi geleneksel leksikal arama. Kısaltmalar, ürün adları veya alan-spesifik terimler gibi tam eşleşmenin kritik olduğu durumlar için güçlüdür.

Hibrit arama pipeline’ı tipik olarak şu şekilde çalışır:

  1. Sorgu hem vektör indeksine (HNSW, FAISS) hem de ters indekse (inverted index) gönderilir
  2. Her iki sonuç kümesi birleştirilir ve deduplikasyon yapılır
  3. Reciprocal Rank Fusion (RRF) veya öğrenilmiş birleştirme yöntemiyle tekli bir sıralama üretilir
  4. Bir reranking modeli sonuçları bağlamsal alaka düzeyine göre yeniden sıralar

Bu yaklaşım, hem kavramsal benzerliği hem de kesin terim eşleşmesini yakalayarak recall ve precision’ı birlikte artırır.

7. RAG: Semantik Aramanın Üretken Yapay Zekâ ile Buluşması

Semantik aramanın en transformatif uygulama alanlarından biri Retrieval-Augmented Generation (RAG) — Erişimle Güçlendirilmiş Üretim — mimarisidir. 2020'de Lewis ve arkadaşlarının bu terimi formalize etmesiyle başlayan RAG, 2025'te yapay zekâ uygulamalarının temel yapı taşı haline gelmiştir.

7.1 RAG Neden Gerekli?
Büyük Dil Modelleri (LLM’ler) muazzam yeteneklere sahip olsa da, kritik sınırlamaları vardır: eğitim verisi belirli bir zaman noktasında dondurulmuştur (bilgi kesim tarihi), güncel bilgilere erişemezler ve “halüsinasyon” — güvenilir görünen ama yanlış bilgi üretimi — sorunu yaşarlar. RAG bu sorunları, LLM’nin yanıt üretmeden önce harici bilgi kaynaklarından güncel ve doğru bilgiyi erişerek çözer.

7.2 RAG Pipeline’ı
Temel RAG akışı üç aşamadan oluşur:

Hazırlık (Indexing): Belgeler yüklenir, parçalara (chunk) bölünür, embedding modeli ile vektörlere dönüştürülür ve vektör veritabanına indekslenir.

Erişim (Retrieval): Kullanıcı sorgusu aynı embedding modeliyle vektöre dönüştürülür, vektör veritabanında benzerlik araması yapılır ve en ilgili belgeler çekilir. Hibrit arama bu aşamada devreye girebilir.

Üretim (Generation): Erişilen belgeler, kullanıcı sorusuyla birlikte “zenginleştirilmiş prompt” olarak LLM’ye sunulur. LLM, bu bağlamı kullanarak doğru, güncel ve kaynaklara dayalı bir yanıt üretir.

7.3 RAG’ın Evrimi: 2025 ve Ötesi
RAG mimarisi hızla gelişmektedir. Güncel trendler arasında şunlar öne çıkar:

Agentic RAG: Sabit iş akışları yerine, otonom ajanların sorgu karmaşıklığına göre erişim stratejisini dinamik olarak adapte ettiği yaklaşım. A-RAG gibi çerçeveler, hiyerarşik erişim arayüzleri kullanarak çoklu granülarite seviyelerinde arama yapabilmektedir.

Graph RAG: Microsoft’un 2024'te tanıttığı yaklaşım, belgelerden varlık-ilişki grafikleri oluşturarak çok-adımlı muhakeme görevlerinde geleneksel RAG’a göre belirgin iyileşmeler sağlamaktadır.

Multimodal RAG: Metin, görüntü, ses ve video gibi farklı modaliteleri birleştiren erişim ve üretim, RAG’ın uygulama alanını genişletmektedir.

8. Semantik Arama Uygulama Alanları

Semantik aramanın etkisi, basit web aramalarının çok ötesine uzanmaktadır:

İş İlanı Eşleştirme ve İK Teknolojileri: CV’ler ile iş ilanları arasındaki semantik uyumun hesaplanması, aday-pozisyon eşleştirmesinde devrim yaratmaktadır. Bir adayın “Python ile veri analizi” deneyimi, “veri bilimi programlama becerileri” arayan bir ilanla semantik olarak eşleştirilebilir — geleneksel anahtar kelime eşleşmesi bunu yakalaması zordur.

Kurumsal Bilgi Yönetimi: Dağınık bilgi kaynaklarını (e-postalar, belgeler, wiki sayfaları, kod depoları) birleştiren ve kullanıcı niyetini anlayan kurumsal arama platformları, bilgi keşfini radikal biçimde hızlandırmaktadır.

Müşteri Desteği: Semantik arama tabanlı chatbot’lar, müşteri sorgularının ardındaki niyeti anlayarak daha doğru ve bağlama uygun yanıtlar sunabilmektedir.

Sağlık ve İlaç: Tıbbi literatür taraması, ilaç etkileşim analizi ve klinik karar destek sistemlerinde semantik arama, hayati öneme sahip bilgilere erişimi kolaylaştırmaktadır.

Hukuk: Yasal belge analizi, içtihat araması ve sözleşme incelemesinde, anlam temelli arama geleneksel anahtar kelime aramasına kıyasla çok daha ilgili sonuçlar sunmaktadır.

9. Pratik Uygulama: Adım Adım Semantik Arama Sistemi

Temel bir semantik arama sistemi kurmak için gereken adımlar:

# 1. Model Yükleme
from sentence_transformers import SentenceTransformer, util

model = SentenceTransformer("all-MiniLM-L6-v2")
# 2. Corpus Embedding'leri
corpus = [
"Makine öğrenmesi, bilgisayarlara açıkça programlanmadan öğrenme yetisi veren bir çalışma alanıdır.",
"Derin öğrenme, yapay sinir ağlarına dayanan daha geniş makine öğrenmesi yöntemlerinin bir parçasıdır.",
"Mars gezginleri, veri toplamak ve deneyler yapmak için Mars yüzeyinde hareket eden robotik araçlardır.",
]
corpus_embeddings = model.encode(corpus, convert_to_tensor=True)
# 3. Sorgu ve Arama
query = "yapay zekâ ile öğrenme"
query_embedding = model.encode(query, convert_to_tensor=True)
# 4. Semantik Benzerlik Hesaplama
results = util.semantic_search(query_embedding, corpus_embeddings, top_k=3)
# "yapay zekâ ile öğrenme" sorgusu, "makine öğrenmesi" ve "derin öğrenme"
# cümlelerini yüksek skorla döndürür - tam kelime eşleşmesi olmasa bile.

Büyük ölçekli uygulamalar için FAISS, Pinecone veya Qdrant gibi bir vektör veritabanı entegrasyonu gerekir. Milyon ölçeğine kadar util.semantic_search yeterli olabilir, ancak ötesinde ANN indeksleri zorunlu hale gelir.

Sonuç: Anlam Arayışı Devam Ediyor

Semantik arama, temelde insanlığın en eski arayışlarından birinin — anlam arayışının — teknolojik bir yansımasıdır. Eski Yunan’da Hermes, tanrılar ile insanlar arasında mesaj taşıyordu; bugünün semantik arama motorları ise insan niyeti ile dijital bilgi okyanusları arasında köprü kuruyor.

Word2Vec’in kelime vektörlerinden BERT’in bağlamsal temsillerine, Sentence Transformer’ların verimli cümle embedding’lerinden RAG’ın üretken güçlendirmesine uzanan bu yolculuk, henüz başlangıç aşamasındadır. Vektör veritabanları büyüyor, hibrit arama olgunlaşıyor, ajanlar özerkleşiyor.

Ancak tüm bu teknik ilerlemenin merkezinde, değişmeyen bir gerçek var: arama, nihayetinde bir anlama eylemidir. Ve makineleri daha iyi “anlama” kapasitesine kavuşturdukça, aslında kendi anlam üretme süreçlerimizi de yeniden keşfediyoruz.

Kaynaklar ve İleri Okuma:

  • Reimers, N. & Gurevych, I. (2019). Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks. ACL.
  • Devlin, J. et al. (2018). BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding.
  • Lewis, P. et al. (2020). Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks.
  • Douze, M. et al. (2024). The Faiss Library. arXiv:2401.08281.
  • Edge, D. et al. (2025). GraphRAG: From Local to Global Text Reasoning.
  • Sentence Transformers Documentation: sbert.net
  • MTEB Leaderboard: Hugging Face

Semantik Arama: Makinelerin “Anlam” Peşindeki Yolculuğu was originally published in Kariyer.net Tech on Medium, where people are continuing the conversation by highlighting and responding to this story.


Bu yazı ilk olarak Medium'da yayımlandı.

  • nlp
  • llm
  • rags
  • semantic-search

Devamı