Agentic RAG: zkušenost s vytvořením systému pro vyhledávání soudních dokumentů DIFC
Tým "Sparks of intelligence" vyvinul dva varianty RAG-systémů pro hackathon Agentic Legal RAG Challenge 2026 od EORA AI. Cílem bylo poskytovat přesné odpovědi na otázky týkající se více než 300 soudních dokumentů Mezinárodního finančního centra Dubaje (DIFC). Ceny činily 32 000 dolarů, účastníků bylo přes 300. Soutěž probíhala ve dvou fázích: předběžné kolo (30 dokumentů, 100 otázek) a finále (300 dokumentů, 900 otázek). Otázky byly klasifikovány podle typu: boolean, název, datum, číslo, volný text. Hodnocení probíhalo podle přesnosti, rychlosti a spotřeby tokenů.
Obtíže vektorového vyhledávání v RAG
Vektorové vyhledávání je efektivní pro semanticky podobné fragmenty (např. "ukončení smlouvy" ≈ "rozlučka smlouvy"), ale selhává při konkrétních faktech jako "město soudního řízení v případu Jason proti Krügerovi". Rozsah dokumentů tento problém zhoršuje: od rychlého vyhledávání v malé knihovně po nutnost indexace v obrovských korpusůch.
Klíčem ke zvládnutí je částečné rozdělení (chunking): rozdělení textu na smysluplné části. Naivní přístup (podle šablon: článek 1, odstavec 2) funguje při pevné hierarchii, ale vyžaduje optimální velikost. Malý chunk má jasný vektor bez kontextu; velký je rozmazaný.
Příklad problému:
- Původní text: "Na zasedání byli přítomni: Účastník 1, Účastník 2, Účastník 3."
- Rozdělení podle seznamu → každý bod ztrácí smysl.
Strategie částečného rozdělení a hybridní vyhledávání
Hybridní vyhledávání kombinuje vektory, BM25 a metadatové informace. Reranker (model pracující na párech otázka-odpověď) přeorganizuje top-k*10 na top-k pro vyšší přesnost.
Varianta částečného rozdělení:
| Přístup | Popis | Výhody | Nevýhody |
|--------|----------|-------|--------|
| B1. Fixní velikost + překryv | Chunky po N tokenech s překryvem | Jednoduchost | Riziko porušení kontextu |
| B2. Hierarchický | Velké chunky → malé; kontext z velkých | Zachování kontextu | Složitá implementace |
| B3. Semantický | Skupiny podle smyslu prostřednictvím ML | Relevance | Vysoce náročné na zdroje |
Tým použil B1 a B2, B3 vynechal kvůli časovým omezením.
Architektura jednoduchého řešení
Qdrant + LlamaIndex pro vektorovou databázi, Unstructured pro extrakci z PDF s zachováním struktury.
Částečné rozdělení: podle stránek + překryv. Vyhledávání: hybridní + regex pro vzory + filtrování podle metadat. Reranker: ano.
Výhody:
- Rychlá implementace.
- Předvídatelnost.
- Grounding z chunku (stránka).
Nevýhody:
- Regex: falešné signály / propuštění.
- Pevná vazba na strukturu.
- Původní grounding nebylo v metadatech (opraveno).
Výsledky:
- Předběžné kolo: přesnost det 0,9 → 0,81 (po opravě), grounding 0,5 → 0,58.
- Finále: přesnost 0,79, grounding 0,63, střední rychlost.
Agentic RAG: router a nástroje
Částečné rozdělení: hierarchické. Algoritmus:
- Analýza struktury pomocí LLM na výběru.
- Zaznamenání vzorů.
- Rekurzivní spojování malých chunků do cílové velikosti.
Problémy: nestabilita vzorů na stránkách → špatné chunky.
Vyhledávání: agent-router rozděluje do 4 nástrojů (metadatové informace, přesné shody, porovnání dokumentů, hybridní), s filtry podle čísla případu/zákona. Architektura: router → nástroje (s rerankerem) → generátor agenta.
Výhody:
- Správný výběr nástrojů podle kontextu.
- Filtrování fungovalo.
Nevýhody:
- Nestabilní částečné rozdělení.
- Špatné chunky.
- Nedotestováno (chyby API na termínu).
Výsledky předběžného kola: přesnost 0,74, grounding 0,6, nízká rychlost (2 LLM-volání). Finále nebylo odevzdáno.
Co je důležité
- Hybridní vyhledávání + reranker jsou nezbytné pro přesnost mimo semantiku.
- Částečné rozdělení podle stránek je jednodušší a stabilnější než hierarchické v krátkém čase.
- Agenty je užitečné pro routování, ale vyžadují pevnou schéma nástrojů a testování.
- Grounding v metadatech je klíčové pro deterministické odpovědi.
- Regex doplňuje, ale ne nahrazuje vektory; opatrně s falešnými signály.
Celkový závěr: jednoduché řešení dosáhlo stabilních výsledků 0,79/0,63. Agentní přístup má potenciál, ale rizika spojená s částečným rozdělením a laděním. Zkušenost ukázala: zaměřte se na předvídatelnost místo složitosti.
— Editorial Team
Zatím žádné komentáře.