Přeskočit na obsah
12/30Kapitola 12 z 30

Chain of Thought, RLVR a Test-Time Compute v číslech

Stejných 24 úloh: 0 % správně v 1,9 tokenu, 100 % ve 145. Pak self-consistency vrací přesnost, kterou greedy decoding už měl.

Na této stránce

Dvacet čtyři slovních úloh o dvou krocích. Malý model — půl miliardy parametrů, ten samý z kapitoly 11 — dostane každou z nich dvakrát.

Nejdřív je požádán o odpověď:

TEXT
"...How many bolts are left?  Reply with only the final number, nothing else."

  0 / 24 correct        1.9 tokens per answer

Potom je požádán o odpověď, ale s dovolením nejdřív pracovat:

TEXT
"...How many bolts are left?  Think step by step, then give the final
 number on its own line."

  24 / 24 correct       145.2 tokens per answer

Od nuly ke stu procentům. Stejný model, stejné váhy, stejné úlohy, stejný greedy decoding. Jediný rozdíl je, že druhá verze směla před závazným uvedením čísla vyemitovat o 143 tokenů víc.

Tato kapitola je o té mezeře: co ve skutečnosti je, kam až sahá, kolik stojí a co se stalo, když ji obor přestal vyžadovat v prompt a začal ji trénovat přímo.

Láká to říct, že druhá verze „nad tím přemýšlela“. Odolejte tomu, protože mechanismus je zároveň jednodušší a užitečnější pochopit.

Transformer vykoná pevné množství výpočtu na každý vygenerovaný token. Jeden dopředný průchod: stejné vrstvy, stejné matice, stejný počet operací bez ohledu na to, jestli otázka zní kolik je 2+2, nebo dokažte tuto větu. Uvnitř modelu není žádný ovladač „u tohohle se víc snaž“.

Když je tedy model požádán o okamžitou odpověď, veškerý výpočet, který má k dispozici, je jeden dopředný průchod. Každá mezihodnota se musí vejít do aktivací tohoto jediného průchodu a cokoli tam nedokáže spočítat, nespočítá.

Emitování tokenů to mění, a to dvěma odlišnými způsoby, které stojí za to oddělit:

  • Více výpočtu. Každý vygenerovaný token je další plný dopředný průchod. Sto čtyřicet pět tokenů pracovního postupu je sto čtyřicet pětkrát tolik aritmetiky než přímá odpověď.
  • Externalizovaná paměť. Tokeny se zapíšou do kontextu, takže další průchod je může číst. 5 × 13 = 65 se stane faktem ve vstupu, ne hodnotou, kterou musí model držet v aktivaci a nést dál. Model používá vlastní výstup jako poznámkový blok.

Ten druhý bod lidem často uniká a vysvětluje, proč musí být postup zapsán, aby pomohl. Model požádaný, aby „o tom potichu přemýšlel a pak odpověděl“, nemá kam myšlenku uložit.

Nic z toho nevyžaduje nic mystického a vede to k pevné predikci: chain of thought by měl nejvíc pomáhat u problémů se sériovou strukturou — kde druhý krok potřebuje výsledek prvního — a nejméně u problémů, které jsou jedním vyhledáním. Přesně to literatura nachází, a proto „think step by step“ nic neudělá s otázkou jaké je hlavní město Francie.

Chain of thought jako prompting technika

Odkaz na sekci: Chain of thought jako prompting technika

Technika přišla v roce 2022 ve dvou částech. Wei a kol. ukázali, že zahrnutí vypracovaných příkladů do prompt — demonstrací, kde odpovědi předchází odůvodnění — přineslo velké zisky v aritmetických a common-sense benchmarcích.1 Kojima a kol. pak ukázali něco podivnějšího: příklady nejsou potřeba. Připojení „Let's think step by step“ k zero-shot prompt zachytí velkou část stejného zisku.2

Ten druhý výsledek říká, co se děje. Pokud kouzelná fráze odemkne chování, chování už v modelu bylo — pretraining je plný vypracovaných řešení a fráze je ukazatel do té části distribuce. Chain of thought model nic nenaučil. Vybral něco, co už model měl.

Tento rámec také předpovídá pozdější zastarání techniky, k čemuž se vrátíme na konci kapitoly.

Self-consistency a výsledek, který mě překvapil

Odkaz na sekci: Self-consistency a výsledek, který mě překvapil

Zřejmý další krok: pokud může být jeden řetězec uvažování špatně, vzorkujte jich několik a vezměte většinovou odpověď. To je self-consistency.3 Je to striktně větší útrata — nn plných generování místo jednoho — a intuice říká, že špatné odpovědi se rozptýlí, zatímco správné se shodnou.

Měřeno na 16 stejných úlohách, sampling při temperature 0,8, většinové hlasování přes nn řetězců:

nnpřesnostkumulativní tokenytokeny na úlohu
181 %2 952185
281 %5 618351
3100 %8 417526
4100 %11 103694
5100 %13 933871

Šestnáct úloh je malý jmenovatel a pravidlo z kapitoly 4 platí pro tuto tabulku stejně jako pro jakoukoli jinou. 13 z 16 je 81 % s 95% Wilsonovým intervalem [57, 93]; 16 z 16 je 100 % s [81, 100]. Ty se překrývají. Čtěte tvar křivky, to je zjištění; nečtěte přesný stupeň, kde se zplošťuje, protože šestnáct úloh ho nedokáže lokalizovat.

V té tabulce jsou dvě věci a ta druhá není to, co jsem čekal.

Křivka se zplošťuje při n=3n = 3. U třetího vzorku je přesnost na stropě a zbývající dva vzorky už nic nekupují, přesto stojí každý 172 tokenů, dohromady 345. Takový je tvar každé self-consistency křivky reportované v literatuře a přichází mnohem dřív, než naznačuje rámec „víc vzorků je víc lépe“.

A greedy decoding už byl na 100 %. Podívejte se zpět na začátek kapitoly: jeden řetězec, žádný sampling, 145 tokenů, 24/24. Sampling při temperature 0,8 snížil přesnost na 81 % a self-consistency potřebovala tři generování, aby se vyšplhala zpět tam, kde už byl jediný greedy průchod — za 3,6násobek tokenů, nebo šestinásobek, pokud sweep spustíte až do pěti, aniž víte, kde se zplošťuje.

To není argument proti self-consistency. Je to přesné vyjádření toho, co dělá: temperature kupuje diverzitu tím, že vnáší chyby, a hlasování odstraňuje chyby, které právě vnesla. U problémů, kde greedy decoding selhává — kde jediný nejpravděpodobnější řetězec vede někam špatně a méně pravděpodobný je správně — se ten obchod vyplatí, a proto technika existuje. U problémů, kde greedy už uspěje, je to způsob, jak utratit šestinásobek rozpočtu, abyste skončili na nule.

Nikdo nepublikuje druhý případ, a proto stojí za to měřit na vlastní úloze, než techniku převezmete. Toto jsou snadné dvoukrokové úlohy pro malý model; to je režim, ve kterém odpověď vyjde takto.

Všechno dosud se děje v čase prompt na modelu, který na to nikdy nebyl specificky trénován. Posun, který vytvořil současnou generaci reasoning modelů, spočíval v přesunu do trénování — a klíč, který to umožnil, je užší, než zní.

Post-training v kapitole 11 potřeboval lidské preference, protože na otázku „byla to dobrá odpověď?“ neexistuje programová odpověď. U některých otázek ale existuje. Matematická odpověď buď odpovídá správné hodnotě, nebo ne. Kód buď projde testy, nebo ne. Důkaz buď projde kontrolou, nebo ne.

V těchto doménách můžete reward model nahradit verifikátorem a všechno downstream se zlepší najednou: žádní anotátoři, žádné Bradley–Terry fitting, žádné reward hacking typu měřeného v kapitole 11 — protože unit testu se nemůžete vlichotit. To je reinforcement learning from verifiable rewards a je to prostředí, pro které bylo GRPO postaveno: vzorkujte skupinu pokusů o řešení stejného problému, každý zkontrolujte a použijte průměrné skóre skupiny jako baseline. Žádný critic, žádný anotátor, žádný reward model. Jen program, který říká správně, nebo špatně.

Outcome reward. Skóruje jen finální odpověď. Levné — porovnání řetězce — a má zjevnou díru: řešení, které dojde ke správnému číslu špatným uvažováním, je odměněno přesně stejně jako správné, takže policy se může volně naučit věrohodně vypadající nesmysl, který náhodou dopadne.

Process reward. Skóruje každý krok. Lightman a kol.5 vytvořili dataset 800 000 lidmi označených kroků uvažování pro trénování modelu, který to dělá, a ukázali, že na těžké matematice podstatně překonává outcome supervision. Cena je už v názvu: někdo označil 800 000 kroků.

Výsledek, který obor přerámoval, přišel od DeepSeek na začátku roku 2025.6 Vzali base model a aplikovali reinforcement learning with verifiable rewards přímo, bez předchozí supervised fine-tuning fáze — fáze, kterou kapitola 11 představuje jako základ všeho. Dlouhé řetězce uvažování se přesto vynořily. Stejně tak chování, která nikdo netrénoval: model začal znovu kontrolovat vlastní kroky a v nejcitovanější pasáži článku spontánně přehodnotil postup uprostřed řešení.

Poctivé čtení není, že uvažování je magie. Je to, že když je odměňováno jen to, být správně, a být správně u těžkého problému vyžaduje problém propracovat, pak právě propracování problému je to, co optimiser najde — včetně těch částí propracování, které dělají i lidé, protože je vyžaduje problém, ne proto, že je někdo učil.

Reasoning tokeny jsou položka na faktuře

Odkaz na sekci: Reasoning tokeny jsou položka na faktuře

Praktický důsledek toho všeho je, že reasoning model produkuje tokeny, o které jste požádali, i tokeny, o které jste nepožádali, a platíte za obojí.

Poskytovatelé to řeší různě a na rozdílu záleží:

  • Většina API počítá reasoning tokeny dovnitř počtu výstupních tokenů. Vaše faktura i limit max_tokens zahrnují i myšlení, které nikdy neuvidíte.
  • Google Gemini reportuje thinking tokeny jako samostatné pole, mimo standardní počet výstupu.

Je to skutečná nekompatibilita mezi dvěma způsoby počítání téže věci a jakýkoli kód, který počítá náklady nebo vynucuje rozpočet napříč poskytovateli, ji musí normalizovat. Kapitola 16 je místo, kde se z toho stávají peníze, a kapitola 23 místo, kde se z toho stává rozpočet, který můžete vynutit.

Druhý důsledek se týká latence a lidi poprvé překvapuje. Čas reasoning modelu do prvního viditelného token zahrnuje celé jeho myšlení, takže požadavek, který osm sekund nic nestreamuje a pak odpoví za jednu, není zaseknuté spojení — je to pracující model. Jakékoli rozhraní, které osm sekund ukazuje spinner bez vysvětlení, má designový problém, ne síťový.

Kdy „think step by step“ přestává pomáhat

Odkaz na sekci: Kdy „think step by step“ přestává pomáhat

Závěrečné varování, protože právě tak se materiál z této kapitoly nejčastěji použije špatně.

Všechno v první polovině je technika, jak přimět model, který nebyl trénován k uvažování, aby uvažování přesto produkoval. Modely trénované pomocí RLVR už to dělají: emitují vlastní pracovní postup, ve vlastní délce, před odpovědí. Říct takovému modelu, aby myslel krok za krokem, je v lepším případě redundantní a v horším škodlivé — může vytvořit krátký řetězec ve tvaru prompt místo delšího, který by model vygeneroval sám, a někteří poskytovatelé dokumentují přesně tohle.

Totéž platí pro propracované reasoning scaffolds postavené v aplikačním kódu. Prompt, který model provádí rozhodovacím stromem, jímž už naviguje interně, utrácí vaše tokeny za omezení chování, které bylo natrénováno. Tady se poprvé objevuje téma, které běží zbytkem kurzu: techniky, které byly v roce 2022 nezbytné, se do roku 2025 staly pověrou, a jediný způsob, jak pro váš model dnes poznat, co je co, je změřit obojí.

Kapitola 15 je místo, kde se z tohoto měření stává disciplína, ne názor.

Uvažování má nepohodlnou vlastnost: je to jedna schopnost, jejíž náklady škálují s obtížností otázky. Model, který přemýšlí devět set tokenů, udělá devět set dopředných průchodů, pro všechny z nich udržuje v paměti rostoucí cache a po celou dobu drží GPU.

To dělá ekonomiku obsluhy reasoning modelu výrazně horší než obsluhu chat modelu a mění sadu implementačních detailů v rozdíl mezi životaschopným a neživotaschopným produktem: jak se ukládá a znovu používá cache minulých klíčů a hodnot, kolik požadavků může sdílet dopředný průchod a jakou přesnost váhy ve skutečnosti potřebují.

Kapitola 13 je poslední, kde je model objektem ve vaší paměti, ne službou za portem, a je o tom, jak tento objekt udělat dost levný na obsluhu. Také splácí slib z této kapitoly: speculative decoding, který vytvoří několik tokenů zhruba za cenu jednoho tím, že malý model hádá a velký kontroluje — trik, který dává smysl teprve poté, co jste viděli, jak velká část dopředného průchodu se stráví čekáním na paměť místo počítáním.


Všechna měření v této kapitole pocházejí z Qwen/Qwen2.5-0.5B-Instruct na 24 vygenerovaných dvoukrokových slovních úlohách, greedy decoding kromě míst, kde je uveden sampling, s nulou zkrácených generování při použitých stropech tokenů. Jsou reprodukovatelná a jde o malý model na snadných úlohách: výsledek self-consistency čtěte jako demonstraci mechanismu, ne jako benchmark. Kapitola 18 poznámek k přednáškám CS229 a kapitola 12 Hugging Face LLM Course pokrývají tento materiál s většími modely a řádnými benchmarky.

  1. Wei, J. a kol. Chain-of-Thought Prompting Elicits Reasoning in Large Language Models. arXiv:2201.11903 (2022).

  2. Kojima, T., Gu, S. S., Reid, M., Matsuo, Y. and Iwasawa, Y. Large Language Models are Zero-Shot Reasoners. arXiv:2205.11916 (2022). Výsledek „let's think step by step“.

  3. Wang, X. a kol. Self-Consistency Improves Chain of Thought Reasoning in Language Models. arXiv:2203.11171 (2022).

  4. Yao, S. a kol. Tree of Thoughts: Deliberate Problem Solving with Large Language Models. arXiv:2305.10601 (2023).

  5. Lightman, H. a kol. Let's Verify Step by Step. arXiv:2305.20050 (2023). Představuje PRM800K, dataset process supervision o 800 000 krocích.

  6. DeepSeek-AI. DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning. arXiv:2501.12948 (2025). Výsledek R1-Zero — reinforcement learning aplikovaný přímo na base model, bez supervised fine-tuning fáze — je v části 2.2.

  7. Snell, C., Lee, J., Xu, K. and Kumar, A. Scaling LLM Test-Time Compute Optimally can be More Effective than Scaling Model Parameters. arXiv:2408.03314 (2024).

Necháte výběr modelu na LIA?

Tvořte se všemi modely AI na jednom místě – začněte ještě dnes zdarma.