Dobrý učitel vychází z toho, kde se student právě nachází

Nová metoda sebedistilace, která společně trénuje učitele a studenta, a zlepšuje tak výkon modelu i efektivitu tréninku v úlohách komplexního uvažování a v agentních úlohách.

AutořiPerplexity Research & NVIDIA

Úvod

Posilované učení (Reinforcement Learning, RL) se hojně využívá při dodatečném trénování (post-training) jazykových modelů ke zlepšení jejich schopností v komplexním uvažování a v agentních úlohách s dlouhým horizontem.

V typickém uspořádání se model opakovaně pokouší vyřešit úlohu, za každý pokus obdrží odměnu za výsledek a učí se upřednostňovat akce provedené v pokusech s vyšší odměnou. Jediná odměna za výsledek však poskytuje řídký učební signál, který nerozlišuje, které dílčí akce výsledku pomohly a které mu uškodily. Tato řídkost omezuje vzorkovou efektivitu, zejména u obtížných agentních úloh, kde jsou pokusy dlouhé a úspěchy vzácné.

Jedním z oblíbených přístupů k řešení této řídkosti je on-policy distilace (On-Policy Distillation, OPD), která využívá silnější model učitele k tomu, aby studentovi poskytoval vedení k jeho vlastním pokusům token po tokenu, a tím mnohem hustší odměny. Vyučování je však samo o sobě dovedností. Model, který umí úlohu dobře řešit, ji nemusí umět dobře vyučovat, protože jeho zpětná vazba může přesahovat aktuální schopnosti studenta. Proto má smysl trénovat nejen studenta, aby napodoboval učitele, ale i učitele, aby studentovi poskytoval lépe sladěné vedení.

Navrhujeme jednu takovou metodu, Joint On-policy Learning and Teaching (JOLT). Vycházíme z on-policy sebedistilace (On-Policy Self-Distillation, OPSD) a používáme jediný model ve dvou rolích: jako učitele s přístupem k privilegovaným informacím, například k ověřeným řešením, a jako studenta bez takového přístupu. Obě role trénujeme společně. Student se řídí standardním distilačním cílem. Cíl učitele směruje jeho zpětnou vazbu tak, aby posouvala studenta stejným směrem jako RL nad vlastní odměnou studenta. Tyto cíle společně učí učitele vycházet z toho, kde se student právě nachází, a pomáhají studentovi učit se z vedení, které je v jeho dosahu.

Naše experimenty ukazují zlepšení výkonu modelu i efektivity tréninku napříč řadou úloh – od matematického uvažování přes programování až po agentní úlohy.

Od řídkých odměn k husté zpětné vazbě

Ve své nejzákladnější podobě používá RL s odměnou za výsledek cíl očekávaného výnosu:

JRL(θ)=Eτ∼πθ[R(τ)]\mathcal{J}_{\mathrm{RL}}(\theta) = \mathbb{E}_{\tau\sim\pi_\theta}\left[R(\tau)\right]

Zde τ\tau je trajektorie podle strategie πθ\pi_\theta a R(τ)R(\tau) je výnos této trajektorie. Odpovídající gradient strategie je:

gRL(θ)=∇θJRL(θ)=Eτ∼πθ[∑tR(τ) ∇θlog⁡πθ(at∣st)]g_{\mathrm{RL}}(\theta) = \nabla_\theta \mathcal{J}_{\mathrm{RL}}(\theta) = \mathbb{E}_{\tau\sim\pi_\theta}\left[\sum_t R(\tau)\,\nabla_\theta\log\pi_\theta(a_t\mid s_t)\right]

kde sts_t a ata_t představují stav a akci v časovém kroku tt. Pro snížení rozptylu odhadů založených na vzorcích se gradient často vyjadřuje jako:

gRL(θ)=Eτ∼πθ[∑tAπθ(st,at) ∇θlog⁡πθ(at∣st)]g_{\mathrm{RL}}(\theta) = \mathbb{E}_{\tau\sim\pi_\theta}\left[\sum_t A^{\pi_\theta}(s_t,a_t)\,\nabla_\theta\log\pi_\theta(a_t\mid s_t)\right]

kde výhoda Aπθ(st,at)A^{\pi_\theta}(s_t, a_t) měří očekávaný nadvýnos akce ata_t vzhledem k aktuální strategii ve stavu sts_t. Jeden z přístupů, Group Relative Policy Optimization (GRPO), odhaduje výhodu porovnáním výnosu každé trajektorie s průměrným výnosem skupiny vzorkované pro stejný prompt.

I přes tyto úpravy však posilované učení s odměnou za výsledek trpí řídkým dohledem, zejména u obtížných úloh s dlouhým horizontem. Stále více prací tento problém řeší tak, že čerpá z dalších zdrojů informací, které poskytují hustší učební signál.

On-Policy Distillation (OPD) je jedním z takových přístupů. Místo učení pouze z konečné odměny OPD vzorkuje trajektorie ze studenta a každou vzorkovanou akci vyhodnocuje pomocí silnějšího učitele. Pro strategii učitele πT\pi_T a pevný snímek θˉ\bar{\theta} parametrů studenta použitý ke generování trajektorií je lokální gradient vyhodnocený v θ=θˉ\theta = \bar{\theta}:

gOPD(θˉ;πT)=∇θJOPD(θ;θˉ,πT)∣θ=θˉ=−∇θEτ∼πθˉ ⁣[∑tKL ⁣(πθ(⋅∣st) ∥ πT(⋅∣st))]∣θ=θˉ=Eτ∼πθˉ[∑t(log⁡πT(at∣st)−log⁡πθˉ(at∣st)) ∇θˉlog⁡πθˉ(at∣st)]\begin{aligned}g_{\mathrm{OPD}}(\bar\theta;\pi_T) &= \left.\nabla_\theta \mathcal{J}_{\mathrm{OPD}}(\theta;\bar\theta,\pi_T)\right|_{\theta=\bar\theta}\\ &= -\left.\nabla_\theta \mathbb{E}_{\tau\sim\pi_{\bar\theta}}\!\left[\sum_t \mathrm{KL}\!\left(\pi_\theta(\cdot\mid s_t)\,\middle\|\,\pi_T(\cdot\mid s_t)\right)\right]\right|_{\theta=\bar\theta}\\ &= \mathbb{E}_{\tau\sim\pi_{\bar\theta}}\left[\sum_t \bigl(\log\pi_T(a_t\mid s_t)-\log\pi_{\bar\theta}(a_t\mid s_t)\bigr)\,\nabla_{\bar\theta}\log\pi_{\bar\theta}(a_t\mid s_t)\right]\end{aligned}

Zde JOPD(θ;θˉ,πT)\mathcal{J}_{\mathrm{OPD}}(\theta;\bar\theta,\pi_T) je záporný distilační cíl založený na reverzní KL divergenci. Strategie učitele a vzorkované prefixy jsou během derivování drženy pevné. Poměr logaritmických pravděpodobností učitele a studenta poskytuje hustý učební signál v každém navštíveném stavu a nahrazuje výhodu jako váhu na úrovni akcí.

On-Policy Self-Distillation (OPSD) navíc odstraňuje potřebu samostatného modelu učitele. Strategie studenta slouží sama sobě jako učitel, pokud dostane privilegované informace, například ověřené řešení, zpětnou vazbu nebo referenční záznam postupu. OPSD však studenta pouze učí napodobovat učitele; neexistuje žádný mechanismus, který by zajistil, že učitel studentovi poskytuje užitečný signál.

Společné on-policy učení a vyučování

JOLT rozšiřuje OPSD tím, že sdílený model trénuje zároveň jako učitele, který poskytuje lépe sladěné vedení, i jako studenta, který se z tohoto vedení učí. Lépe informovaný učitel se učí z odměn za výsledek s KL regularizací směrem ke studentovi, zatímco neprivilegovaný student se učí z hustého distilačního signálu učitele. Aktualizace učitele využívá pokusy vygenerované učitelem, zatímco aktualizace studenta využívá pokusy vygenerované studentem a ohodnocené učitelem. JOLT+ navíc doplňuje distilační signál studenta o odměny za výsledek.

Jedna strategie se učí jako učitel i jako student.

Trénink učitele

Definice toho, co má učitel dělat

Lepší výkon učitele se nemusí nutně promítnout do užitečných aktualizací studenta. Učitel může privilegované informace využít ke zkratkám, které student nemá k dispozici, přiřadit vysokou pravděpodobnost trajektoriím, které jsou pro studenta nepravděpodobné, nebo poskytovat nespolehlivé vedení po chybách v prefixech vygenerovaných studentem. Kvalita učitele by proto měla být určována učebním signálem, který poskytuje studentovi, nikoli vlastní odměnou učitele za úlohu.

Učitele nazýváme konzistentním s odměnou, pokud distilační aktualizace, kterou ve studentovi vyvolá, odpovídá gradientu strategie očekávané odměny studenta za úlohu, a to až na kladné škálování. Konkrétně by učitel πT⋆\pi_T^\star konzistentní s odměnou měl splňovat:

gOPD(θˉ;πT⋆)=1βT gRL(θˉ)g_{\mathrm{OPD}}(\bar\theta;\pi_T^\star) = \frac{1}{\beta_T}\,g_{\mathrm{RL}}(\bar\theta)

kde βT\beta_T je kladný skalár. Stejně jako v předchozí části je gOPDg_{\mathrm{OPD}} lokální gradient OPD, θˉ\bar\theta je pevný snímek parametrů modelu studenta θ\theta a gRLg_{\mathrm{RL}} je gradient strategie pro cíl očekávaného výnosu.

Jedním z učitelů, kteří tuto podmínku splňují, je:

πT⋆(a∣s,c)=1Z(s) πθˉ(a∣s)exp⁡ ⁣(1βTAπθˉ(s,a))\pi_T^\star(a\mid s,c) = \frac{1}{Z(s)}\,\pi_{\bar\theta}(a\mid s)\exp\!\left(\frac{1}{\beta_T}A^{\pi_{\bar\theta}}(s,a)\right)

Zde Aπθˉ(s,a)A^{\pi_{\bar{\theta}}}(s, a) představují výhody pokračování studenta a Z(s)Z(s) je normalizační konstanta, která zajišťuje platné rozdělení pravděpodobnosti.

Od ideálního cílového rozdělení k cíli učitele

Učitele můžeme trénovat směrem k ideálnímu cílovému rozdělení πT⋆\pi_T^\star minimalizací jeho KL divergence vůči tomuto rozdělení. Pro pevně daného studenta a stav ss dostáváme:

min⁡πT KL ⁣(πT(⋅∣s,c) ∥ πT⋆(⋅∣s,c))\min_{\pi_T}\,\mathrm{KL}\!\left(\pi_T(\cdot\mid s,c)\,\middle\|\,\pi_T^\star(\cdot\mid s,c)\right)

Dosazením výrazu pro πT⋆\pi_T^\star získáme ekvivalentní maximalizační úlohu:

max⁡πT{Ea∼πT(⋅∣s,c) ⁣[Aπθˉ(s,a)]−βT KL ⁣(πT(⋅∣s,c) ∥ πθˉ(⋅∣s))}\max_{\pi_T}\Biggl\{\mathbb{E}_{a\sim\pi_T(\cdot\mid s,c)}\!\left[A^{\pi_{\bar\theta}}(s,a)\right]-\beta_T\,\mathrm{KL}\!\left(\pi_T(\cdot\mid s,c)\,\middle\|\,\pi_{\bar\theta}(\cdot\mid s)\right)\Biggr\}

Tento cíl podněcuje učitele, aby volil akce s vyšší výhodou studenta a přitom zůstával blízko rozdělení akcí studenta. Parametr βT\beta_T řídí sílu této penalizace: vyšší hodnoty drží učitele blíže aktuálnímu chování studenta, zatímco nižší hodnoty mu umožňují agresivněji upřednostňovat akce s vysokou výhodou.

Praktický náhradní cíl

Tento cíl závisí na tom, jak dobře by student po každé akci pokračoval, ale tyto výhody pokračování studenta obecně nejsou k dispozici. Jako praktickou náhradu proto používáme centrované výnosy z vlastních trajektorií učitele. Člen odměny podněcuje učitele k vyřešení úlohy, zatímco člen KL působí proti odchylkám od aktuálního rozdělení akcí studenta. Přestože člen KL drží učitele blízko studenta, tato náhrada není přesná, protože výnosy učitele se nemusí shodovat s výhodami pokračování studenta.

JT(θ;θˉ)=Eτ∼πθˉ(⋅∣c)[ ∑t(sg⁡[A^T(τ)]log⁡πθ(at∣st,c)−βT KL(πθ(⋅∣st,c) ∥ sg⁡[πθˉ(⋅∣st)]))]\begin{aligned}\mathcal{J}_T(\theta;\bar\theta) = \mathbb{E}_{\tau\sim\pi_{\bar\theta}(\cdot\mid c)}\Biggl[\,\sum_t \Bigl(&\operatorname{sg}\bigl[\widehat{A}_T(\tau)\bigr]\log\pi_\theta(a_t\mid s_t,c)\\ &-\beta_T\,\mathrm{KL}\bigl(\pi_\theta(\cdot\mid s_t,c)\,\big\|\,\operatorname{sg}[\pi_{\bar\theta}(\cdot\mid s_t)]\bigr)\Bigr)\Biggr]\end{aligned}

Zde A^T(τ)\widehat{A}_T(\tau) je výnos pokusu učitele minus průměrný výnos pokusů vygenerovaných učitelem v jeho skupině. Operátor sg⁡\operatorname{sg} označuje stop-gradient: jeho argument je během derivování považován za pevný, stejně jako vzorkované prefixy a referenční strategie studenta.

Trénink studenta

Aktualizace studenta je standardní aktualizací OPSD. Student generuje trajektorie z úlohy. Tentýž model pak ohodnotí každý vzorkovaný token s privilegovanými informacemi v kontextu. Cíl studenta penalizuje reverzní KL divergenci mezi studentem a tímto privilegovaným učitelem v každém stavu, který student navštíví:

JOPSD(θ;θˉ)=− Eτ∼πθˉ[∑tKL(πθ(⋅∣st) ∥ sg⁡[πθˉ(⋅∣st,c)])]\mathcal{J}_{\mathrm{OPSD}}(\theta;\bar\theta) = -\,\mathbb{E}_{\tau\sim\pi_{\bar\theta}}\left[\sum_t \mathrm{KL}\bigl(\pi_\theta(\cdot\mid s_t)\,\big\|\,\operatorname{sg}[\pi_{\bar\theta}(\cdot\mid s_t,c)]\bigr)\right]

Tokeny, které učitel upřednostňuje, jsou proto posilovány, zatímco tokeny, které učitel považuje za méně pravděpodobné, než je považuje student, jsou potlačovány.

Spojení obou částí

Kombinací cílů učitele a studenta získáme společný tréninkový cíl:

JJOLT(θ;θˉ)=JT(θ;θˉ)+βS JOPSD(θ;θˉ)\mathcal{J}_{\mathrm{JOLT}}(\theta;\bar\theta) = \mathcal{J}_T(\theta;\bar\theta) + \beta_S\,\mathcal{J}_{\mathrm{OPSD}}(\theta;\bar\theta)

βS\beta_S je skalár, který určuje, jakou váhu má distilační ztráta studenta v kombinované aktualizaci.

Výsledek o konzistenci s odměnou charakterizuje distilační aktualizaci studenta pro daného učitele. JOLT tento princip využívá k řízení společného tréninku a kombinuje cíle učitele a studenta k aktualizaci jejich sdílených parametrů.

JOLT+ do aktualizace studenta přidává také jeho vlastní odměnu za výsledek. Centrovaný výnos každé trajektorie studenta se přičítá k distilačnímu signálu, čímž se hustý dohled učitele kombinuje s přímou zpětnou vazbou o výsledku trajektorií studenta. Cíl učitele zůstává beze změny, takže můžeme psát:

JJOLT+(θ;θˉ)=JT(θ;θˉ)+βS JOPSD(θ;θˉ)+Eτ∼πθˉ ⁣[∑tsg⁡[A^S(τ)] log⁡πθ(at∣st)]\begin{aligned}\mathcal{J}_{\mathrm{JOLT+}}(\theta;\bar\theta) &= \mathcal{J}_T(\theta;\bar\theta)+\beta_S\,\mathcal{J}_{\mathrm{OPSD}}(\theta;\bar\theta)\\ &\quad+\mathbb{E}_{\tau\sim\pi_{\bar\theta}}\!\left[\sum_t \operatorname{sg}[\widehat{A}_S(\tau)]\,\log\pi_\theta(a_t\mid s_t)\right]\end{aligned}

Zde A^S(τ)\widehat{A}_S(\tau) je výnos trajektorie studenta minus průměrný výnos její skupiny trajektorií vygenerovaných studentem.

V obou variantách se každá role učí z trajektorií vygenerovaných v jejím vlastním kontextu a obě role aktualizují sdílenou strategii. Pseudokód tréninkového kroku je uveden níže.

Pseudokód jednoho tréninkového kroku JOLT.

Experimenty

JOLT a JOLT+ hodnotíme na benchmarcích zahrnujících matematické uvažování, generování kódu, používání nástrojů a terminálové úlohy s dlouhým horizontem, s různými základními modely a různými formami privilegovaných informací. Konkrétně provádíme experimenty s následujícími benchmarky, základními modely a konfiguracemi privilegovaných informací:

  • GSM8K: Trénujeme DeepSeek-V2-Lite na GSM8K, datové sadě matematických úloh na úrovni základní školy. Učitel dostává ověřenou odpověď ke každé úloze.
  • MATH: Trénujeme Qwen3-0.6B na MATH. Učitel dostává podrobně vypracovaná referenční řešení.
  • LCBv6: Trénujeme Qwen3-8B na 131 programovacích úlohách z LiveCodeBench-V6. Učitel dostává modelem vygenerované řešení, které prošlo všemi testy viditelnými při tréninku, nebo zpětnou vazbu ze spuštění, pokud jimi žádný pokus neprošel.
  • AppWorld: Trénujeme Qwen3-4B-Instruct na AppWorld. Učitel dostává shrnutí předchozích pokusů.
  • Terminal-Bench: Trénujeme Qwen3-30B-A3B-Instruct na TMax, sadě tréninkových úloh pro terminálové agenty, a hodnotíme na Terminal-Bench 2.1. Učitel dostává neveřejné informace z verifikátoru.

Srovnáváme s metodami GRPO, OPSD a π-Distill, přičemž hyperparametry ladíme pro každou metodu zvlášť. Podobně jako JOLT trénuje π-Distill v rámci sdíleného modelu společně privilegovanou roli učitele a roli studenta; používá však jiné cílové rozdělení učitele a jeho aktualizace studenta zůstává off-policy, protože se opírá o trajektorie vygenerované učitelem, nikoli o vlastní výstupy studenta.

Přesnost

JOLT+ dosahuje nejvyššího průměrného skóre ve všech hodnocených nastaveních. Ve srovnání s GRPO, nejsilnější testovanou referenční metodou, zlepšuje přesnost na GSM8K o 1,5 procentního bodu (p. b.), přesnost na MATH o 4,2 p. b., přesnost na LCBv6 o 3,0 p. b. a míru úspěšnosti stavových testů AppWorld o 9,9 p. b.

JOLT+ má nejvyšší průměrné skóre ve všech čtyřech benchmarcích.

I bez jakékoli přímé odměny studenta je průměrná přesnost JOLT na GSM8K, MATH a LCBv6 vyšší než u GRPO. Na AppWorld však zůstává pod GRPO i π-Distill.

Terminal-Bench 2.1 je nastavení s nejdelším horizontem. JOLT+ má nejvyšší pass@k pro každé uvedené k, od 10,96 % při pass@1 po 34,83 % při pass@32. JOLT při každém k překonává základní model i obě distilační referenční metody, ale zůstává pod GRPO. OPSD dosahuje při každém k nižšího skóre než základní model.

JOLT+ vede v benchmarku Terminal-Bench při každém rozpočtu pokusů.

Efektivita využití tokenů a škálování

Zajímá nás také, jak se výkon škáluje s tréninkovým rozpočtem. Hodnotíme GRPO, OPSD a JOLT při různých rozpočtech tréninkových tokenů na MATH a porovnáváme výslednou přesnost studenta.

Graf ukazuje, jak se přesnost jednotlivých metod škáluje s množstvím spotřebovaných tréninkových tokenů. Náklady měříme ve zpracovaných tréninkových tokenech. Ty zahrnují každý prompt bez paddingu, privilegovaný kontext, optimalizační průchod a křížové hodnocení mezi učitelem a studentem.

JOLT potřebuje k dosažení přesnosti GRPO méně tokenů.

Body znázorňují počet zpracovaných tréninkových tokenů a přesnost v různých checkpointech; úsečky představují ±1 směrodatnou odchylku napříč běhy. Vztah mezi přesností a logaritmem rozpočtu tréninkových tokenů prokládáme sigmoidou podle dřívější práce o škálování výpočetního výkonu pro RL.

JOLT vykazuje vysokou vzorkovou efektivitu již v rané fázi a zároveň dosahuje nejvyšší přesnosti ze všech tří metod, přičemž se ustaluje poblíž 72 %. OPSD se při malých rozpočtech rychle zlepšuje, ale stagnuje na přesnosti přibližně 62 %. GRPO se zpočátku učí pomaleji, ale zlepšuje se déle a vyšplhá se zhruba na 70 %. Při shodné přesnosti 63,44 % využívá pozorovaný checkpoint GRPO 8,40 milionu tokenů, zatímco proložená křivka JOLT udává 1,30 milionu, tedy 6,5× méně tokenů.

Náklady měříme také pomocí generovaných tokenů (completion tokens), které u GRPO a OPSD zahrnují výstupy studenta a u JOLT výstupy učitele i studenta, ale nezahrnují prompty, privilegovaný kontext ani dodatečné optimalizační průchody. Srovnání na základě generovaných tokenů místo zpracovaných tréninkových tokenů rozšiřuje rozdíl v efektivitě při stejné úrovni přesnosti přibližně na 13×. V rozsahu cílových přesností spotřebuje JOLT 9,5–14,4× méně generovaných tokenů a 4,3–7,4× méně zpracovaných tréninkových tokenů.

Výhoda JOLT ve spotřebě tokenů platí v rozsahu přesnosti od 55 % do 65 %.

Závěr

Privilegované informace mohou učitele zlepšit v řešení úlohy, aniž by ho zlepšily v tom, jak naučit studenta řešit tutéž úlohu bez těchto informací. JOLT tento rozdíl řeší tím, že učitele trénuje vzhledem k aktuálnímu chování studenta.

Tento společný trénink zlepšuje přesnost i efektivitu. Díky odměnám za výsledek studenta dosahuje JOLT+ oproti GRPO absolutního zlepšení o 1,5 p. b. na GSM8K, 4,2 p. b. na MATH, 3,0 p. b. na LCBv6, 9,9 p. b. na AppWorld a 2,7 p. b. v metrice pass@1 na Terminal-Bench 2.1. Na MATH spotřebuje JOLT při shodné přesnosti 13× méně generovaných tokenů a 6,5× méně zpracovaných tréninkových tokenů než GRPO, a to bez přímé odměny studenta.

JOLT umožňuje, aby se vedení učitele vyvíjelo spolu se studentem. To vybízí ke zkoumání, zda se učitel může naučit také generovat užitečné tréninkové úlohy. Zajímavým směrem budoucí práce je společně trénovat učitele, který generuje úlohy, a studenta, který řeší problémy, přičemž by se pokrok studenta v učení využíval ke zlepšování generovaných úloh v rámci kurikula. Generování syntetických úloh by tak mohlo pružně reagovat na to, co je student připraven se naučit jako další.

Další podrobnosti najdete v úplném znění naší studie. Kód brzy zveřejníme jako open source.

Citace

BibTeX
@online{perplexity2026AGoodTeacherMeetsTheStudentWhereTheyAre,
  author = {{Perplexity} and Randy Ardywibowo and Arnav Dalal and Jiantao Jiao and Jarrod Bryan and Claire Beamer and Jeremy Yang and Jerry Ma},
  title = {{A good teacher meets the student where they are}},
  date = {2026-10-21},
  url = {https://www.perplexity.ai/hub/blog/a-good-teacher-meets-the-student-where-they-are}
}