Qu'est-ce que llamafile ?
llamafile est un projet gratuit et open source qui regroupe un modèle de langage avec le moteur d'inférence llama.cpp dans un seul fichier exécutable, distribuable et exécutable sans installation sur plusieurs systèmes d'exploitation. Il a été créé par Justine Tunney et publié pour la première fois par le groupe d'innovation de Mozilla en novembre 2023.
Le projet est hébergé sur github.com/mozilla-ai/llamafile (précédemment sous l'organisation Mozilla-Ocho) et a dépassé environ 25 900 étoiles GitHub. Il est publié sous licence Apache 2.0, les propres modifications du projet à llama.cpp et whisper.cpp restant sous MIT pour rester compatibles avec ces projets et upstreamables vers eux.
- Combine un fichier de modèle et le moteur llama.cpp en un seul exécutable distribuable, plutôt que de nécessiter une installation de moteur séparée plus un téléchargement de modèle séparé
- S'appuie sur llama.cpp pour le travail d'inférence proprement dit — la contribution propre de llamafile est la couche d'empaquetage et d'exécution multiplateforme
- Lance par défaut une interface web de chat au démarrage, aux côtés d'un mode serveur compatible API OpenAI
- Des exemples de llamafiles préconstruits pour des modèles ouverts populaires sont publiés sur Hugging Face par le projet et des membres de la communauté
Qu'est-ce que Cosmopolitan Libc, et comment rend-elle cela possible ?
Cosmopolitan Libc est une bibliothèque standard C, également créée par Justine Tunney, conçue pour compiler des binaires « gras » qui sont simultanément des exécutables valides sur plusieurs systèmes d'exploitation et architectures CPU. C'est la technologie sous-jacente qui rend possible la distribution multiplateforme en un seul fichier de llamafile.
- Un binaire construit avec Cosmopolitan Libc peut fonctionner, sans modification, sur macOS, Linux, BSD et Windows, plutôt que de nécessiter un build compilé séparé par système d'exploitation
- Cela diffère de l'empaquetage de plusieurs binaires spécifiques à une plateforme dans une seule archive — c'est véritablement un seul binaire valide sur plusieurs systèmes
- Windows impose une limite de taille de fichier de 4 Go aux exécutables, ce qui limite la taille qu'un seul llamafile peut atteindre spécifiquement sur cette plateforme
- Cosmopolitan Libc est un projet distinct et généraliste ; llamafile en est une application notable, pas la seule
Comment télécharger et lancer un llamafile ?
Téléchargez un llamafile préconstruit pour le modèle souhaité, rendez-le exécutable, et lancez-le directement — aucune étape d'installation séparée. Construire un llamafile personnalisé à partir de votre propre fichier de modèle GGUF est également pris en charge.
- 1Téléchargez un llamafile préconstruit (un modèle empaqueté avec le moteur) depuis la page Hugging Face du projet ou la page GitHub Releases.
- 2Sur macOS et Linux, rendez le fichier exécutable (
chmod +x votremodele.llamafile) s'il ne l'est pas déjà, puis lancez-le directement (./votremodele.llamafile). - 3Sur Windows, renommez le fichier pour ajouter une extension
.exes'il n'en a pas déjà une, en raison de la façon dont Windows identifie les exécutables. - 4Par défaut, exécuter le fichier lance une interface web de chat locale dans votre navigateur, aux côtés d'un point de terminaison serveur compatible API OpenAI.
- 5Pour activer l'accélération GPU, passez
-ngl 999pour décharger autant de couches que possible sur un GPU détecté (Metal, CUDA, ROCm ou Vulkan). - 6Pour construire un llamafile personnalisé à partir de votre propre modèle GGUF, utilisez les outils d'empaquetage du projet pour combiner le modèle avec le binaire moteur llamafile.
llamafile nécessite-t-il une installation ?
Non. Téléchargez le fichier, rendez-le exécutable si nécessaire, et lancez-le directement — aucun installateur séparé n'est requis.
llamafile peut-il fonctionner sans GPU ?
Oui. Le fonctionnement CPU seul fonctionne d'emblée ; l'accélération GPU (Metal, CUDA, ROCm, Vulkan) est une amélioration de performance optionnelle, pas une exigence.
Quel matériel et quelle accélération GPU llamafile prend-il en charge ?
llamafile prend en charge le fonctionnement CPU seul d'emblée, avec une accélération GPU optionnelle chez la plupart des grands fournisseurs. Le support GPU a évolué au fil du temps, donc la capacité exacte dépend de la version téléchargée.
- Apple Silicon — accélération Metal, activée par défaut lorsqu'un GPU Metal est détecté (implémentée en décembre 2025)
- NVIDIA — accélération CUDA sous Linux, réintroduite en février 2026 après une période de désynchronisation avec llama.cpp en amont
- AMD — accélération ROCm
- Multi-fournisseurs — support du backend Vulkan
- Les bibliothèques GPU (CUDA, ROCm, Vulkan) sont chargées dynamiquement depuis des fichiers précompilés à côté de l'exécutable plutôt que compilées de façon permanente à l'intérieur
À qui s'adresse llamafile ?
Utilisez llamafile si distribuer ou exécuter un modèle comme un fichier unique, sans dépendance, multiplateforme compte plus qu'avoir immédiatement les toutes dernières fonctionnalités de llama.cpp ; utilisez llama.cpp directement ou une application wrapper si cette portabilité en un seul fichier n'est pas la priorité.
🧭 À qui s'adresse llamafile
- Quiconque veut donner à quelqu'un d'autre un modèle qui fonctionne simplement, sans étapes d'installation, quel que soit le système d'exploitation utilisé
- Utilisateurs sur des machines isolées ou restreintes où installer un environnement d'exécution ou un gestionnaire de paquets est impraticable, mais où exécuter un seul fichier téléchargé est autorisé
- Personnes construisant des outils internes simples ou des démos devant fonctionner à l'identique pour des destinataires sur macOS, Windows et Linux sans builds séparés
- Quiconque curieux de l'approche binaire multiplateforme de Cosmopolitan Libc appliquée à un cas d'usage pratique et populaire
❌ À qui llamafile ne convient pas
- Utilisateurs voulant immédiatement les toutes dernières fonctionnalités de llama.cpp — le système de build de llamafile se synchronise périodiquement, pas en continu, avec llama.cpp en amont
- Équipes ayant besoin du flux de travail de gestion de modèles et multi-modèles le plus large possible — Ollama ou LM Studio sont conçus pour cela
- Service de production multi-utilisateurs à fort débit — vLLM ou SGLang sont conçus pour ce travail, pas llamafile
- Utilisateurs Windows ayant besoin d'un fichier de modèle plus grand que la limite de taille d'exécutable de 4 Go imposée par cette plateforme
🏆 Meilleur choix selon l'usage
- Idéal pour une distribution en un seul fichier, multiplateforme, sans installation : llamafile
- Idéal pour une gestion de modèles facile et une CLI sur une machine : Ollama
- Idéal pour une interface de bureau soignée sans terminal : LM Studio
- Idéal pour sans installation avec une UI de jeu de rôle/écriture intégrée : KoboldCpp
- Idéal pour un contrôle maximal des backends matériels : llama.cpp en direct
Comment llamafile se compare-t-il à KoboldCpp et aux autres outils sans installation ?
La comparaison la plus proche de llamafile est KoboldCpp — tous deux se distribuent comme un seul fichier construit sur llama.cpp — mais ils résolvent des problèmes différents : portabilité multiplateforme contre interface intégrée orientée jeu de rôle.
Outil | Licence | Idéal pour |
|---|---|---|
| llamafile | Apache 2.0 | Un fichier tourne sans modification sur 4 OS |
| KoboldCpp | AGPL 3.0 | Sans installation, UI jeu de rôle/écriture intégrée |
| llama.cpp | MIT | Support matériel le plus large, contrôle direct |
| Ollama | MIT | CLI/API simple, gestion des modèles |
| LM Studio | Propriétaire (gratuit) | Interface de bureau sans terminal |
Erreurs courantes lors de l'évaluation de llamafile
La plupart des confusions viennent d'une mauvaise compréhension du fonctionnement de l'astuce multiplateforme en un seul fichier, ou d'attentes envers les toutes dernières fonctionnalités de llama.cpp.
Erreur 1 : supposer qu'un llamafile n'est qu'un zip renommé de builds séparés par plateforme
Le comportement multiplateforme vient du fait que Cosmopolitan Libc produit un binaire véritablement valide sur plusieurs plateformes, pas du regroupement de plusieurs exécutables séparés sous un seul nom de fichier.
Erreur 2 : oublier la limite de taille d'exécutable de 4 Go sous Windows
Windows limite la taille des fichiers exécutables à 4 Go, ce qui peut limiter les tailles de modèles pratiques à distribuer comme un seul llamafile spécifiquement pour les utilisateurs Windows, même si les utilisateurs macOS/Linux du même fichier ne sont pas affectés.
Erreur 3 : s'attendre à une parité immédiate avec la dernière version de llama.cpp
llamafile se reconstruit périodiquement contre les versions actuelles de llama.cpp (comme lors de la refonte du système de build en 0.10.0) plutôt que de suivre chaque changement en amont en continu — une toute nouvelle fonctionnalité de llama.cpp peut ne pas apparaître immédiatement dans llamafile.
Questions fréquentes
Qu'est-ce que llamafile ?
llamafile est un projet gratuit sous licence Apache 2.0 qui regroupe un modèle et le moteur llama.cpp dans un seul fichier exécutable fonctionnant sans modification sur macOS, Linux, Windows et BSD, grâce à Cosmopolitan Libc.
Qui a créé llamafile ?
Justine Tunney, créatrice de Cosmopolitan Libc, a créé llamafile, publié pour la première fois par le groupe d'innovation de Mozilla en novembre 2023. Il est maintenant maintenu sur github.com/mozilla-ai/llamafile.
Comment un fichier peut-il fonctionner sur macOS, Linux et Windows ?
llamafile est construit avec Cosmopolitan Libc, une bibliothèque standard C conçue pour produire un binaire unique valide simultanément sur plusieurs systèmes d'exploitation et architectures CPU, plutôt que de nécessiter des builds séparés par plateforme.
llamafile est-il gratuit pour un usage commercial ?
Oui. llamafile est sous licence Apache 2.0, gratuit pour un usage personnel et commercial. Ses propres modifications à llama.cpp et whisper.cpp restent sous licence MIT.
llamafile nécessite-t-il un GPU ?
Non. Le fonctionnement CPU seul fonctionne par défaut ; l'accélération GPU via Metal, CUDA, ROCm ou Vulkan est optionnelle et améliore la vitesse.
Existe-t-il une limite de taille de fichier pour un llamafile ?
Oui, spécifiquement sous Windows — Windows limite les fichiers exécutables à 4 Go, ce qui peut limiter la taille qu'un modèle peut atteindre lorsqu'il est empaqueté comme un seul llamafile pour les utilisateurs Windows.
llamafile reste-t-il à jour avec llama.cpp ?
Il se synchronise périodiquement plutôt qu'en continu — la version 0.10.0 a introduit un système de build reconstruit spécifiquement pour suivre le rythme des versions actuelles de llama.cpp, et le support CUDA pour Linux a été réintroduit en février 2026 après une période de retard.
Quelle est la différence entre llamafile et KoboldCpp ?
Les deux se distribuent comme un seul fichier construit sur llama.cpp sans installateur séparé, mais la caractéristique distinctive de llamafile est une véritable portabilité multiplateforme (un fichier fonctionne sur 4 systèmes d'exploitation différents), tandis que celle de KoboldCpp est une interface web intégrée orientée jeu de rôle et écriture d'histoires.
Puis-je créer un llamafile à partir de mon propre modèle ?
Oui. Le projet fournit des outils d'empaquetage pour combiner un fichier de modèle GGUF avec le binaire moteur llamafile en un exécutable unique personnalisé.
llamafile convient-il au service de production multi-utilisateurs ?
Ce n'est pas son objectif. llamafile est conçu pour une distribution simple et portable en un seul fichier et un usage mono-utilisateur ou à petite échelle ; pour un service de production multi-utilisateurs à fort débit, vLLM ou SGLang sont les outils plus appropriés.
