Ik wilde een beter inzicht krijgen in hoe RL werkt op LLM's. Dus schreef ik een eenvoudig script om Nanochat te leren 5-cijferige getallen op te tellen. Ik was verrast hoe snel het leerde. Totdat ik naar de generaties van het model keek en me realiseerde dat het gewoon had geleerd om altijd de ingebouwde Python-interpreter aan te roepen 😂. De code die ik schreef is heel basaal, minimaal en inefficiënt - ik ben een professionele podcaster, oké? Maar het kan nuttig zijn als je gewoon de basisprincipes wilt zien van hoe REINFORCE of GRPO werkt. Link naar gist hieronder. Fundamenteel is het niet zo ingewikkeld: genereer meerdere trajecten per prompt. Werk je model bij om het waarschijnlijker te maken dat het alle tokens in de succesvolle trajecten monster.