Treinamento GRPO leve: Sem Transformers, sem vLLM
Este projeto implementa uma estrutura de treinamento GRPO (Group Relative Policy Optimization) leve, construída quase do zero, dependendo apenas de tokenizadores e PyTorch. Ele melhora o algoritmo original removendo a divergência de KL e incorporando o filtro de episódios muito longos, melhorando a estabilidade do treinamento e o uso da memória da GPU. O projeto treina o modelo Qwen2.5-3B-Instruct na tarefa CountDown, que requer a geração de uma expressão matemática para atingir um valor alvo dado um conjunto de números. O modelo resolve isso aprendendo a gerar raciocínio em cadeia de pensamento antes da resposta final, guiado por recompensas de formato e resposta. Todo o processo é simples e reprodutível, rodando em uma única GPU A40 com comandos mínimos.