Preskočiť na obsah
4.7Expert7 min

Hybrid Search v RAG: ako správne kombinovať BM25 a vektorovú podobnosť

Sebastian KarallAktualizované 17. októbra 2026
Definition

Hybrid Search v RAG kombinuje lexikálne vyhľadávanie (BM25, zhoda kľúčových slov) s vyhľadávaním podľa podobnosti hustých vektorov (dense vector similarity). Oba retrievery bežia paralelne a ich zoznamy výsledkov sa cez fúziu poradí (rank fusion, najčastejšie Reciprocal Rank Fusion) zlúčia do jedného výsledku. Systém tak nájde sémanticky podobné pasáže aj presné pojmy, vlastné mená a kódy, ktoré samotné embeddings nezachytia.

Na prvý pohľad

  • Hybrid Search spája dva komplementárne retrievery: BM25 zachytí presné pojmy, vlastné mená, ID produktov a kódy, dense vector search pokrýva synonymá a význam. Čisto vektorový RAG môže presné kódy minúť, napríklad chybový kód TS-999 z príkladu, ktorým Anthropic ilustruje Contextual Retrieval.
  • Reciprocal Rank Fusion (RRF) je najrobustnejšia metóda fúzie, pretože využíva len pozície v poradí namiesto neporovnateľných surových skóre, a tak sa zaobíde bez normalizácie skóre.
  • Contextual Retrieval od spoločnosti Anthropic kombinuje Contextual Embeddings s Contextual BM25 a znižuje chybovosť top-20 retrievalu o 49 percent (z 5,7 na 2,9 percenta), s dodatočným rerankingom o 67 percent (stav k 09/2024).
  • Hybrid retrieval v kombinácii s Gemini 2.5 Flash dosahuje v benchmarku Agri-Query presnosť (accuracy) vyše 85 percent a jasne prekonáva naivné long-context prompty (arXiv:2508.18093, 2025).
  • Hybrid Search podporujú všetky vektorové databázy pripravené na produkciu, vrátane suverénnych možností pre DACH a EÚ: Qdrant (Berlín) a Weaviate (Amsterdam).

Hybrid Search v RAG kombinuje lexikálne vyhľadávanie (BM25, zhoda kľúčových slov) s vyhľadávaním podľa podobnosti hustých vektorov (dense vector similarity). Oba retrievery bežia paralelne a ich zoznamy výsledkov sa cez fúziu poradí (rank fusion) zlúčia do jedného výsledku. Systém tak nájde sémanticky podobné pasáže aj presné pojmy, vlastné mená a kódy, ktoré samotné embeddings nezachytia. Hybrid retrieval je od roku 2023 pevnou súčasťou Advanced RAG a patrí do každej produkčnej pipeline, ktorá prehľadáva viac než generický súvislý text.

  • Čo sa kombinuje: sparse retrieval (BM25, presné tokeny) plus dense retrieval (vektorové embeddings, význam) do jednej množiny výsledkov.
  • Ako sa kombinuje: fúzia poradí, najčastejšie Reciprocal Rank Fusion (RRF), zriedkavejšie vážená fúzia skóre s predchádzajúcou normalizáciou.
  • Prečo sa to oplatí: hybrid prekonáva čisto vektorový RAG všade tam, kde záleží na presných pojmoch, a merateľne zlepšuje recall.

Dva piliere: lexikálne verzus sémantické vyhľadávanie

BM25 (sparse / lexikálne). BM25 je osvedčený štandard fulltextového vyhľadávania. Algoritmus hodnotí dokumenty podľa presnej zhody termínov, zriedkavým pojmom dáva vyššiu váhu (inverse document frequency) a normalizuje podľa dĺžky dokumentu. BM25 je deterministický, rýchly, svojím mechanizmom nezávislý od jazyka a nepotrebuje inferenciu modelu. Jeho sila je zároveň jeho obmedzením: nájde len to, čo sa vyskytuje doslovne (resp. po tokenizácii a stemmingu). Synonymá, opisy a parafrázy mu unikajú.

Dense vector similarity (sémantické). Dense retrieval vloží dopyt (query) a dokument do toho istého vektorového priestoru a ich blízkosť meria najčastejšie cez cosine similarity. Približný index najbližších susedov (approximate nearest neighbor, takmer vo všetkých vektorových databázach HNSW podľa Malkova a Yashunina) robí vyhľadávanie škálovateľným. Dense retrieval zachytáva význam: „výpovedná lehota“ a „oznámenie o skončení zmluvy“ sa ocitnú blízko seba, aj keď nemajú spoločné slová. Odvrátená strana: embeddings vyhladzujú presné reťazce znakov. Katalógové číslo, chybový kód alebo zriedkavo sa vyskytujúce vlastné meno sa v sémantickom priestore rozmaže.

Práve tu vzniká potreba kombinácie. Anthropic ukazuje tento problém na príklade vo svojom článku o Contextual Retrieval: ak sa niekto pýta na chybový kód „TS-999“, embedding model možno nájde obsah o chybových kódoch všeobecne, presnú zhodu však môže minúť. BM25 naopak hľadá presne tento reťazec znakov. Obe metódy zlyhávajú pri odlišných dopytoch, preto sa navzájom dopĺňajú.

Kedy hybrid prekoná klasický vektorový RAG

Hybrid Search nie je nutný pre každý korpus, v nasledujúcich prípadoch je však jasne lepší:

  • Presné kódy a ID: čísla produktov, katalógové čísla a čísla objednávok, SKU, chybové a stavové kódy, referencie tiketov.
  • Vlastné mená a odborné termíny: osoby, firmy, názvy produktov, paragrafy zákonov, zriedkavé odborné pojmy, ktoré sú v tréningovom korpuse embeddingov nedostatočne zastúpené.
  • Vyhľadávanie v kóde a logoch: názvy funkcií, premenné, konfiguračné kľúče: tu je presná zhoda často dôležitejšia než význam.
  • Zmiešané dopyty: prirodzený jazyk plus vložené presné tokeny („Ako opravím chybový kód TS-999?“).

Pri homogénnych, naratívnych textoch bez pevných identifikátorov môže stačiť čistý dense retrieval. Len čo však do hry vstúpia štruktúrované pojmy, čísla alebo regulovaná terminológia, a to je v bežnej B2B praxi pravidlom, vyhráva hybrid.

Fúzia: RRF, vážené skóre a problém normalizácie

Náročnou časťou nie je paralelné vyhľadávanie, ale zlúčenie výsledkov. Skóre BM25 a vektorové skóre majú neporovnateľné rozsahy hodnôt: skóre BM25 je neohraničené a závisí od korpusu, cosine similarity leží medzi mínus jedna a jedna. Ak ich jednoducho sčítaš, dominantnejšia škála prehluší všetko ostatné.

Reciprocal Rank Fusion (RRF) to rieši elegantne: ignoruje surové skóre a používa len pozície v poradí. Každý dokument dostane za každý zoznam výsledkov skóre podľa vzorca:

```
RRF_score(d) = súčet cez všetky zoznamy 1 / (k + poradie(d))
```

V tomto vzorci je poradie(d) pozícia dokumentu v príslušnom zozname a k malá konštanta (často 60), ktorá tlmí vplyv veľmi vysokých pozícií. Dokument, ktorý je v oboch zoznamoch vysoko, získa najvyššie celkové skóre. Keďže RRF nezávisí od škály, odpadá akákoľvek normalizácia, vďaka čomu je metóda robustná a takmer bez parametrov.

Vážená fúzia skóre je alternatívou, ak chceš jednej modalite zámerne dať väčšiu váhu (napríklad 0,7 * dense + 0,3 * sparse). Nevyhnutne však predpokladá normalizáciu: oba zoznamy skóre treba najprv previesť na spoločný rozsah (napr. Min-Max na interval nula až jedna) a až potom ich lineárne kombinovať. Je to silnejší nástroj, ale citlivejší na ladenie parametrov a drift korpusu.

Aspekt

Reciprocal Rank Fusion (RRF)

Vážená fúzia skóre

Vstupná veličina

Len pozície v poradí

Surové skóre oboch retrieverov

Potrebná normalizácia

Nie

Áno (napr. Min-Max)

Parametre

Jedna konštanta k (často 60)

Váhy pre každý retriever + normalizácia

Robustnosť

Vysoká, nezávislá od korpusu

Stredná, náchylná na ladenie a drift

Ovládateľnosť

Nízka (rovnocenná fúzia)

Vysoká (modalitu možno cielene vážiť)

Odporúčanie

Predvolená voľba pre väčšinu nasadení

Keď má jedna modalita preukázateľne dominovať

Architektúra pipeline

Pipeline pre hybrid retrieval schematicky vyzerá takto:

```
Query ──┬─► Dense Encoder ──► ANN-Index (HNSW) ──► top_n_dense
│
└─► Tokenizer ──────► BM25-Index ───────► top_n_sparse
│
Rank-Fusion (RRF / weighted) ◄────┘
→ unified top_k
```

V praxi nasleduje re-ranking: hybrid retrieval s vysokým recallom dodá typicky 50 až 100 kandidátov (top_k = 50–100), cross-encoder reranker hodnotí dopyt a dokument spoločne a zúži výber na päť až desať najpresnejších výsledkov, ktoré idú do LLM. Bežne používané modely sú Cohere Rerank, BGE-Reranker a Jina Reranker v3. Jeho poskytovateľ Jina AI patrí od októbra 2025 spoločnosti Elastic. Cross-encodery sú presnejšie, ale pomalšie, preto bežia až po lacnom hybridnom recalle.

Praktický príklad s číslami

Najrelevantnejší podložený údaj pochádza z Contextual Retrieval od spoločnosti Anthropic (stav k 09/2024). Tento prístup rozširuje práve myšlienku hybridu: každý chunk dostane pred embeddingom aj pred indexáciou v BM25 krátku kontextovú hlavičku vygenerovanú LLM (Contextual Embeddings plus Contextual BM25).

  • Samotné Contextual Embeddings: chybovosť top-20 retrievalu klesla z 5,7 na 3,7 percenta, mínus 35 percent.
  • Contextual Embeddings plus Contextual BM25 (teda hybrid): z 5,7 na 2,9 percenta, mínus 49 percent.
  • Navyše reranking: na 1,9 percenta, mínus 67 percent.

Inak povedané: už samotné pridanie zložky BM25 ku kontextualizovanému dense retrievalu zníži chybovosť z 3,7 na 2,9 percenta. To je citeľný zisk v recalle, ktorý by bez lexikálneho vyhľadávania nebol dosiahnuteľný. Indexácia pritom stála približne 1,02 amerického dolára na milión tokenov dokumentov s prompt cachingom (stav k 09/2024). Tieto čísla pochádzajú z hodnotenia samotného dodávateľa a treba ich tak aj čítať.

Druhý, nezávislý dôkaz: v benchmarku Agri-Query (arXiv:2508.18093, 2025) dosahuje hybrid retrieval v kombinácii s Gemini 2.5 Flash presnosť (accuracy) vyše 85 percent naprieč viacerými jazykmi a jasne prekonáva naivné long-context prompty. Hybrid Search je tak aj argumentom v prebiehajúcej debate „RAG verzus long context“: hybridný RAG zostáva pre realistické, viacdielne dopyty nákladovo racionálnejšou a presnejšou architektúrou.

Nástroje: Hybrid Search vo vektorovej databáze

V roku 2026 podporujú Hybrid Search natívne alebo cez rozšírenie všetky vektorové databázy pripravené na produkciu. Qdrant (Berlín) stavia na sparse vektoroch a BM42, Weaviate (Amsterdam) kombinuje BM25 s dense vyhľadávaním, Pinecone ponúka sparse-dense, Vespa a zavedené vyhľadávacie stacky Elastic a OpenSearch spájajú klasický BM25 s kNN. pgvector dosiahne hybrid cez doplnkové rozšírenia pre BM25. Pre projekty v regióne DACH s nárokom na suverenitu sú Qdrant a Weaviate prirodzenou voľbou: hostujú sa v EÚ a ponúkajú granulárne filtrovanie metadát, ktoré je dôležité pre oddelenie tenantov (klientov) podľa GDPR.

Pre agentúry a B2B

Hybrid Search je nástroj, vďaka ktorému sa z RAG prototypu stane spoľahlivé produkčné riešenie, najmä v odvetviach s produktovými katalógmi, normami, spisovými značkami, tarifmi alebo technickými manuálmi, kde sú presné pojmy kritické pre podnikanie. Ak ako agentúra vyvíjaš asistentov na báze RAG alebo znalostné portály pre klientov z regiónu DACH, naplánuj hybrid retrieval s RRF a re-rankingom ako štandard, nie ako dodatočný nápad. Blck Alpaca navrhuje a implementuje takéto retrieval pipeline suverénne v rámci EÚ ako Custom Enterprise Software, od výberu nástrojov cez stratégiu fúzie až po evaluáciu s podporou RAGAS. Ozvi sa nám, ak má tvoj RAG systém spoľahlivo nachádzať správne dokumenty.

Zhrnúť pomocou AIChatGPTClaudePerplexity

Otvorí chat s pripraveným promptom.

Často kladené otázky

Kedy Hybrid Search prekoná čisto vektorový RAG?
Vždy, keď záleží na presných reťazcoch znakov: číslach produktov a katalógových číslach, chybových kódoch, paragrafoch, vlastných menách, tiketoch alebo názvoch funkcií v kóde. Dense embeddings takéto tokeny sémanticky vyhladzujú. Pri dopyte s chybovým kódom ako TS-999 môže čisto sémantické vyhľadávanie vrátiť všeobecný obsah o chybových kódoch a presný záznam minúť, zatiaľ čo BM25 hľadá presne tento reťazec znakov. Lexikálna zložka pomáha aj pri zriedkavých odborných pojmoch, ktoré sú v tréningovom korpuse embeddingov nedostatočne zastúpené.
Čo je Reciprocal Rank Fusion (RRF)?
RRF je metóda fúzie, ktorá zlúči viacero zoznamov výsledkov do jedného spoločného poradia. Každý dokument dostane za každý zoznam skóre 1 delené (k plus pozícia v poradí) a tieto skóre sa sčítajú. Rozhodujúce je, že RRF využíva len pozíciu v poradí, nie surové skóre retrieverov. Odpadá tak náročná normalizácia medzi neporovnateľnými hodnotami BM25 a cosine similarity. Metóda sa preto považuje za robustnú a nenáročnú na parametre.
Prečo nemožno skóre BM25 a vektorové skóre jednoducho sčítať?
Pretože ležia v úplne odlišných rozsahoch hodnôt. Skóre BM25 je neohraničené a závisí od korpusu, cosine similarity leží medzi mínus jedna a jedna. Pri priamom sčítaní by jedna škála dominovala nad druhou. Ak chceš váženú fúziu skóre, musíš oba zoznamy najprv normalizovať, napríklad metódou Min-Max na interval nula až jedna. RRF tento problém obchádza tým, že pracuje výlučne s pozíciami v poradí.
Potrebujem po Hybrid Search ešte re-ranking?
Pre kvalitné odpovede áno. Hybrid Search dodá typicky 50 až 100 kandidátov s dobrým recallom. Cross-encoder reranker, ktorý hodnotí dopyt a dokument spoločne, z nich presne vyberie najlepších päť až desať a do LLM pošle len tie. Podľa spoločnosti Anthropic znižuje kombinácia Contextual Retrieval a rerankingu chyby retrievalu až o 67 percent (stav k 09/2024).
Ktoré vektorové databázy podporujú Hybrid Search natívne?
V roku 2026 podporujú Hybrid Search prakticky všetky systémy pripravené na produkciu: Qdrant (BM42/sparse vektory, Berlín), Weaviate (BM25 plus dense, Amsterdam), Pinecone (sparse-dense), Vespa, Elastic a OpenSearch (klasický BM25 plus kNN), MongoDB Atlas, Milvus a Redis. pgvector zvládne hybrid cez doplnkové rozšírenia pre BM25. Pre suverénne riešenia v regióne DACH a v EÚ sú Qdrant a Weaviate prirodzenou voľbou.

Ísť hlbšie?

Získajte nové analýzy priamo do schránky, alebo sa pozrite, ako tieto poznatky nasadzujeme pre firmy.