Hybridní vyhledávání: kombinace klasického a sémantického vyhledávání
Hybridní vyhledávání spojuje tradiční textové vyhledávání se sémantickými metodami založenými na vektorových reprezentacích, tedy embeddings. Kombinuje tak přesné hledání podle slov a jejich výskytu s porozuměním významu dotazu. Díky tomu může uživatel snadněji najít relevantní dokumenty, i když neobsahují přesně stejná slova jako jeho dotaz.
Jak funguje klasické textové vyhledávání
Klasické vyhledávání porovnává slova v dotazu s textem dokumentů. Často využívá algoritmy, jako je BM25, které zohledňují například četnost hledaných výrazů v dokumentu a jejich vzácnost v celé kolekci. Tento přístup dobře funguje u přesných názvů, kódů, jmen nebo odborných termínů.
Jeho omezením je závislost na shodě slov. Pokud uživatel použije jiné označení, synonymum nebo obecnější formulaci, systém nemusí najít dokument, který se tématu věnuje, ale používá odlišnou terminologii.
Jak do vyhledávání zapadá sémantika
Sémantické vyhledávání převádí dotazy i dokumenty pomocí jazykového modelu na číselné vektory zvané embeddings. Vektorová databáze pak vyhledává texty, jejichž význam je podobný významu dotazu, a to i bez přesné shody jednotlivých slov.
Tento přístup pomáhá například tehdy, když uživatel popíše problém běžným jazykem, zatímco dokument používá odborné termíny. Výsledky však mohou být méně přesné u přesných identifikátorů, krátkých dotazů nebo výrazů, jejichž drobné rozdíly zásadně mění význam.
Proč kombinovat oba přístupy
Hybridní vyhledávání využívá přednosti obou metod: textová složka zachytí přesné výrazy a sémantická složka hledá tematicky podobný obsah. Výsledky se následně sloučí do společného seznamu. K tomu lze použít například metodu Reciprocal Rank Fusion (RRF), která kombinuje pořadí výsledků z jednotlivých vyhledávacích systémů.
V některých řešeních se sloučený seznam následně předává modelu pro přerovnání výsledků, takzvanému rerankeru. Ten posoudí vztah mezi dotazem a jednotlivými dokumenty podrobněji. Konkrétní postup závisí na datech, použité infrastruktuře i požadavcích na rychlost a přesnost.
Kde se hybridní vyhledávání uplatní
- Interní znalostní báze: pomáhá vyhledávat odpovědi v dokumentaci, směrnicích a firemních materiálech.
- E-commerce: propojuje přesné názvy a parametry produktů s dotazy popisujícími jejich účel nebo vlastnosti.
- Zákaznická podpora: hledá podobné případy a návody, i když uživatel problém popíše jinými slovy.
- Právní a technická dokumentace: kombinuje vyhledávání přesných označení s hledáním obsahově souvisejících pasáží.
Na co myslet při implementaci
Výsledná kvalita závisí nejen na algoritmu, ale také na přípravě dat. Důležité je vhodně rozdělit dokumenty na menší části, zachovat jejich kontext a doplnit potřebná metadata. U vícejazyčných kolekcí je třeba ověřit, zda zvolený embeddingový model podporuje jazyky a terminologii, se kterými systém pracuje.
Při návrhu je vhodné nastavit váhu jednotlivých metod, způsob slučování výsledků i případné filtrování podle metadat. Úspěšnost je třeba průběžně ověřovat na reprezentativních dotazech: sledovat lze například relevanci výsledků, míru nalezení správného dokumentu a dobu odezvy. Samotné použití embeddings automaticky nezaručuje lepší vyhledávání.
Hybridní vyhledávání jako součást vyhledávacího systému
Hybridní vyhledávání je vhodné tam, kde uživatelé zadávají jak přesné termíny, tak přirozeně formulované otázky. Spojením lexikální a sémantické analýzy může nabídnout vyváženější výsledky než samostatné použití jedné metody. Nejlepší nastavení se však liší podle typu obsahu, chování uživatelů a požadované přesnosti, proto je důležité systém testovat a průběžně upravovat.
