Je bent in een sollicitatiegesprek voor Research Scientist bij Google. Interviewer: We hebben een basis LLM die slecht is in wiskunde. Hoe zou je het omtoveren tot een krachtpatser in wiskunde en redeneren? Jij: Ik zal wat problemen labelen en het model fijn afstemmen. Sollicitatiegesprek voorbij. Dit is wat je gemist hebt:
Wanneer uitkomsten verifieerbaar zijn, worden labels optioneel. Wiskunde, code en logica kunnen automatisch worden gecontroleerd en gevalideerd. Laten we dit feit gebruiken om een redeneermodel te bouwen zonder handmatige labeling. We zullen gebruiken: - @UnslothAI voor parameter-efficiënte finetuning. - @HuggingFace TRL om GRPO toe te passen. Laten we gaan! 🚀
Wat is GRPO? Group Relative Policy Optimization is een methode voor versterkend leren die LLM's verfijnt voor wiskunde- en redeneertaken met behulp van deterministische beloningsfuncties, waardoor de noodzaak voor gelabelde gegevens vervalt. Hier is een kort overzicht van GRPO voordat we in de code duiken:
1️⃣ Laad het model We beginnen met het laden van Qwen3-4B-Base en zijn tokenizer met behulp van Unsloth. Je kunt hier ook een ander open-gewicht LLM gebruiken. Bekijk dit 👇
2️⃣ Definieer LoRA-configuratie We zullen LoRA gebruiken om te voorkomen dat we de hele modelgewichten moeten finetunen. In deze code gebruiken we Unsloth's PEFT door het volgende op te geven: - Het model - LoRA low-rank (r) - Modules voor finetuning, enz. Bekijk dit 👇
3️⃣ Maak de dataset We laden de Open R1 Math dataset (een dataset met wiskundeproblemen) en formatteren deze voor redenering. Elke sample bevat: - Een systeemprompt die gestructureerde redenering afdwingt - Een vraag uit de dataset - Het antwoord in het vereiste formaat Bekijk deze code 👇
4️⃣ Definieer beloningsfuncties In GRPO gebruiken we deterministische functies om de reactie te valideren en een beloning toe te kennen. Geen handmatige labeling vereist! De beloningsfuncties: - Exacte indeling matchen - Ongeveer indeling matchen - Controleer het antwoord - Controleer nummers Bekijk dit 👇
5️⃣ Gebruik GRPO en begin met trainen Nu we de dataset en beloningsfuncties klaar hebben, is het tijd om GRPO toe te passen. HuggingFace TRL biedt alles wat we in het GRPO-diagram hebben beschreven, direct uit de doos, in de vorm van de GRPOConfig en GRPOTrainer. Bekijk dit👇
6️⃣ Vergelijking We kunnen opnieuw zien hoe GRPO een basismodel heeft omgevormd tot een redeneerkrachtpatser. Bekijk dit👇
Voordat we afsluiten, laat me een belangrijke vraag beantwoorden: Wanneer moet je reinforcement fine-tuning (RFT) gebruiken in plaats van supervised fine-tuning (SFT)? Ik heb dit diagram gemaakt om een antwoord te geven:
157,43K