CrossChatby SurveysAI
Pilíř „Eseje a úvahy“

LLM si neumí sám opravit chyby — a proč to většina uživatelů neví

Klíčový nález Huang et al. 2024: LLM neumí opravovat vlastní chyby bez externí zpětné vazby, jak to funguje mechanicky a co to znamená pro návrh AI workflow.

"Zkontroluj svou odpověď a oprav případné chyby." Intuitivní pokyn, který funguje u lidí. Výzkum z roku 2024 ukázal, že u AI modelů bez externí zpětné vazby nefunguje vůbec — modely neopravují chyby, pouze je přeformulovávají.

Pokud dostanete odpověď od kolegy a nejste si jistí správností, požádáte ho: "Zkontroluj to ještě jednou." Kolega se zamyslí, znovu projde uvažování, případně najde chybu a opraví ji. Funguje to, protože lidé dokážou reflektovat nad vlastním myšlením.

Pokud dostanete odpověď od AI modelu a nejste si jistí, logický krok je stejný: "Zkontroluj svou odpověď a oprav případné chyby." Většina uživatelů to zkouší. Intuice říká, že model by měl být schopen identifikovat vlastní chybu, pokud se na to explicitně zeptáte.

Ale výzkum publikovaný v roce 2024 (Huang et al., Google DeepMind) ukázal něco jiného. LLM modely bez externí zpětné vazby nedokážou opravovat vlastní chyby systematicky. Mohou chybu přeformulovat, mohou ji zopakovat s jinou formulací, ale neopraví ji. Důvod je mechanický — model nemá přístup ke ground truth (objektivně správné odpovědi), kterou by mohl použít k ověření své odpovědi. Může jen znovu vzorkovat z vlastní distribuce.

Tento článek představuje klíčový nález: rozlišení mezi "self-correction s externí zpětnou vazbou" (funguje — model dostane signál z vnějšku, že odpověď je špatně, a zkusí to znovu) a "čistou introspekcí" (nefunguje — model se má opravit sám bez externí informace). Implikace: workflow navržená kolem předpokladu "model si chyby opraví sám" jsou postavená chybně. Potřebujete externí mechanismus.

Rámec tvrzení

  • Co článek tvrdí: LLM bez externí zpětné vazby nedokážou systematicky opravovat vlastní chyby. Introspektivní self-correction (prompt "zkontroluj a oprav") je pouze nové vzorkování z téže distribuce, ne skutečná oprava. Self-correction s externí zpětnou vazbou (interpret, testy, druhý model) funguje, protože dodává nový datový bod.
  • Na čem to stojí: Huang et al. (2023/2024, arXiv:2310.01798, Google DeepMind), ReAct architektura (Yao et al. ICLR 2023), Multi-Agent Debate (Du et al. 2023), Dunning-Kruger efekt (Kruger & Dunning 1999), metacognition (Flavell 1979).
  • Kde je to zjednodušení: Článek prezentuje binární rozlišení (introspekce nefunguje / externí zpětná vazba funguje), ale v praxi existuje spektrum. Některé formy Chain-of-Thought self-reflection mohou marginálně zlepšit výsledky i bez externí zpětné vazby. Rozsah zlepšení +20-40 p.b. s externím feedbackem je orientační, ne univerzální.

Co přesně Huang et al. zjistili — a proč je to překvapivé

Bez externí zpětné vazby LLM modely nevykazují vyšší přesnost při "self-correction" než při první odpovědi. Často posilují vlastní chyby.

Experiment testoval GPT-4, Claude a Gemini na různých úlohách vyžadujících uvažování — matematika, faktické otázky, logické úlohy. První odpověď dostane prompt "answer this question". Druhá odpověď dostane prompt "review your previous answer and correct any mistakes". Očekávání: přesnost se zvýší, protože model identifikuje chyby a opraví je.

Výsledek: přesnost se nezvýšila systematicky. V některých případech dokonce klesla.

Huang et al. ukazují, že napříč běžnými benchmarky čistý prompt typu "zkontroluj svou odpověď a oprav chyby" nezvyšuje přesnost spolehlivě. Často jen změní formulaci bez zlepšení správnosti a někdy dokonce zhorší původně správnou odpověď. Bez externí zpětné vazby je "self-correction" většinou jen nové vzorkování z téže distribuce, ne ověřovací mechanismus.

Klíčový nález: Model "opravu" provede — vygeneruje nový text. Ale není to oprava založená na identifikaci chyby. Je to nové vzorkování z téže distribuce. Pokud distribuce favorizuje sebejistě chybnou odpověď, druhý vzorek může být stejně špatný nebo horší.

Model nemá mechanismus k detekci chyby bez externího signálu. Pokud první odpověď byla špatně, model nemá způsob, jak to zjistit introspektivně. Může jen vygenerovat další odpověď z téže distribuce — která může být stejně špatná nebo dokonce horší (pokud model posiluje sebejistě chybné uvažování).

Proč je to překvapivé? Intuice vychází z lidské zkušenosti. Když se člověk zamyslí nad vlastní odpovědí, může najít logickou chybu. Může si vzpomenout na přehlédnutý fakt. Může rozpoznat zkreslení v původním uvažování.

Ale LLM není kognitivní systém s přístupem ke ground truth. Je to generativní model, který vzorkuje z naučené distribuce. Pokud distribuce vede k chybě, opakované vzorkování nevede k opravě. Pouze k jinému vzorku ze stejné chybné oblasti.


Proč to mechanicky nefunguje — model nemá přístup ke ground truth

Self-correction vyžaduje externí referenční bod — ground truth, signál zpětné vazby. Model, který má přístup jen k vlastní distribuci, nemá jak rozlišit správnou odpověď od věrohodně chybné.

Lidská self-correction funguje, protože máme přístup k externím datovým bodům. Když si fyzik zkontroluje výpočet, ověří ho proti známým fyzikálním zákonům. Když si programátor zkontroluje kód, spustí testy. Když si autor zkontroluje text, přečte ho z pohledu čtenáře (simulace externí zpětné vazby).

LLM tuto schopnost nemá. Model má přístup pouze k vlastní distribuci tokenů, kterou se naučil během tréninku. Pokud jeho distribuce favorizuje sebejistě chybnou odpověď, opakované vzorkování z téže distribuce vede k podobnému typu chyby.

Analogie ilustruje mechanismus. Představte si mapu, která má chybu (řeka místo cesta). Pokud máte jen tuto mapu a žádný jiný zdroj informací, nemáte jak zjistit, že je špatně. Můžete se dívat na mapu znovu, můžete ji analyzovat detailněji, ale stále vidíte stejnou chybu. Potřebujete druhý zdroj (GPS, jiná mapa, fyzická realita) k ověření.

LLM funguje podobně. Model má "mapu" — distribuci tokenů naučenou z tréninku. Pokud je v této mapě chyba (zkreslení, halucinace, nesprávný vzorec), model nemá přístup k "druhému zdroji" k ověření. Může jen znovu vzorkovat z téže mapy. Může generovat různé formulace téže chyby, ale nemá mechanismus k identifikaci, že jde o chybu.

Prompt pro self-correction ("review your answer and correct mistakes") není mechanicky funkční bez externí zpětné vazby. Model vygeneruje novou odpověď. Ale neexistuje mechanismus, který by preferoval správnou odpověď před původní chybnou — pokud jsou obě věrohodné podle naučené distribuce.

Kdy self-correction náhodou funguje? Pokud model měl správnou odpověď v distribuci, ale první vzorek byl statistická odlehlá hodnota (nízká pravděpodobnost), druhý vzorek může trefit správnou odpověď (vyšší pravděpodobnost). Ale to není oprava chyby — je to nové vzorkování, které náhodně dopadlo lépe. Nelze na to spoléhat systematicky.

Pokud první odpověď byla sebejistě chybná (vysoká pravděpodobnost podle distribuce), druhý vzorek pravděpodobně bude podobně chybný. Nové vzorkování nemění podkladovou distribuci.


Self-correction s externí zpětnou vazbou funguje — ale to není introspekce

Pokud model dostane externí signál (správnou odpověď, typ chyby, výsledek ověření), dokáže se přizpůsobit. Ale to je fundamentálně jiný mechanismus než self-correction bez zpětné vazby.

Rozlišení mezi dvěma typy "self-correction":

Introspektivní self-correction: Model dostane prompt "review and correct" bez dalších informací. Nefunguje (Huang et al. 2024). Model nemá externí referenční bod. Může jen znovu číst vlastní výstup a znovu vzorkovat.

Self-correction se zpětnou vazbou: Model dostane signál z vnějšku (Python interpreter vrátil chybu, unit test selhal, jiný model nesouhlasí, člověk říká "tohle je špatně"). Funguje, ale není to introspekce. Je to úprava na základě nové informace.

Konkrétní příklad z generování kódu ilustruje rozdíl.

Introspektivní: "Write Python function to sort list" → model vygeneruje funkci s chybou (např. chyba typu off-by-one) → "review your code and correct mistakes" → model vygeneruje stejnou nebo podobnou chybu. Přesnost se nezvyšuje. Model nemá způsob, jak identifikovat logickou chybu bez spuštění.

Se zpětnou vazbou: "Write Python function" → model vygeneruje funkci → spuštění v Python interpreteru → vrátí chybovou hlášku IndexError: list index out of range → "fix the error based on this message" → model opraví konkrétní chybu (upraví index). Přesnost se zvyšuje dramaticky (+20–40 procentních bodů v experimentech).

Rozdíl: V druhém případě model dostal nový datový bod (chybovou hlášku z interpreteru), který nebyl v původní distribuci. To je externí zpětná vazba, ne introspekce. Model ví kde je chyba (konkrétní řádek) a jaký typ (IndexError), a může cíleně upravit odpověď.

Workflow, které spoléhá na "model si chyby opraví sám", musí obsahovat externí mechanismus zpětné vazby. Příklady funkční zpětné vazby:

Spuštění kódu (code execution): Interpreter nebo kompilátor vrací chyby → model ví, že kód není funkční → upravuje ho na základě chybové hlášky. Není to introspekce, je to zpětná vazba ze systému, který má přístup ke ground truth (správnému běhu).

Unit testy: Test selže → model ví, že logika je špatná → opraví ji na základě selhaného testovacího případu. Externí ověření přes testovací sadu.

Neshoda více modelů (multi-model disagreement): Druhý model nesouhlasí → první model ví, že odpověď je sporná → regeneruje ji s vědomím, že původní odpověď byla pochybná. Není to introspekce, je to externí pohled od nezávislého systému.

Lidská zpětná vazba: Uživatel říká "tohle je špatně" → model upravuje odpověď. Explicitní externí signál.

Použití nástrojů (tool use): Model volá kalkulačku pro aritmetiku, vyhledávač pro fakta → ověřuje vlastní výstup přes externí zdroj. Ukotvení v ověřitelných datech.

Vícemodelový workflow (např. CrossChat) je forma externí zpětné vazby. Pokud tři modely nesouhlasí, každý dostává signál "tvoje odpověď je ve sporu s jinými", což spouští úpravu, ne slepé nové vzorkování z téže distribuce.


Proč většina uživatelů to neví — a co to mění v praxi

Intuice "zkontroluj svou odpověď" funguje u lidí → uživatelé automaticky aplikují na AI → workflow je postavený na chybném předpokladu.

Lidé mají tendenci antropomorfizovat AI. Pokud kolega dokáže zkontrolovat vlastní práci, předpokládáme, že AI dokáže totéž. Ale mechanismus je fundamentálně jiný. Lidský mozek má přístup k explicitním pravidlům, externím znalostem a metakognici (myšlení o vlastním myšlení). LLM má přístup pouze k naučené distribuci tokenů.

Konkrétní běžné workflow, která selhávají:

Uživatel: "Napiš mi report" → AI vygeneruje → "zkontroluj faktické chyby" → AI přečte vlastní text a řekne "looks good" (i když obsahuje halucinace). Model nemá mechanismus k detekci halucinace ve vlastním výstupu. Pokud halucinoval citaci, nemá přístup k databázi článků k ověření. Může jen znovu číst vlastní text — který zní věrohodně, protože ho právě vygeneroval podle své distribuce.

Vývojář: "Write function" → AI vygeneruje kód → "review your code for bugs" → AI říká "code is correct" (i když obsahuje logickou chybu). Model nemá mechanismus k detekci logické chyby bez spuštění. Může jen znovu číst kód a ověřit, že syntaxe je správná — ale správná syntaxe negarantuje správnou logiku.

Analytik: "Summarize this research" → AI vygeneruje shrnutí → "verify all citations are accurate" → AI říká "all citations verified" (i když některé jsou vymyšlené). Model nemá přístup k citační databázi k ověření. Může jen znovu číst vlastní citace — které generoval tak, aby vypadaly věrohodně.

Proč to nefunguje: Model nemá mechanismus k detekci halucinace ve vlastním výstupu. Introspekce vyžaduje přístup k externí pravdě (external truth), který model nemá.

Správný návrh workflow:

Nahraď introspekci externím ověřením: Místo "zkontroluj své citations" použij "fetch actual paper titles from database and compare". Externí volání nástroje poskytuje ground truth.

Vícekrokový postup s externími nástroji: Pokud model generuje faktické tvrzení, následující krok musí volat nástroj (vyhledávač, databázi, kalkulačku) k ověření. Nástroj má přístup ke ground truth, který model nemá.

Člověk v rozhodovací smyčce (human-in-the-loop) pro vysoce rizikové případy: Pokud je cena chyby vysoká (právo, medicína, finance), finální kontrolu musí dělat lidský expert, ne model sám. Člověk má přístup k doménovým znalostem a kritickému myšlení, které model nemá.

Vícemodelová křížová kontrola (multi-model cross-check): Pokud není dostupný externí nástroj, použij druhý nezávislý model k revizi. Není to introspekce, je to externí perspektiva. Pokud druhý model nesouhlasí, je to signál k hlubšímu zkoumání.

Praktický test: Pokud model řekne "I reviewed my answer and it's correct", zeptej se "what specific checks did you perform?" Pokud je odpověď obecná ("I verified logic", "I checked facts"), model neměl mechanismus k ověření — jen znovu četl vlastní text. Pokud je odpověď konkrétní ("I compared date X against source Y", "I executed code and got result Z"), model měl externí zpětnou vazbu (volání nástroje, dotaz do databáze).


Důsledky pro návrh AI workflow

Pokud víte, že model neumí opravit chyby introspektivně, návrh workflow se mění. Místo "model → self-review → output" potřebujete "model → external check → adjust or approve".

Tři konkrétní návrhové vzory (design patterns), které fungují:

Vzor 1 — Ověřování s podporou nástrojů

Model generuje faktické tvrzení → volá vyhledávací API nebo databázi → porovná vlastní výstup s dohledaným faktem → upraví odpověď, pokud nesouhlasí.

Příklad: architektura ReAct (Yao et al., ICLR 2023). Model střídá uvažování a použití nástrojů. Každé volání nástroje je forma externí zpětné vazby. Model vygeneruje hypotézu → zavolá vyhledávací nástroj → získá fakt → porovná ho s hypotézou → upraví uvažování podle dohledaného faktu.

Mechanismus: Model nemá přímý přístup ke ground truth, ale má přístup k nástrojům, které ground truth mají. Volání nástroje přemosťuje mezeru mezi distribucí modelu a externí realitou.

Vzor 2 — Debata více agentů (multi-agent debate)

Model A generuje odpověď → Model B kritizuje → Model A upraví odpověď na základě kritiky modelu B.

Není to introspekce (model A neřeší problém sám). Je to externí zpětná vazba (model B poskytuje pohled, který model A neměl). Model B má jinou distribuci (jiná tréninková data, jiná architektura), proto může identifikovat chyby, které model A přehlédne.

Příklad: Multi-Agent Debate (Du et al., 2023). Heterogenní modely (GPT-4 + Claude + Gemini) iterativně revidují pozice. Každý model poskytuje ostatním zpětnou vazbu. Kvalitnější odpověď vzniká v debatě, ne introspekcí.

Vzor 3 — Smyčka lidské revize (human review loop)

Model generuje návrh → lidský expert identifikuje konkrétní chyby → model dostane zpětnou vazbu "section X is wrong because Y" → upraví odpověď.

Není to self-correction, je to řízená oprava (supervised correction). Člověk poskytuje ground truth nebo doménovou expertizu, kterou model nemá. Model upravuje odpověď na základě explicitní zpětné vazby.

Anti-patterny, kterým se vyhnout:

"Model → prompt 'check your work' → trust output" — Spoléhá na introspekci, která nefunguje. Model nemá způsob, jak identifikovat chyby bez externího signálu.

"Model → model znovu čte vlastní text → claims 'verified'" — Model jen znovu vzorkuje z téže distribuce. Pokud halucinoval, opětovné čtení nepomůže — halucinace zní věrohodně podle jeho distribuce.

"Model → prompt 'are you sure?' → model říká 'yes' → proceed" — Sebejistota není kalibrace. Model může být sebejistý a zároveň chybný.

Tato workflow spoléhají na introspekci, která mechanicky nefunguje bez externího referenčního bodu.


Praktický závěr

1. Nehledej introspektivní self-correction — hledej externí mechanismus zpětné vazby. Pokud potřebuješ, aby model opravil chyby, musíš mu poskytnout externí signál (výsledek nástroje, druhý model, lidskou zpětnou vazbu). Prompt "review and correct" bez zpětné vazby systematicky nepomůže.

2. Navrhni workflow s externím ověřením. Pro faktická tvrzení: volání nástroje k databázi nebo vyhledávači. Pro kód: spuštění v interpreteru nebo unit testy. Pro uvažování: druhý nezávislý model jako kritik. Introspekce není spolehlivá možnost.

3. Rozlišuj nové vzorkování od opravy. Pokud model vygeneruje novou odpověď po promptu "review", není to nutně oprava — může to být jen další vzorek z téže distribuce. Ověř, že nová odpověď je fakticky lepší (přes externí kontrolu), ne jen jinak formulovaná.

4. Pro vysoce rizikové případy je lidská revize povinná. Model neumí identifikovat vlastní chyby systematicky. Pokud je cena chyby vysoká (právo, medicína, finance), finální ověření musí dělat lidský expert, ne AI self-check. Externí perspektiva je kritická.


Zdroje

  • Huang, J. et al. (2023/2024). Large Language Models Cannot Self-Correct Reasoning Yet. arXiv:2310.01798. DOI: 10.48550/arXiv.2310.01798.
  • Yao, S. et al. (2022/2023). ReAct: Synergizing Reasoning and Acting in Language Models. arXiv:2210.03629. DOI: 10.48550/arXiv.2210.03629.
  • Du, Y. et al. (2023). Improving Factuality and Reasoning in Language Models through Multiagent Debate. arXiv:2305.14325. DOI: 10.48550/arXiv.2305.14325.
  • Kruger, J. & Dunning, D. (1999). Unskilled and Unaware of It: How Difficulties in Recognizing One's Own Incompetence Lead to Inflated Self-Assessments. Journal of Personality and Social Psychology. — Paralelní fenomén u lidí: lidé s nízkou kompetencí neumí identifikovat vlastní chyby.
  • Flavell, J. (1979). Metacognition and Cognitive Monitoring: A New Area of Cognitive-Developmental Inquiry. American Psychologist. — Proč lidská introspekce funguje: metacognition vyžaduje přístup k explicit rules a external knowledge.

Historie úprav

Koncept: Claude Code + Anthropic Sonnet 4.6 Verze 1: Claude Code + Anthropic Sonnet 4.6 Verze 2: Codex + GPT-5.2

Jazyková revize (2026-02-25, Codex + GPT-5): důkladně upravena stylistika, počeštěna terminologie a opraveny vazby; zachován technický význam pojmů. Kvalitativní audit (2026-03-23, Claude Code + Claude Opus 4.6): přidán Rámec tvrzení, ověřeny zdroje, jazyková úprava.

Sdílet článek