Faire exécuter des modèles de langage volumineux en local sur des ordinateurs personnels a longtemps été l'apanage des machines dotées de configurations de mémoire vive gargantuesques. Lorsqu'un modèle affiche 26 milliards de paramètres au compteur, la majorité des développeurs suppose immédiatement qu'un Mac de base avec 8 Go de mémoire unifiée reste hors de la course. C'est précisément cette idée reçue que le développeur Andrey Mikhaylov vient de faire voler en éclats avec son projet open-source TurboFieldfare.
Ingénieur spécialisé dans le développement iOS et les technologies Metal, Andrey s'est mis au défi de faire tourner le modèle d'IA Gemma 4 26B-A4B d'une taille initiale de plus de 14 Go dans une enveloppe mémoire restreinte d'environ 2 Go de RAM.
Le résultat est une prouesse d'ingénierie d'inférence sur appareil qui prouve que l'optimisation bas niveau peut repousser les limites matérielles du silicium d'Apple.
Pour réussir là où les architectures traditionnelles échouent, TurboFieldfare tire parti de la structure en mélange d'experts (Mixture of Experts ou MoE) de Gemma 4 26B-A4B.
Plutôt que de charger l'intégralité des 14,3 Go de poids du modèle directement dans la mémoire vive du Mac, le moteur conserve uniquement en RAM un noyau partagé d'environ 1,35 Go ainsi que le cache KV au format FP16.
Lors de chaque passe de calcul, le routeur détermine quels experts spécifiques sont requis pour générer le jeton suivant. TurboFieldfare lit alors ces experts ciblés directement depuis le disque SSD vers des tampons accessibles par l'unité graphique (Metal-visible buffers) de façon parallèle et optimisée.
Pendant que les données d'experts transitent depuis le stockage flash, les puces Apple Silicon calculent la branche partagée, minimisant ainsi le temps d'attente. Un algorithme de gestion de cache LFU à seize emplacements permet de réutiliser les experts fréquemment sollicités et d'assurer une exécution fluide.
Du code sur-mesure sans dépendance externe
Le développeur a fait le choix de refuser la facilité. L'intégralité de la solution est conçue de zéro en Swift 6.2 et Metal 4, taillée spécifiquement pour macOS et l'architecture Apple Silicon.
Le projet intègre des noyaux Metal sur-mesure développés pour la multiplication matrice-vecteur quantifiée (GEMV), les opérations d'attention, la normalisation, le RoPE (Rotary Position Embedding) et l'échantillonnage.
Même la phase d'installation du modèle a fait l'objet d'une optimisation poussée. L'installateur réorganise les plages de données du modèle depuis Hugging Face directement dans le format de fichier personnalisé gturbo sans jamais matérialiser de fichier intermédiaire massif sur le disque ni surcharger la mémoire tampon.
Une méthodologie empirique et rigoureuse
L'excellence de ce projet s'incarne également dans sa démarche scientifique. Andrey a documenté plus d'une centaine d'expériences mesurées allant de l'optimisation des noyaux à la gestion des opérations d'entrée-sortie et à l'attention prédictive par blocs.
Cette approche empirique permet d'atteindre des vitesses de génération d'environ 5 à 6 jetons par seconde sur un MacBook Air M2 de 8 Go et de dépasser les 30 jetons par seconde sur les puces plus puissantes comme le M5 Pro.
L'écosystème livré est particulièrement complet. Il propose une application native macOS conçue en SwiftUI et AppKit, une interface en ligne de commande pour les scripts, un service de décodage isolé et même un serveur local compatible avec l'API OpenAI permettant l'exécution d'outils et d'appels de fonctions.
En réussissant à exécuter un modèle de 26 milliards de paramètres sur des machines dotées de seulement 8 Go de RAM, Andrey fait faire un pas en avant au domaine de l'IA locale sur ordinateur personnel. Son projet démontre avec brio qu'une conception logicielle réfléchie au plus près du matériel peut surmonter des contraintes de mémoire que l'on croyait infranchissables.