Na het zien van @karpathy nanochat, raakte ik geobsedeerd door het idee om GRPO-fijnstelling lokaal op Mac te gebruiken. Ik heb het werkend gekregen en open-source ik het hele ding hier. Hier is nanochat die de stappen doorloopt om de GSM8K-dataset op te lossen, hoewel het misschien te veel voor hem is 😅
Het moeilijkste was dat nanochat geen volledige MLX-ondersteuning had. Het bestond alleen als PyTorch .pt-bestanden met een aangepaste tiktoken-tokenizer. Moest: - PyTorch → MLX-converter bouwen - Het tokenizerformaat uitzoeken - Alles laten werken met GRPO
In deze repo ga ik in op de details van het converteren van nanochat naar MLX. Werkt voor BEIDE modellen: - Originele 20-laags - Karpathy's grotere 32-laags (d32) Eenmaal geconverteerd → voer GRPO uit op elke dataset die je wilt.
Dit is experimenteel, maar ik denk dat het een mogelijke toekomst laat zien: sterke fine-tuning van lokale modellen op gespecialiseerde datasets. De repo bevat ook: - Hulpmiddelen voor het converteren van modellen naar MLX - Inferentietools - GRPO werkt met ELK model (niet alleen nanochat!)
15,21K