Grafové vyhledávání produktů s LLM: architektura a příklady
Vyhledávání produktů podle textového dotazu musí zvládat dotazy o délce 1–2 vět. Očekávané scénáře zahrnují jednoduché dotazy ("džíny"), sémantické vyhledávání (svetr → mikiny), negace ("šaty ne z bavlny"), epiteta ("efektní šaty"), strukturované popisy ("dlouhé šaty s krátkými rukávy"), více entit ("bílý top a modré džíny"), dotazy podle účelu ("obuv pro sport"), zmínky o značkách/cenách ("kabelku Kors pod 20 tisíc") a odkazy na veřejné osobnosti ("kabelku jako má Dua Lipa").
Takové dotazy přesahují možnosti klíčových slov a vektorového vyhledávání a vyžadují analýzu vztahů a kontextu.
Výhody grafové reprezentace
Grafy ukládají nejen entity, ale i vztahy mezi nimi. Pro dotaz "tílko" popis produktu "džíny Levi's, dobře se hodí k topu" nezpůsobí falešně pozitivní shodu: v grafu je "tílko" spojeno s hlavním objektem, v produktu nikoli. Metrika graph2graph similarity to zohledňuje a snižuje skóre.
Pro "džíny" je skóre vysoké díky sémantické shodě struktur.
Grafy umožňují rozlišit role uzlů: požadovaný produkt, nežádoucí atribut, část objektu.
Kontejner LLM Graph Search
Algoritmus se skládá z postupných kroků:
- Optimalizace dynamických promptů: Analýza dotazu na složitost, extrakce značek/cen. Pro jednoduché dotazy (1–2 slova) – fallback na klíčová slova nebo vektorové vyhledávání. Vytváří prompt pro Text2Graph.
- Text2Graph: LLM vytváří knowledge graph z dotazu. Rozděluje na podgrafy pro více entit.
- Grafové vyhledávání: Porovnání grafu dotazu s grafy produktů podle graph2graph similarity. Vypisuje top-N indexů.
- LLM-ranker: Přerankování kandidátů pro zvýšení přesnosti.
- Vyhodnocení výsledku: Analýza shod/neshod (našli typ, ale ne barvu). Při nízkém skóre – iterace nebo návrat.
Latence 10–15 s je přijatelná pro systémy podobné RAG.
Příklady zpracování složitých dotazů
Negace
Dotaz: "elegantní dlouhé šaty bez rukávů". Graf označí "rukávy" jako nežádoucí atribut. Vyhledávání vylučuje produkty s rukávy, zaměřuje se na šaty s atributy "elegantní", "dlouhé".
Strukturované dotazy
"Dlouhé šaty s krátkými rukávy". Graf: šaty (dlouhé) → rukávy (krátké). Algoritmus najde produkty s hierarchickou strukturou, bez omezení hloubky. Užitečné pro dokumenty s vnořenými podmínkami (žádosti s filtry podle stavu/dat).
Více entit
"Bílé džíny a modrá kabelka". Text2Graph rozdělí na podgrafy, vyhledávání běží paralelně. Možné je párování sad (modrý oblek pro "modrý sako a modré kalhoty"), ale vyžaduje vylepšení hodnocení, aby se předešlo falešným návratům.
Účel bez typu
"Obuv pro sport". Graf se rozšiřuje na scénář použití, páruje podle sémantiky.
Značky a cena
"Džíny Levi's do 12 tisíc". Filtry se extrahují v Text2Graph, integrují se do grafu. Textová hodnocení ("levně") – podle statistik podobných produktů.
Co je důležité
- Grafové vyhledávání překonává vektorové ve strukturovaných dotazech s negacemi a vztahy.
- Kontejner je doménově nezávislý (kromě optimalizace promptů), přizpůsobuje se knihám/dokumentům.
- Vyhodnocení výsledku umožňuje iterace bez zobrazení uživateli.
- Latence se snižuje na 2–3 s při vektorizaci a volitelném rankeru.
- Perspektivy: směrování podle složitosti, multimodální modely, deep research.
— Editorial Team
Zatím žádné komentáře.