İçeriğe Geç

Semantik Arama

POST /api/v1/search/semantic

Semantik Arama

Doğal dil sorgusunu multilingual-e5-large gömme modeline gönderir (HuggingFace TEI servisi), ardından Qdrant üzerinde 1024 boyutlu vektör benzerlik araması yapar. Sonuçlar kosinüs benzerliğine göre sıralanır.

İstek gövdesi

  • queryzorunlu, 1-500 karakter. Doğal dilde yazın: "bankaların müşteri kimlik tespitini hangi sürede yapması gerekir?" gibi sorular en iyi sonucu verir.
  • maxResults — 1-100 arası; varsayılan 10.

Not: sourceId, startDate, endDate filtreleri ApiSearchInput DTO'sunda tanımlı olsa da semantik arama bu filtreleri uygulamaz — Qdrant'ta payload filter'ları henüz tanımlı değil. Yalnızca query ve maxResults dikkate alınır.

Yanıt alanları

  • score — 0-1 arası kosinüs benzerlik değeri; 1'e ne kadar yakınsa o kadar alakalı.
  • matchedSnippet — Qdrant'ın döndürdüğü en yakın metin parçası (chunk). Orijinal doküman boyunca bağlam için kullanılır.

Performans ve maliyet

  • TEI gömme isteği ~50-200 ms sürer; Qdrant taraması ~20-50 ms.
  • Bu uç nokta tier limitinin ~1/5'i ile kısıtlanabilir — ekleme maliyetli bir işlemdir.
  • Üretimde sık tekrarlanan sorgular (örn. UI autosuggest) için kendi 5 dakikalık önbelleğinizi kurun.

Parametreler

İsimKonumTipZorunluAçıklama
query Body string Evet Doğal dilde sorgu.
maxResults Body integer Hayır 1-100; varsayılan 10.

Yanıtlar

200 — Benzerlik skoruna göre sıralanmış sonuçlar (0-1).

400 — Query alanı boş.