Preskočiť na obsah
4.11Expert7 min

Corrective RAG a Self-RAG: samoopravné retrieval vzory pre menej halucinácií

Sebastian KarallAktualizované 17. októbra 2026
Definition

Corrective RAG (CRAG) a Self-RAG sú samoopravné retrieval vzory. CRAG hodnotí relevanciu získaných výsledkov a pri slabej kvalite prepína na web-search fallback. Self-RAG necháva model cez reflection tokens samostatne rozhodnúť, či vôbec vyhľadáva a či je jeho vlastná odpoveď podložená zdrojmi.

Na prvý pohľad

  • CRAG pridáva do RAG pipeline retrieval evaluátor: výsledky sa hodnotia ako správne, nejednoznačné alebo nesprávne; pri slabej kvalite nastupuje web-search fallback namiesto slepého generovania nad zlým kontextom.
  • Self-RAG (Asai et al. 2023, arXiv:2310.11511) trénuje model na reflection tokens, pomocou ktorých sám rozhoduje, či je retrieval potrebný, a overuje vlastnú odpoveď voči zdrojom (faithfulness sebakritika).
  • Oba vzory riešia kľúčový problém context-unfaithful generation: halucinácie napriek RAG, keď model cituje zdroje, ale obsahovo sa od nich odchyľuje.
  • Patria do stupňa Agentic RAG: retrieval sa stáva reflektívne a iteratívne volaným nástrojom namiesto statického predspracovania. Singh et al. 2025 uvádzajú CRAG ako samostatnú architektúru Agentic RAG, Self-RAG sa hodí ako skorý príklad.
  • Kompromis je skutočný: dodatočné volania LLM na hodnotenie a sebakritiku zvyšujú latenciu a náklady a nesú riziko nekontrolovaných slučiek volaní nástrojov; oplatia sa najmä pri vysokom riziku halucinácií a neúplných znalostných bázach.
  • Pragmatický začiatok pre väčšinu projektov v regióne DACH: najprv naplno využiť hybrid search, re-ranking a faithfulness guardrails (RAGAS), potom selektívne doplniť CRAG/Self-RAG.

Corrective RAG (CRAG) a Self-RAG sú dva samoopravné retrieval vzory, ktoré rozširujú klasický vzor RAG o kontrolu kvality. CRAG hodnotí relevanciu získaných výsledkov a pri slabej kvalite retrievalu prepína na web-search fallback. Self-RAG necháva jazykový model cez reflection tokens samostatne rozhodnúť, či vôbec vyhľadáva, a následne overuje, či je jeho vlastná odpoveď podložená zdrojmi. Oba mieria na ten istý problém: halucinácie, ktoré vznikajú napriek RAG.

  • CRAG v jednej vete: Retrieval evaluátor zaradí výsledky ako správne, nejednoznačné alebo nesprávne a pri zlom kontexte spustí opravné opatrenie namiesto toho, aby sa slepo generovalo ďalej.
  • Self-RAG v jednej vete: Model cez trénované reflection tokens sám riadi, kedy vyhľadáva a či jeho odpoveď zodpovedá zdrojom.
  • Spoločné jadro: Oba patria do rodiny vzorov Agentic RAG a nepovažujú retrieval za statické predspracovanie, ale za overiteľný a riaditeľný krok.

Prečo klasický RAG nestačí

Štandardný RAG (Naive RAG podľa taxonómie Gao et al. 2023, arXiv:2312.10997) má pevný priebeh: embedding, vyhľadanie, vloženie do promptu, generovanie. Problém: pipeline slepo dôveruje top-k výsledkom. Ak sú sémanticky podobné, ale obsahovo irelevantné, alebo vhodné dokumenty jednoducho neexistujú, model aj tak vygeneruje odpoveď a oprie ju o nevhodné zdroje.

Typické sú dva typy chýb. Pri context-unfaithful generation model cituje zdroje, ale obsahovo sa od nich odchyľuje. Bežnými protiopatreniami sú faithfulness guardrails, sebakritika a citation-forcing prompty. Druhý typ chyby vzniká bez re-rankingu: top-k výsledky sú potom často síce podobné, ale nie relevantné. Presne do tejto medzery vstupujú CRAG a Self-RAG: robia kvalitu retrievalu explicitne overiteľnou a reagujú na ňu.

Dôležité pre zaradenie: najúčinnejším prostriedkom proti halucináciám naďalej zostáva samotná kvalita retrievalu. Anthropic Contextual Retrieval znižuje mieru chýb top-20 retrievalu o 49 percent (z 5,7 na 2,9 percenta), v kombinácii s re-rankingom o 67 percent (na 1,9 percenta). Ide o benchmarky samotného dodávateľa, spoločnosti Anthropic, stav k septembru 2024. Samooprava je druhá línia obrany, nie prvá.

Corrective RAG (CRAG): hodnotiť výsledky, potom opraviť

CRAG pridáva do pipeline retrieval evaluátor. Po retrievale, ale pred generovaním, tento evaluátor hodnotí relevanciu nájdených dokumentov a rozdeľuje ich do troch tried podľa miery istoty:

  • Correct (vysoká istota): Výsledky sú relevantné. Spresnia sa (napríklad metódou decompose-recompose, ktorá odstráni šum) a odovzdajú sa generátoru.
  • Incorrect (nízka istota): Výsledky sú nepoužiteľné. Namiesto generovania nad zlým kontextom sa spustí fallback, typicky webové vyhľadávanie, ktoré doplní aktuálny externý obsah.
  • Ambiguous (stredná istota): Neistý prípad. Kombinujú sa obe cesty: interný kontext plus výsledky webového vyhľadávania.

Rozhodujúcim mechanizmom je web-search fallback pri slabej kvalite interného retrievalu. Vďaka nemu CRAG kompenzuje neúplnú alebo zastaranú znalostnú bázu bez toho, aby model začal halucinovať. CRAG je nezávislý od modelu: dá sa zaradiť ako dodatočný uzol pred každú existujúcu RAG pipeline bez toho, aby bolo potrebné generátorové LLM znovu trénovať. CRAG vychádza z práce Yan et al. 2024 (arXiv:2401.15884).

Self-RAG: model kritizuje sám seba

Self-RAG (Asai et al., University of Washington, arXiv:2310.11511, október 2023) presúva kontrolu do modelu. Model je trénovaný tak, aby vytváral takzvané reflection tokens, ktorými riadi a hodnotí vlastný proces. Zjednodušene prebiehajú štyri rozhodnutia:

  • Retrieve? Model rozhoduje pri každej požiadavke (alebo pri každom segmente), či je retrieval vôbec potrebný. Triviálne otázky alebo otázky pokryté znalosťami modelu vyhľadávanie nepotrebujú.
  • Is Relevant? Model hodnotí, či je získaná pasáž pre otázku relevantná.
  • Is Supported? Po vyhľadaní model overuje, či je vygenerované tvrdenie podložené získanou pasážou, čo je vstavaná faithfulness sebakritika.
  • Is Useful? Model hodnotí na škále od 1 do 5, nakoľko je odpoveď na otázku užitočná.

Lákadlo: model vyhľadáva len vtedy, keď to sám považuje za potrebné (pri jednoduchých otázkach to šetrí náklady). Pri generovaní Self-RAG vytvorí niekoľko kandidátskych segmentov, ohodnotí ich váženým skóre z tokenov kritiky (relevancia, podloženosť, užitočnosť) a ponechá segment s najlepším hodnotením (Asai et al. 2023). Odmietnutie odpovede alebo eskalácia na človeka nie je súčasťou metódy, dá sa však na týchto tokenoch postaviť. Cena: pôvodná implementácia Self-RAG predpokladá model špeciálne trénovaný na reflection tokens. V praxi mnohé tímy aproximujú toto správanie cez prompting a sebakritickú slučku so štandardným modelom. Realizácia je tak lacnejšia, výsledok však menej spoľahlivý ako s modelom trénovaným na tento účel.

Porovnanie: CRAG vs. Self-RAG vs. štandardný RAG

Dimenzia

Štandardný RAG (Naive)

Corrective RAG (CRAG)

Self-RAG

Kontrolný prvok

žiadny

externý retrieval evaluátor

samotný model (reflection tokens)

Rozhodnutie o retrievale

vždy

vždy, potom hodnotené

riadené modelom (on demand)

Reakcia na zlý kontext

žiadna, aj tak generuje

web-search fallback / spresnenie

tokeny kritiky hodnotia kandidátov, vyhráva najlepšie hodnotený segment

Kontrola faithfulness

potrebná externe (napr. RAGAS)

len nepriamo (evaluátor kontroluje výsledky, nie odpoveď)

vstavaná (token Is-Supported)

Potrebné trénovanie modelu

nie

nie

áno (pôvodný variant)

Náročnosť implementácie

nízka

stredná

vysoká (resp. stredná ako aproximácia cez prompting)

Latencia / náklady na požiadavku

základ

základ plus volanie evaluátora, príp. web-search

základ plus kroky reflexie a kritiky

Typický spôsob zlyhania

chunk mismatch, context-unfaithful generation

chybné hodnotenie evaluátora

nekontrolované slučky, náklady

Podľa taxonómie vývoja RAG (Naive, Advanced, Modular, Graph, Agentic) patria oba vzory do stupňa Agentic RAG. Singh et al. 2025 (arXiv:2501.09136) opisujú Agentic RAG ako vzory, pri ktorých retrieval funguje ako dynamicky a iteratívne volaný nástroj agenta, s reflexiou, plánovaním a používaním nástrojov. Self-RAG sa v tomto prehľadovom článku nevyskytuje, hodí sa však ako skorý príklad, pretože model sám rozhoduje o vyhľadávaní. Corrective RAG uvádzajú Singh et al. ako samostatnú architektúru (Agentic Corrective RAG). K poctivému zaradeniu patrí aj to, že pojem Agentic RAG v roku 2026 ešte nie je jednoznačne ustálený.

Konkrétny príklad: znalostná báza podpory s medzerami

Predpokladajme, že agentúra prevádzkuje pre B2B klienta asistenta zákazníckej podpory postaveného na RAG nad internou znalostnou bázou. Používateľ sa pýta na funkciu, ktorá bola zverejnená až včera v poznámke k vydaniu (release note), ktorá ešte nie je indexovaná.

  • Štandardný RAG: Vytiahne tri najpodobnejšie staré dokumenty, nenájde odpoveď a vyhalucinuje vierohodne znejúcu, ale nesprávnu konfiguráciu. Klasická halucinácia napriek RAG.
  • CRAG: Retrieval evaluátor zaradí výsledky ako incorrect (nízka istota relevancie), spustí webové vyhľadávanie vo verejnej produktovej dokumentácii, nájde release note a vygeneruje správnu odpoveď so zdrojom.
  • Self-RAG: Model cez token Is-Relevant vyhodnotí získané chunky ako irelevantné a cez token Is-Supported rozpozná, že nimi nie je podložená žiadna odpoveď. Aplikačné pravidlo postavené na týchto tokenoch potom nepodloženú odpoveď potlačí a eskaluje na človeka.

Na ilustráciu kompromisu: ak štandardné RAG volanie stojí napríklad jedno volanie LLM, CRAG pridáva minimálne jedno volanie evaluátora a v prípade fallbacku aj spracovanie webového vyhľadávania; sebakritická slučka v štýle Self-RAG môže podľa návrhu znamenať ďalšie volania. Pri jednoduchých otázkach môže Self-RAG krok retrievalu dokonca ušetriť. Vo všeobecnosti platí: samooprava nie je bezplatný upgrade, ale vedomá výmena dodatočnej latencie a nákladov za nižšie riziko halucinácií. Pri agentických RAG systémoch pribúda typické riziko: nekontrolované slučky volaní nástrojov, ktoré znásobia náklady na požiadavku.

Kedy majú tieto vzory zmysel

Samoopravné vzory sa oplatia, ak platí aspoň jeden z týchto bodov:

  • Znalostná báza je neúplná alebo zastaraná a fallback na web alebo zdroje tretích strán zaplní skutočné medzery (CRAG).
  • Nesprávne odpovede sú drahé: právo, financie, regulovaná zákaznícka podpora, všetko, kde hrozí právna zodpovednosť.
  • Odmietnutie odpovede pri neistote je žiaduce a akceptované (Self-RAG na to poskytuje tokeny kritiky).

Menší zmysel majú, ak je znalostná báza úplná a čisto indexovaná, ak je v popredí latencia alebo ak je rozpočet na požiadavku tesný. V týchto prípadoch prinášajú lacnejšie opatrenia zo stupňa Advanced RAG zvyčajne lepší pomer: hybrid search (dense plus BM25, aby sa nevynechávali presné kódy), Contextual Retrieval proti chunkom, ktorým chýba okolitý kontext, cross-encoder re-ranking a faithfulness guardrail cez RAGAS v CI pipeline. Contextual Retrieval (kontextualizované embeddingy plus BM25 nad kontextualizovanými chunkmi) spolu s re-rankingom znižuje podľa spoločnosti Anthropic mieru chýb retrievalu až o 67 percent. Až potom sa oplatí selektívne doplniť CRAG alebo Self-RAG pre kritické cesty.

Pre agentúry a B2B rozhodovateľov

Pre agentúry je odkaz klientom jasný: samoopravné retrieval vzory nie sú štandardná funkcia, ktorá sa paušálne zapne, ale cielená investícia pre prípady použitia s vysokým rizikom halucinácií. Pragmatická cesta vedie cez merateľný východiskový stav (zmerať kvalitu retrievalu a faithfulness pomocou RAGAS) a CRAG alebo Self-RAG dopĺňa až tam, kde to čísla odôvodňujú. Pre B2B projekty v regióne DACH navyše platí: web-search fallback (CRAG) musí byť zladený s ochranou údajov a pravidlami pre prácu so zdrojmi, keďže sa do reťazca odpovedí zrazu dostáva externý obsah. Blck Alpaca navrhuje RAG architektúry tak, aby samooprava bola tam, kde naozaj pomáha, a nie aby všade nafukovala náklady a latenciu.

Zhrnúť pomocou AIChatGPTClaudePerplexity

Otvorí chat s pripraveným promptom.

Často kladené otázky

Aký je rozdiel medzi Corrective RAG a Self-RAG?
CRAG zaraďuje pred generovanie samostatný retrieval evaluátor: hodnotí relevanciu získaných výsledkov a pri slabej kvalite spúšťa web-search fallback alebo spresnenie znalostí. Self-RAG presúva kontrolu do samotného modelu: cez trénované reflection tokens LLM rozhoduje, či vôbec vyhľadáva, a následne hodnotí, či je jeho vlastná odpoveď podložená zdrojmi. CRAG teda opravuje krok retrievalu, Self-RAG celý rozhodovací a generačný proces.
Znižujú samoopravné RAG vzory naozaj halucinácie?
Cielene riešia typ chyby context-unfaithful generation, teda halucinácie napriek RAG. Keď sa rozpozná zlý kontext (CRAG) alebo sa vlastná odpoveď overí voči zdrojom (Self-RAG), klesá riziko, že model bude na základe irelevantných výsledkov voľne generovať ďalej. Najúčinnejším prostriedkom však zostáva dobrá kvalita retrievalu: Contextual Retrieval (kontextualizované embeddingy plus BM25 nad kontextualizovanými chunkmi) spolu s re-rankingom znižuje podľa spoločnosti Anthropic mieru chýb retrievalu až o 67 percent, ešte predtým než samooprava vôbec musí zasiahnuť.
Aká veľká je náročnosť implementácie CRAG a Self-RAG?
CRAG sa dá s miernou náročnosťou nasadiť cez existujúce frameworky (LangGraph, LlamaIndex, Haystack, stav 2026) ako dodatočný uzol evaluátora v pipeline a nevyžaduje úpravu modelu. Self-RAG v pôvodnej forme (Asai et al. 2023) predpokladá model trénovaný na reflection tokens, čo je výrazne náročnejšie; varianty bližšie praxi aproximujú toto správanie cez prompting a sebakritickú slučku so štandardným modelom.
Kedy sa tieto vzory oplatia a kedy nie?
Oplatia sa pri vysokom riziku halucinácií, neúplných alebo zastaraných znalostných bázach a v prípadoch použitia, kde je nesprávne zodpovedaná požiadavka drahá (právo, financie, zákaznícka podpora s právnou zodpovednosťou). Nemajú zmysel, ak je znalostná báza úplná a dobre indexovaná, ak je latencia kritická alebo ak je rozpočet na požiadavku tesný: každý dodatočný krok hodnotenia a sebakritiky stojí ďalšie volania LLM.
Sú CRAG a Self-RAG to isté ako Agentic RAG?
Nie, Agentic RAG je širší pojem. Agentic RAG (Singh et al. 2025, arXiv:2501.09136) všeobecne opisuje vzory, pri ktorých sa s retrievalom zaobchádza ako s dynamicky a iteratívne volaným nástrojom agenta, s reflexiou, plánovaním a používaním nástrojov. Singh et al. uvádzajú CRAG ako samostatnú architektúru (Agentic Corrective RAG). Self-RAG v práci nespracúvajú, hodí sa však ako skorý príklad, pretože model sám rozhoduje o vyhľadávaní. Pojem Agentic RAG pritom v roku 2026 ešte nie je jednoznačne ustálený.

Ísť hlbšie?

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