llama.cpp
Version en vigueur v0.2.0 (canal estable) / b10618 (compilacion diaria)2026-08-21 (v0.2.0) / 2026-08-25 (b10618)Arbre audité master, commit eb25b7263e1604b4382295563f5a924002d6f87c (2026-08-25)Licence MIT
Pour qui veut un contrôle total et la prise en charge du matériel la plus large, et que le terminal ne dérange pas.
Le moteur. C’est l’implémentation en C/C++ sur laquelle reposent presque tous les autres programmes d’IA locale grand public, et elle s’utilise directement : un outil en ligne de commande et un serveur avec sa propre interface web.
Étapes jusqu’au premier token
Mesuré par Local AI Scope
Hôtes qu’il contacte d’origine
Mesuré par Local AI Scope
Licence
Mesuré par Local AI Scope
Comment nous l’avons vérifié
Tout ce que cette fiche affirme sur le réseau vient de la lecture du code publié et de la documentation officielle à la date indiquée, et non de l’observation du trafic. Nous n’avons pas exécuté le programme avec un analyseur de réseau : c’est de l’analyse statique, pas de l’observation. Une capture réelle reste à faire ; le jour où nous l’aurons, ces cellules monteront d’un niveau de preuve. Nous préférons le dire plutôt que de vous laisser croire que nous avons reniflé les paquets.
Ce qui sort de votre machine
Les quatre questions auxquelles un logiciel local doit répondre avant de mériter vos documents : ce qu’il envoie de lui-même, qui d’autre il appelle, sur quelle adresse il écoute, et si vous pouvez le vérifier vous-même.
Télémétrie par défaut
Aucune — et ici c’est un fait, pas une promesse. Vérifié par nous à la source primaire
Nous avons balayé tout l’arbre au commit eb25b72 à la recherche de telemetry, analytics, posthog, mixpanel, sentry.io, google-analytics et gtag( dans tous les fichiers .c, .cpp, .h, .hpp, .ts, .tsx, .svelte et .js : pas une seule correspondance réelle. Les seuls domaines écrits dans le code sont des URL de documentation dans des commentaires. Il n’existe aucun point d’envoi de données d’usage. C’est aussi le seul des cinq qui ne vérifie pas les mises à jour : avec un fichier de modèle local, il n’ouvre pas une seule connexion.
Comment le désactiver: Rien à désactiver : il n’y en a pas.
Source · consulté le 2026-08-25
Autres appels vers l’extérieur
| Quoi | Vers où | Quand | Peut-on l’éviter | Preuve |
|---|---|---|---|---|
| Téléchargement de modèles | huggingface.co |
Uniquement avec -hf, –model-url ou la sous-commande de téléchargement. Avec un fichier local, il n’ouvre rien. Il envoie en revanche un agent utilisateur qui identifie la compilation. | Utiliser des fichiers locaux | vérifié par nous |
| Téléchargement de modèles empaquetés en image de conteneur | auth.docker.io · registry-1.docker.io |
Uniquement avec l’option –docker-repo. | Ne pas l’utiliser | vérifié par nous |
| Interface web précompilée, à la COMPILATION | huggingface.co |
Uniquement en compilant depuis les sources avec l’option par défaut active. Sans réseau, il avertit et compile sans interface. | LLAMA_USE_PREBUILT_UI=OFF | vérifié par nous |
| Mise à jour manuelle | llama.app |
Uniquement si vous lancez vous-même la sous-commande de mise à jour, et seulement pour les installations faites avec leur script. Elle ne se déclenche jamais seule. | Ne pas la lancer | vérifié par nous |
Source · consulté le 2026-08-25
Sur quelle adresse il écoute
| Réglage | D’origine |
|---|---|
| Écoute sur | 127.0.0.1:8080 |
| Authentification par défaut | aucune |
| CORS par défaut | Renvoie n’importe quel Origin et autorise les identifiants ; le serveur avertit sur la console quand il n’y a pas non plus de clé |
Il écoute sur localhost, et cela a toujours été le cas : sur toute l’histoire du dépôt, sur les 719 révisions des fichiers qui déclarent l’hôte, 471 déclarent 127.0.0.1 et aucune n’en déclare une autre. Le prix de ce silence, c’est le CORS : le serveur renvoie n’importe quel Origin et autorise les identifiants, si bien que n’importe quelle page web que vous visitez peut parler à votre llama-server tant qu’il tourne. Il le signale lui-même sur la console lorsqu’il n’y a pas non plus de clé. C’est aussi le seul des cinq qui resserre sa politique de CORS selon la dangerosité de ce qu’il expose : activer les outils d’agent — qui incluent lire, écrire et modifier des fichiers et exécuter des commandes — le fait se replier sur les origines localhost. Vérifié par nous à la source primaire
«By default the server reflects any Origin header back with credentials allowed. […] CORS is set to allow all origins (‘*’) and no API key is set — this can be a security risk (cross-origin attacks).»
Source · consulté le 2026-08-25
Peut-on l’auditer ?
Oui, et c’est la raison pour laquelle cette ligne peut dire aucune sur la télémétrie sans rougir. MIT, avec le moteur entier, le serveur et l’interface web dans un seul dépôt public. C’est le seul des cinq dont nous pouvons affirmer, code lu, qu’il n’envoie pas de télémétrie et ne vérifie pas les mises à jour. Vérifié par nous à la source primaire
Source · consulté le 2026-08-25
Politique de confidentialité
Il n’existe pas de politique de confidentialité, et ce n’est pas un manque ici : aucun service ne se cache derrière le programme et il n’y a pas de responsable de traitement à qui la réclamer. non vérifié
Ce qu’il exécute, et où
Plateformes, accélérateurs et formats de modèle : les trois murs rencontrés dès le premier soir, et ceux que personne n’écrit avant de s’y être heurté.
Où il fonctionne
| Plateforme | Prise en charge | Preuve |
|---|---|---|
| Windows | Oui : binaires précompilés pour x64 et ARM64, en variantes CPU, CUDA, Vulkan, ROCm, SYCL, OpenVINO et OpenCL/Adreno. Installable avec winget. | vérifié par nous |
| macOS Apple Silicon | Oui : binaire précompilé et paquets Homebrew, MacPorts ou Nix. | vérifié par nous |
| macOS Intel | Oui, mais en CPU seulement. Il existe un binaire Mac Intel, et le flux de publication le compile avec Metal désactivé à dessein : le commentaire de leur propre fichier dit que les machines de compilation n’ont pas de GPU. | vérifié par nous |
| Linux | Oui : x64, ARM64 et même s390x (IBM Z), en variantes CPU, Vulkan, ROCm, SYCL et OpenVINO. | vérifié par nous |
| + | Android ARM64 et un xcframework pour iOS/macOS. Il documente aussi des compilations RISC-V. | vérifié par nous |
Ce qu’il accélère
| Moteur | État | Preuve |
|---|---|---|
| CUDA | Oui, mais le binaire n’existe que pour Windows. Sous Linux, il faut compiler ou passer par Docker — ce qui fait du cas le plus répandu au monde, NVIDIA sous Linux, le seul sans compilation prête. | vérifié par nous |
| ROCm | Oui, avec binaire : ROCm 7.14, sous Windows et Linux. | vérifié par nous |
| Metal | Oui, intégré au binaire macOS ARM64. Désactivé sur Mac Intel. | vérifié par nous |
| Vulkan | Oui, avec binaire : x64 et ARM64 sous Linux, x64 sous Windows. | vérifié par nous |
| CPU | Oui, avec SIMD par architecture. C’est la raison d’être du projet. | vérifié par nous |
| SYCL / OpenCL / OpenVINO | Oui : SYCL pour Intel, OpenCL/Adreno pour les mobiles Qualcomm, et OpenVINO. | vérifié par nous |
| NPU | Nous n’avons pas pu le vérifier. Il publie des binaires avec le backend OpenVINO, la pile d’Intel pour accélérer sur CPU, GPU et NPU, mais aucune affirmation officielle ne dit que llama.cpp fait de l’inférence sur le NPU : nous ne le tenons donc pas pour acquis. | non vérifié |
Formats de modèle qu’il exécute
GGUF uniquement. GGUF est son format natif : c’est ce projet qui l’a inventé. Les safetensors doivent être convertis au préalable avec le script que fournit le dépôt lui-même. vérifié par nous
Source · consulté le 2026-08-25
L’installer et vivre avec
Combien d’étapes jusqu’au premier token, ce qu’il laisse sur votre disque, sous quelle licence et à quel rythme il change sous vos pieds.
Étapes jusqu’au premier token
2 étapes. Installer le paquet et lancer `llama serve -hf <dépôt-hugging-face>` : il télécharge le modèle et ouvre l’interface web. Ce qui augmente la difficulté n’est pas l’installation, mais que tout se règle par des paramètres en ligne de commande. vérifié par nous
Ce qu’il écrit sur votre disque
| Quoi | Où | Preuve |
|---|---|---|
| Modèles téléchargés avec -hf : le cache standard de Hugging Face, partagé avec les autres programmes qui l’utilisent, donc pas de doublons | ~/.cache/huggingface/hub — le cache de Hugging Face (LLAMA_CACHE → HF_HUB_CACHE → HF_HOME/hub → XDG_CACHE_HOME) |
vérifié par nous |
| Autres artefacts et cache du serveur RPC | $LLAMA_CACHE · $XDG_CACHE_HOME · ~/.cache/llama.cpp/ |
vérifié par nous |
| Conversations de l’interface web : dans votre navigateur, pas sur le serveur | Dans votre navigateur, pas sur le serveur : IndexedDB (base LlamaUi) et localStorage avec le préfixe LlamaUi. Elles s’effacent en vidant les données du site et ne se synchronisent pas entre navigateurs | vérifié par nous |
| Cache de prompts : en mémoire, pas sur le disque, sauf demande explicite | En mémoire, pas sur le disque (8192 Mio par défaut). Elle n’atteint le disque qu’avec –slot-save-path ou –prompt-cache | vérifié par nous |
| Journaux : seulement si vous les demandez | Seulement avec –log-file ; le vidage des prompts sur disque (–log-prompts-dir) est désactivé | vérifié par nous |
Licence
MIT. Le moteur entier, le serveur et l’interface web. vérifié par nous
Source · consulté le 2026-08-25
Version et rythme de publication
Deux rythmes. Le canal de développement publie environ huit compilations par jour (266 en 30 jours). Le canal stable vient de naître, le 21 août 2026, et en est à sa quatrième étiquette au total. vérifié par nous
«tag vX.Y.Z – stable, slower release cadence, recommended for downstream distribution and casual users; tag b[NUM] – bleeding edge, faster release cadence, recommended for developers and technical users.»
Source · consulté le 2026-08-25
À savoir avant de l’installer
- C’est le seul des cinq dont nous puissions affirmer, code lu, qu’il n’envoie pas de télémétrie et ne vérifie pas les mises à jour. Avec un fichier de modèle local, il n’ouvre pas une seule connexion.
- Depuis le 21 août 2026, il existe un canal stable (v0.2.0) à côté des compilations quotidiennes. Tout texte affirmant que « llama.cpp n’a pas de versions stables » est désormais dépassé. Attention : le paquet winget distribue toujours la compilation quotidienne.
- Le prix de ce silence, c’est le CORS : le serveur renvoie n’importe quelle origine et autorise les identifiants, si bien que n’importe quelle page web visitée peut parler à votre llama-server tant qu’il tourne. Le serveur lui-même le signale sur la console. On le restreint avec –cors-origins localhost.
- Le cas le plus répandu au monde — NVIDIA sous Linux — est justement celui qui n’a pas de binaire précompilé : il faut compiler ou passer par Docker.
- Son serveur auxiliaire de calcul distribué porte un avertissement sans détour dans sa propre documentation : le backend RPC est une preuve de concept, fragile et non sécurisée, et ne doit jamais tourner sur un réseau ouvert.