Depois de ver @karpathy nanochat, fiquei obcecado com a ideia de usar o ajuste fino do GRPO localmente no Mac. Eu consegui trabalhar e abrir o código de tudo aqui Aqui está o nanochat passando pelas etapas de resolução do conjunto de dados GSM8K, embora possa ser demais para ele 😅
A parte mais difícil, o nanochat não tinha suporte completo ao MLX. Ele existia apenas como arquivos .pt do PyTorch com um tokenizer tiktoken personalizado. Teve de: - Construir conversor PyTorch → MLX - Descubra o formato do tokenizer - Faça tudo funcionar com o GRPO
Neste repositório, entro nos detalhes da conversão de nanochat para MLX. Funciona para AMBOS os modelos: - Original de 20 camadas - Maior de 32 camadas de Karpathy (d32) Depois de convertido→ execute o GRPO em qualquer conjunto de dados desejado.
Isso é experimental, mas acho que mostra um futuro possível: forte ajuste fino de modelos locais em conjuntos de dados especializados. O repositório também inclui: - Utilitários para converter modelos para MLX - Ferramentas de inferência - O GRPO funciona com QUALQUER modelo (não apenas nanochat!)
15,2K