~/ai — rag — hybrid
‹ ai engineering11 / поиск и RAG

HYBRID SEARCH · СЛОВА + СМЫСЛ

Два поиска работают параллельно: BM25 ищет точные слова, векторный — похожий смысл. Потом их списки сливаются в один. Чаще всего через Reciprocal Rank Fusion: важно не само число счёта, а место в каждом списке.

01 · запрос
search ›
02 · два поиска top-5 из 20
BM25слова
векторMiniLM, cos
03 · слияние RRF k = 60
rrf(doc) = 1/(60 + место в BM25) + 1/(60 + место в векторе)
04 · вердикт первое место правильное?
…
05 · общий счёт 14 запросов, считается здесь
BM25 и слияние RRF считаются в браузере. Эмбеддинги чанков и запросов я заранее получил моделью all-MiniLM-L6-v2, косинусы считаются здесь. Правильные чанки для каждого запроса я разметил вручную, это видно в строке под запросом.
session log
~/ai $ hybrid.search(query)