Dopo aver visto @karpathy nanochat, sono diventato ossessionato dall'idea di utilizzare il fine-tuning di GRPO localmente su Mac. L'ho fatto funzionare e sto open-sourcing tutto qui. Ecco nanochat che attraversa i passaggi per risolvere il dataset GSM8K, anche se potrebbe essere troppo per lui 😅
La parte più difficile, nanochat non aveva supporto completo per MLX. Esisteva solo come file .pt di PyTorch con un tokenizer tiktoken personalizzato. Ho dovuto: - Costruire un convertitore da PyTorch a MLX - Capire il formato del tokenizer - Far funzionare tutto con GRPO
In questo repo approfondisco i dettagli della conversione di nanochat in MLX. Funziona per ENTRAMBI i modelli: - Originale 20-layer - Il più grande 32-layer di Karpathy (d32) Una volta convertito → esegui GRPO su qualsiasi dataset tu voglia.
Questo è sperimentale, ma penso che mostri un possibile futuro: un forte affinamento dei modelli locali su dataset specializzati. Il repository include anche: - Utilità per convertire i modelli in MLX - Strumenti di inferenza - GRPO funziona con QUALSIASI modello (non solo nanochat!)
15,69K