Volevo avere migliori intuizioni su come funziona il RL sugli LLM. Quindi ho scritto un semplice script per insegnare a Nanochat ad aggiungere numeri a 5 cifre. Sono rimasto sorpreso da quanto velocemente ha imparato. Fino a quando non ho guardato le generazioni del modello e mi sono reso conto che aveva semplicemente imparato a chiamare sempre l'interprete Python integrato 😂. Il codice che ho scritto è molto rudimentale, minimale e inefficiente - sono un podcaster professionista, va bene? Ma potrebbe essere utile se vuoi solo vedere le basi di come funzionano REINFORCE o GRPO. Link al gist qui sotto. Fondamentalmente, non è così complicato: genera più traiettorie per ogni prompt. Aggiorna il tuo modello per renderlo più probabile che campioni tutti i token nelle traiettorie di successo.