Siirry sisältöön
12/30Luku 12/30

Chain of Thought, RLVR ja test-time compute mitattuna

Samat 24 tehtävää: 0 % oikein 1,9 tokenilla, 100 % oikein 145:llä. Sitten self-consistency ostaa tarkkuutta takaisin.

Tällä sivulla

Kaksikymmentäneljä kaksivaiheista sanallista tehtävää. Pieneltä mallilta — puoli miljardia parametria, sama kuin luvussa 11 — kysytään jokainen kahdesti.

Ensin pyydetään vastaus:

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

  0 / 24 correct        1.9 tokens per answer

Sitten pyydetään vastaus, mutta annetaan lupa työskennellä ensin:

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

Nollasta sataan prosenttiin. Sama malli, samat painot, samat tehtävät, sama greedy decoding. Ainoa ero on, että toinen versio sai tuottaa 143 token enemmän ennen kuin se sitoutui numeroon.

Tämä luku käsittelee tuota kuilua: mitä se oikeasti on, kuinka pitkälle se kantaa, mitä se maksaa ja mitä tapahtui, kun ala lakkasi pyytämästä sitä promptissa ja alkoi kouluttaa sitä sisään.

Malli ei ajattele. Se laskee pidempään.

Linkki osioon: Malli ei ajattele. Se laskee pidempään.

Houkutus on sanoa, että toinen versio ”ajatteli asiaa”. Vastusta sitä, koska mekanismi on sekä yksinkertaisempi että hyödyllisempi ymmärtää.

transformer tekee kiinteän määrän laskentaa jokaista tuotettua token kohti. Yksi forward pass: samat kerrokset, samat matriisit, sama määrä operaatioita riippumatta siitä, onko kysymys paljonko on 2+2 vai todista tämä teoreema. Mallin sisällä ei ole säädintä asetukselle ”yritä tämän kohdalla kovemmin”.

Kun mallilta siis pyydetään vastausta heti, koko sille käytettävissä oleva laskenta on yksi forward pass. Jokaisen välisuureen on mahduttava tuon yhden passin aktivaatioihin, ja mitä se ei pysty laskemaan siellä, sitä se ei pysty laskemaan.

Tokenien tuottaminen muuttaa tämän, ja se muuttaa sen kahdella eri tavalla, jotka kannattaa erottaa toisistaan:

  • Enemmän laskentaa. Jokainen tuotettu token on uusi täysi forward pass. Sataneljäkymmentäviisi token työskentelyä on sataneljäkymmentäviisi kertaa niin paljon aritmetiikkaa kuin suoraan vastaaminen.
  • Ulkoistettu muisti. Tokenit kirjoitetaan kontekstiin, joten seuraava pass voi lukea ne. 5 × 13 = 65 muuttuu syötteen faktaksi, ei arvoksi, jota mallin täytyy pitää aktivaatiossa ja kuljettaa eteenpäin. Malli käyttää omaa tuotostaan suttupaperina.

Tuo toinen kohta jää ihmisiltä usein huomaamatta, ja se selittää, miksi työskentely täytyy kirjoittaa ylös, jotta siitä olisi apua. Mallilla, jota pyydetään ”ajattelemaan hiljaa ja vastaamaan sitten”, ei ole paikkaa, johon ajatus laittaa.

Mikään tästä ei vaadi mitään mystistä, ja se tekee selkeän ennusteen: chain of thought auttaa eniten ongelmissa, joissa on sarjallinen rakenne — joissa vaihe kaksi tarvitsee vaiheen yksi tuloksen — ja vähiten ongelmissa, jotka ovat yksittäinen haku. Juuri tämän kirjallisuus löytää, ja siksi ”think step by step” ei tee mitään kysymykselle mikä on Ranskan pääkaupunki.

Chain of thought prompting-tekniikkana

Linkki osioon: Chain of thought prompting-tekniikkana

Tekniikka saapui vuonna 2022 kahdessa osassa. Wei et al. osoittivat, että ratkaistujen esimerkkien sisällyttäminen promptiin — demonstraatioiden, joissa vastausta edeltää päättely — tuotti suuria parannuksia aritmetiikan ja maalaisjärjen benchmarkeissa.1 Kojima et al. osoittivat sitten jotakin oudompaa: esimerkkejä ei tarvita. Lisäämällä ”Let's think step by step” zero-shot promptiin saadaan suuri osa samasta hyödystä.2

Toinen tulos kertoo, mitä on meneillään. Jos taikalause avaa käyttäytymisen, käyttäytyminen oli jo mallissa — pretraining on täynnä ratkaistuja esimerkkejä, ja lause osoittaa siihen kohtaan jakaumaa. Chain of thought ei opettanut mallille mitään. Se valitsi jotakin, mitä mallilla oli jo valmiiksi.

Tuo kehystys ennustaa myös tekniikan lopullisen vanhentumisen, johon palaamme luvun lopussa.

Self-consistency ja tulos, joka yllätti minut

Linkki osioon: Self-consistency ja tulos, joka yllätti minut

Ilmeinen seuraava siirto: jos yksi päättelyketju voi olla väärä, otetaan useita sampleja ja valitaan enemmistön vastaus. Se on self-consistency.3 Se on ehdottomasti suurempi kuluerä — nn täyttä generointia yhden sijaan — ja intuitiona on, että väärät vastaukset hajaantuvat, kun taas oikeat ovat samaa mieltä.

Mitattuna 16:lla samoista tehtävistä, sample lämpötilalla 0,8, enemmistöäänestys yli nn ketjun:

nntarkkuustoken yhteensätoken per ongelma
181 %2,952185
281 %5,618351
3100 %8,417526
4100 %11,103694
5100 %13,933871

Kuusitoista tehtävää on pieni nimittäjä, ja luvun 4 sääntö pätee tähän taulukkoon siinä missä mihin tahansa muuhunkin. 13/16 on 81 % ja 95 %:n Wilsonin väli [57, 93]; 16/16 on 100 % ja väli [81, 100]. Ne menevät päällekkäin. Lue käyrän muoto, joka on havainto; älä lue tarkkaa porrasta, jolla se tasaantuu, koska kuusitoista tehtävää ei voi paikantaa sitä.

Taulukossa on kaksi asiaa, eikä toinen ollut sitä, mitä odotin.

Käyrä tasaantuu kohdassa n=3n = 3. Kolmanteen sampleen mennessä tarkkuus on katossaan, ja jäljellä olevat kaksi samplea eivät osta mitään mutta maksavat 172 token kumpikin, yhteensä 345. Tämä on jokaisen kirjallisuudessa raportoidun self-consistency-käyrän muoto, ja se tapahtuu paljon aikaisemmin kuin ”enemmän sampleja on enemmän parempi” -kehystys antaa ymmärtää.

Ja greedy decoding oli jo 100 %:ssa. Katso luvun alkuun: yksi ketju, ei samplingia, 145 token, 24/24. Sampling lämpötilalla 0,8 laski tarkkuuden 81 %:iin, ja self-consistency tarvitsi kolme generointia noustakseen takaisin siihen, missä yksi greedy pass oli jo valmiiksi — 3,6-kertaisella token-määrällä, tai kuusinkertaisella, jos ajat sweepin viiteen tietämättä, missä se tasaantuu.

Tämä ei ole argumentti self-consistencyä vastaan. Se on täsmällinen kuvaus siitä, mitä se tekee: lämpötila ostaa monimuotoisuutta syöttämällä virheitä, ja äänestys poistaa juuri syöttämänsä virheet. Ongelmissä, joissa greedy decoding epäonnistuu — joissa yksittäinen todennäköisin ketju johtaa väärään paikkaan ja vähemmän todennäköinen on oikea — vaihtokauppa kannattaa, ja siksi tekniikka on olemassa. Ongelmissä, joissa greedy onnistuu jo, se on tapa käyttää kuusinkertainen budjetti päästäkseen omilleen.

Kukaan ei julkaise toista tapausta, ja siksi se kannattaa mitata omassa tehtävässä ennen tekniikan käyttöönottoa. Nämä ovat helppoja kaksivaiheisia tehtäviä pienelle mallille; se on asetelma, jossa vastaus näyttää tältä.

Kaikki tähän asti tapahtuu prompt-aikana mallilla, jota ei koskaan nimenomaisesti koulutettu siihen. Muutos, joka tuotti nykyisen sukupolven päättelymalleja, oli sen siirtäminen koulutukseen — ja avain, joka teki sen mahdolliseksi, on kapeampi kuin miltä se kuulostaa.

Luvun 11 post-training tarvitsi ihmisten preferenssejä, koska kysymykseen ”oliko tämä hyvä vastaus?” ei ole ohjelmallista vastausta. Joissakin kysymyksissä kuitenkin on. Matemaattinen vastaus joko vastaa oikeaa arvoa tai ei vastaa. Koodi joko läpäisee testit tai ei läpäise. Todistus joko tarkistuu tai ei tarkistu.

Näillä alueilla reward model voidaan korvata tarkistimella, ja kaikki alavirtaan paranee kerralla: ei annotoijia, ei Bradley–Terry-sovitusta, ei luvussa 11 mitattua reward hackingia — koska yksikkötestiä ei voi imarrella. Tämä on reinforcement learning from verifiable rewards, ja se on asetelma, jota varten GRPO rakennettiin: sampletaan ryhmä ratkaisuyrityksiä samaan ongelmaan, tarkistetaan jokainen ja käytetään ryhmän keskiarvopistemäärää baseline-arvona. Ei critic-mallia, ei annotoijaa, ei reward modelia. Vain ohjelma, joka sanoo oikein tai väärin.

Outcome reward. Pisteytä vain lopullinen vastaus. Halpa — merkkijonovertailu — ja siinä on ilmeinen aukko: ratkaisu, joka päätyy oikeaan numeroon väärällä päättelyllä, palkitaan täsmälleen kuin oikea, joten policy voi vapaasti oppia uskottavalta näyttävää hölynpölyä, joka sattuu osumaan maaliin.

Process reward. Pisteytä jokainen vaihe. Lightman et al.5 rakensivat 800 000 ihmisen merkitsemän päättelyvaiheen datasetin kouluttaakseen mallin, joka tekee tämän, ja osoittivat sen päihittävän outcome supervisionin selvästi vaikeassa matematiikassa. Kustannus on nimessä: joku merkitsi 800 000 vaihetta.

Tulos, joka kehysti alan uudelleen, tuli DeepSeekiltä alkuvuonna 2025.6 He ottivat base modelin ja sovelsivat reinforcement learningia verifiable rewards -palkkioilla suoraan, ilman supervised fine-tuning -vaihetta ensin — vaihetta, jonka luku 11 esittää kaiken perustana. Pitkät päättelyketjut ilmestyivät silti. Samoin käyttäytymiset, joita kukaan ei kouluttanut: malli alkoi tarkistaa omia vaiheitaan uudelleen ja, paperin siteeratuimmassa kohdassa, harkita lähestymistapaa spontaanisti uudelleen kesken ratkaisun.

Rehellinen tulkinta ei ole, että päättely olisi taikuutta. Se on, että kun ainoa palkittava asia on olla oikeassa, ja oikeassa oleminen vaikeassa ongelmassa vaatii sen työstämistä läpi, silloin läpi työstäminen on se, mitä optimointialgoritmi löytää — mukaan lukien ne läpi työstämisen osat, joita ihmisetkin tekevät, koska ongelma vaatii niitä eikä siksi, että kukaan olisi opettanut ne.

Reasoning tokens ovat rivi laskulla

Linkki osioon: Reasoning tokens ovat rivi laskulla

Käytännön seuraus tästä kaikesta on, että päättelymalli tuottaa token, joita pyysit, ja token, joita et pyytänyt, ja maksat molemmista.

Palveluntarjoajat käsittelevät tätä eri tavoin, ja erolla on merkitystä:

  • Useimmat API:t laskevat reasoning tokens sisälle output token -määrään. Laskusi ja max_tokens-rajasi sisältävät molemmat ajattelun, jota et koskaan näe.
  • Googlen Gemini raportoi thinking tokens erillisenä kenttänä, standardin output-määrän ulkopuolella.

Tämä on aito yhteensopimattomuus kahden saman asian laskentatavan välillä, ja kaiken koodin, joka laskee kustannusta tai valvoo budjettia palveluntarjoajien yli, täytyy normalisoida se. Luvussa 16 tästä tulee rahaa, ja luvussa 23 siitä tulee budjetti, jota voit valvoa.

Toinen seuraus on latenssiin liittyvä, ja se yllättää ihmiset ensimmäisellä kerralla. Päättelymallin aika ensimmäiseen näkyvään tokeniin sisältää kaiken sen ajattelun, joten pyyntö, joka ei striimaa mitään kahdeksaan sekuntiin ja vastaa sitten yhdessä sekunnissa, ei ole jumittunut yhteys — malli tekee töitä. Käyttöliittymällä, joka näyttää spinneriä ilman selitystä kahdeksan sekuntia, on suunnitteluongelma, ei verkko-ongelma.

Milloin ”think step by step” lakkaa auttamasta

Linkki osioon: Milloin ”think step by step” lakkaa auttamasta

Lopuksi varoitus, koska tämä on yleisin tapa soveltaa luvun materiaalia väärin.

Kaikki ensimmäisessä puoliskossa on tekniikkaa, jolla malli, jota ei ole koulutettu päättelemään, saadaan silti tuottamaan päättelyä. RLVR:llä koulutetut mallit tekevät sen jo: ne tuottavat oman työskentelynsä, omalla pituudellaan, ennen vastausta. Sellaisen mallin käskeminen ajattelemaan askel askeleelta on parhaimmillaan tarpeetonta ja pahimmillaan haitallista — se voi tuottaa lyhyen, promptin muotoisen ketjun sen pidemmän ketjun tilalle, jonka malli olisi luonut itse, ja jotkut palveluntarjoajat dokumentoivat juuri tämän.

Sama pätee monimutkaisiin päättelyrakenteisiin, jotka rakennetaan sovelluskoodissa. prompt, joka taluttaa mallin päätöspuun läpi, jossa se jo navigoi sisäisesti, kuluttaa sinun token rajoittaakseen käyttäytymistä, joka on koulutettu sisään. Tämä on ensimmäinen esiintymä teemasta, joka kulkee kurssin loppuosan läpi: tekniikat, jotka olivat välttämättömiä vuonna 2022, muuttuivat taikauskoksi vuoteen 2025 mennessä, ja ainoa tapa tietää, kumpaa jokin tekniikka on omalle mallillesi tänään, on mitata molemmat.

Luku 15 näyttää, miten mittaamisesta tulee mielipiteen sijaan kurinalainen käytäntö.

Mihin tästä mennään seuraavaksi

Linkki osioon: Mihin tästä mennään seuraavaksi

Päättelyllä on epämukava ominaisuus: se on yksi kyky, jonka kustannus skaalautuu sen mukaan, kuinka vaikea kysymys on. Malli, joka ajattelee yhdeksänsadan token verran, tekee yhdeksänsataa forward passia, pitää kasvavan cachen muistissa niitä kaikkia varten ja varaa GPU:n koko ajaksi.

Se tekee päättelymallin palvelemisen taloudesta jyrkästi huonompaa kuin chat-mallin palvelemisen, ja se muuttaa joukon toteutusyksityiskohtia eroksi elinkelpoisen ja elinkelvottoman tuotteen välillä: miten aiempien key- ja value-arvojen cache tallennetaan ja käytetään uudelleen, kuinka moni pyyntö voi jakaa forward passin ja kuinka paljon tarkkuutta painot oikeasti tarvitsevat.

Luku 13 on viimeinen, jossa malli on muistissasi oleva objekti eikä portin takana oleva palvelu, ja se käsittelee sen tekemistä riittävän halvaksi palveltavaksi. Se myös lunastaa tämän luvun lupauksen: speculative decoding, joka tuottaa useita token suunnilleen yhden hinnalla antamalla pienen mallin arvata ja suuren tarkistaa — temppu, jossa on järkeä vasta kun olet nähnyt, kuinka suuri osa forward passista kuluu muistin odottamiseen eikä aritmetiikan tekemiseen.


Kaikki tämän luvun mittaukset tulevat Qwen/Qwen2.5-0.5B-Instruct-ajosta 24 generoidulla kaksivaiheisella sanallisella tehtävällä, greedy decodingilla paitsi siellä, missä sampling mainitaan, ja nollalla katkaistulla generoinnilla käytetyissä token-rajoissa. Ne ovat toistettavia, ja kyseessä on pieni malli helpoissa ongelmissa: lue self-consistency-tulos mekanismin demonstraationa, älä benchmarkina. CS229-luentomuistiinpanojen luku 18 ja Hugging Face LLM Coursen luku 12 käsittelevät samaa materiaalia suuremmilla malleilla ja kunnollisilla benchmarkeilla.

  1. Wei, J. et al. 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). ”let's think step by step” -tulos.

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

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

  5. Lightman, H. et al. Let's Verify Step by Step. arXiv:2305.20050 (2023). Esittelee PRM800K:n, 800 000 vaiheen process supervision -datasetin.

  6. DeepSeek-AI. DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning. arXiv:2501.12948 (2025). R1-Zero-tulos — reinforcement learning sovellettuna suoraan base modeliin, ilman supervised fine-tuning -vaihetta — on osiossa 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).


Tekijä

David Vicente Campos

NeuraLIA Labsin perustaja ja MyRealFoodin toinen perustaja

Olen valmistunut tietotekniikan insinööriksi Leónin yliopistosta. Olin mukana perustamassa MyRealFoodia, jossa teknologiajohtajana rakensin sovelluksen, jota miljoonat ihmiset ovat käyttäneet syödäkseen paremmin, ja perustin NeuraLIA Labsin, jossa rakennan tekoälytuotteita. Täällä kirjoitan siitä, mitä minun on pitänyt ymmärtää matkan varrella, niin kuin olisin toivonut jonkun selittävän asiat minulle.

Lisää kirjoittajasta

Julkaisija: NeuraLIA Labs.

Uudet julkaisut suoraan sähköpostiisi

AI-uutisia, oppaita ja tuoteuutisia — lyhyt sähköposti, kun julkaisemme jotain aikasi arvoista.

Kurssin hakemisto

Abstract software decision engine with branching paths, probability nodes, and glowing gates.
jev9 min lukuaikaa

Jev AI -malli on rakennettu päätöksiä, ei proosaa varten

TypeSafe AI:n Jev herättää huomiota, koska se käsittelee ohjelmistojen älykkyyttä todennäköisyysongelmana: valitse oikea haara, liitä mukaan varmuus ja vältä maksamasta LLM:lle tekstin kirjoittamisesta, kun koodi tarvitsee päätöksen.

Abstract agent runtime sorting documents, memory blocks and pointer nodes inside a bounded context frame.
context-engineering9 min lukuaikaa

Kontekstisuunnittelu pitkän aikavälin AI-agenteille

Pitkäkestoiset agentit eivät epäonnistu vain siksi, että ikkuna on pieni. Ne epäonnistuvat, kun tiedostot, työkalujen tulosteet ja vanhentunut historia syrjäyttävät tehtävän, joka agentin piti saada valmiiksi.

Valmis antamaan LIA:n valita puolestasi?

Rakenna kaikilla tekoälymalleilla yhdessä paikassa — aloita ilmaiseksi jo tänään.