llmfit - L'outil qui sait quel LLM votre PC peut encaisser
Vous avez un super GPU de la mort qui tue et vous voulez faire tourner un modèle d'IA en local, mais entre la VRAM dispo, la quantification qui change tout et les 500 modèles existant... c'est tout simplement le bordel pour savoir lequel va passer crèèème sans faire ramer votre machine. On galère tous à tester des modèles au pif en voyant la RAM exploser, mais aujourd'hui on a une solution.
Car c'est exactement le problème que résout llmfit , un outil en Rust qui scanne votre hardware et vous classe les modèles compatibles par score. GPU NVIDIA, AMD, Intel Arc, Apple Silicon, sur macOS, Linux ou Windows, tout y passe ! Sur mon Mac, cette commande détecte instantanément la VRAM unified memory, les cœurs CPU et le type de GPU dans mon système, puis elle passe en revue sa base d'environ 500 modèles HuggingFace pour me dire lesquels tournent chez moi.
L'interface llmfit dans un terminal, sobre et efficace
Du coup, chaque modèle est évalué sur 4 axes : qualité, vitesse, occupation mémoire et capacité de contexte. En fait, le scoring s'adapte à votre usage, si vous voulez du chat rapide, la vitesse pèse plus lourd, et si c'est du raisonnement, c'est la qualité qui prime. À vrai dire, c'est plus malin que de comparer bêtement les paramètres sur la page HuggingFace. Et la quantification est choisie dynamiquement, de Q8_0 (la plus fidèle) jusqu'à Q2_K (la plus compressée), histoire de caser un max de trucs dans votre config.
L'interface par défaut c'est un TUI (une interface dans le terminal) avec navigation à la vim (j/k, /, tout ça) qui affiche un tableau avec les scores dans votre terminal. Pour le mode CLI, y'a llmfit --cli, et pour ceux qui veulent intégrer ça dans un pipeline, un petit llmfit serve et ça lance un serveur REST sur votre machine.
Le truc vraiment sympa je trouve c'est surtout la simulation hardware. Vous appuyez sur S dans le TUI et vous testez d'autres configs sans rien changer à votre machine. Genre "et si j'avais 24 Go de VRAM au lieu de 8 ?". Ça évite d'acheter une nouvelle carte graphique pour rien, quand on peut vérifier en deux secondes que la config actuelle suffit déjà amplement pour son usage quotidien de chat et de génération de petits scripts en local au fil de la semaine. Pas mal non ?
Y'a aussi le mode plan qui fait l'inverse, vous donnez un nom de modèle et l'outil vous dit de quel hardware vous avez besoin. D'ailleurs si vous êtes sur Mac et que l'IA en local vous branche, n'oubliez pas au passage que apfel vous permet de libérer le modèle caché dans macOS.
Côté installation, brew install llmfit sur Mac, scoop install llmfit sous Windows, ou un curl -fsSL https://llmfit.axjns.dev/install.sh | sh partout ailleurs. Une commande, c'est tout. Et ça tourne aussi en Docker !
Le support multi-GPU est également là avec agrégation de la VRAM, et l'outil tient compte des architectures MoE comme Mixtral dans son scoring (ces modèles ne chargent pas tous leurs experts d'un coup, du coup la VRAM nécessaire est plus faible qu'on pourrait croire). L'outil propose aussi 10 thèmes de couleurs, Dracula, Nord, Catppuccin... pour ceux qui ont des opinions sur les palettes de leur terminal.
Par contre y'a un hic, la base est figée à environ 500 modèles embarqués dans le binaire, donc si un nouveau modèle sort demain, faudra attendre la prochaine release. Et disons que les estimations de vitesse sont des ordres de grandeur, pas des valeurs exactes (difficile de faire mieux sans lancer vraiment l'inférence). Mais bon, pour les classiques comme Llama, Qwen, Mistral ou Gemma, c'est bien couvert. Et bien sûr, le projet est open source sous licence MIT, donc c'est chouette comme dirait le hibou (déso, pas déso ^^).
Si llamafile vous avait déjà simplifié le lancement de modèles, llmfit s'attaque au problème d'avant : choisir LEQUEL lancer.
Bref, ça vaut le coup de tester, dites-moi quel modèle ça vous recommande !
