vLLM
Version en vigueur 0.32.02026-10-18Arbre audité tag v0.32.0 (2026-10-18)Licence Apache-2.0
vLLM 0.32.0 n’est pas fait pour votre ordinateur : il sert des modèles depuis des serveurs Linux et, sous Windows, ne tourne officiellement que via WSL. Les statistiques d’usage sont activées d’usine, avec un battement toutes les 10 minutes vers stats.vllm.ai, et c’est le seul des cinq à écouter sur toutes les interfaces sans clé (0.0.0.0:8000). Apache-2.0, code public.
Moteur d’inférence conçu pour servir des modèles à beaucoup de monde à la fois, pas pour discuter sur un portable. C’est le standard de fait sur les serveurs à GPU NVIDIA.
É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
Vidéos : vLLM 4
Les images officielles et les meilleures démonstrations que nous avons trouvées. Appuyez et la vidéo s’ouvre ici.
Les vidéos sont sur YouTube et rien ne se charge depuis YouTube tant que vous n’appuyez pas (mode sans cookies). La miniature est servie par nous.
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 encore placé le programme devant un analyseur de réseau : c’est de l’analyse statique, pas de l’observation. Cette capture est sur notre liste ; le jour où nous l’aurons, ces cellules monteront d’un niveau de preuve. D’ici là, pas question de prétendre avoir reniflé les paquets : nous avons lu la recette, pas goûté le plat.
Ce qui sort de votre machine
Avant de laisser un logiciel local approcher vos documents, nous lui posons quatre questions : 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. Un vrai entretien d’embauche.
Télémétrie par défaut
Oui, activée d’usine — et ce n’est pas un avis au démarrage, c’est un battement toutes les dix minutes. Vérifié par nous à la source primaire
Que vLLM collecte des statistiques d’usage par défaut est documenté. Ce qui n’est pas dans la documentation, et n’apparaît qu’en lisant le code, c’est qu’il ne s’agit pas d’un envoi unique : la fonction de rapport continu exécute une boucle infinie qui dort 600 secondes et refait un POST, tant que le processus vit. La destination n’est pas non plus documentée : il faut aller au code pour trouver stats.vllm.ai. Les échecs réseau sont ignorés en silence. Ce qui part : identifiant aléatoire de l’exécution, fournisseur de cloud détecté en lisant les identifiants du matériel, nombre de cœurs, marque du processeur et famille/modèle/stepping, mémoire totale, chaîne complète du système d’exploitation, version de CUDA, nombre de GPU avec modèle et mémoire par appareil, cinq variables d’environnement, architecture du modèle chargé et, côté serveur, une vingtaine d’autres paramètres de démarrage. À son crédit, et il faut le dire : c’est le seul des cinq qui vous laisse voir exactement ce qu’il envoie, dans ~/.config/vllm/usage_stats.json, et il offre quatre façons de le couper.
«Report usage every 10 minutes. This helps us to collect more data points for uptime of vLLM usages.»
Comment le désactiver: N’importe laquelle de ces quatre : VLLM_NO_USAGE_STATS=1, DO_NOT_TRACK=1, VLLM_DO_NOT_TRACK=1, ou créer le fichier ~/.config/vllm/do_not_track. La documentation en publie trois : les variables VLLM_NO_USAGE_STATS et DO_NOT_TRACK, et le fichier. VLLM_DO_NOT_TRACK n’est que dans le code.
Source · consulté le 2026-10-23
Autres appels vers l’extérieur
| Quoi | Vers où | Quand | Peut-on l’éviter | Preuve |
|---|---|---|---|---|
| Statistiques d’usage | stats.vllm.ai |
Au démarrage et toutes les 10 minutes, toujours, sauf désactivation. | Oui, par quatre voies différentes | vérifié par nous |
| Téléchargement de modèles, en s’identifiant comme vLLM | huggingface.co (ou modelscope) |
Au chargement d’un modèle absent du cache. C’est le seul des cinq qui dit à Hugging Face quel runtime et quelle version télécharge. | HF_HUB_OFFLINE=1 | vérifié par nous |
| Vérification et téléchargement des kernels de FlashInfer, depuis le serveur de NVIDIA | edge.urm.nvidia.com |
Au démarrage, si vLLM utilise FlashInfer, ou se contente de l’évaluer, et que ses kernels précompilés manquent : en général, vLLM demande d’abord si le serveur de NVIDIA répond (une requête, avec 5 secondes de limite), puis FlashInfer télécharge les kernels qui lui manquent. Installé avec pip (l’image Docker les apporte déjà), sur les Blackwell de centre de données (B200, B300), elle part toute seule avec presque n’importe quel modèle ; sur une H100 ou une RTX 50, elle peut partir avec des modèles comme gpt-oss. | Lancer vllm download-kernels une fois après l’installation (c’est une étape à part de pip) : avec les kernels sur le disque, en général aucune des deux ne sort. FLASHINFER_NO_DOWNLOAD=1 bloque le téléchargement, pas la vérification de vLLM | vérifié par nous |
| Point de métriques Prometheus : local, rien ne sort de votre machine | local : rien ne quitte la machine |
Toujours : /metrics est monté par défaut. N’étant pas sous /v1, la clé d’API ne le couvre pas. | Non documenté | vérifié par nous |
| Images, audio ou vidéo qu’une requête transmet sous forme d’adresse web | l'adresse web que contient la requête, quelle qu'elle soit |
Seulement quand une requête au serveur (chat, /v1/responses, /v1/messages, embeddings, scoring…) contient une image, un audio ou une vidéo sous forme d’adresse http(s) : le serveur télécharge lui-même le fichier avant de répondre, en se présentant comme vLLM avec sa version, et en suivant les redirections. En chat, avec un modèle texte seul, la requête échoue avant tout téléchargement. | --allowed-media-domains limite ce téléchargement aux domaines que vous indiquez ; ou intégrez vos médias (base64). VLLM_MEDIA_URL_ALLOW_REDIRECTS=0 cesse de suivre les redirections |
vérifié par nous |
Source · consulté le 2026-10-23
Sur quelle adresse il écoute
| Réglage | D’origine |
|---|---|
| Écoute sur | 0.0.0.0:8000 |
| Authentification par défaut | aucune |
| CORS par défaut | Fermé depuis la 0.32.0 : aucune page d’un autre site ne peut lire ses réponses dans votre navigateur tant que vous n’avez pas ajouté son origine à --allowed-origins (jusqu’à la 0.31.0, n’importe quelle origine, méthode et en-tête). Cela ne bride que le navigateur : le serveur écoute toujours sur 0.0.0.0 sans clé |
C’est celle qui compte. Dans la version publiée, le paramètre d’hôte n’a pas de valeur et se résout en chaîne vide, et se lier à la chaîne vide en IPv4 équivaut à INADDR_ANY, c’est-à-dire 0.0.0.0. Un `vllm serve modèle` sans autre paramètre laisse le modèle à la disposition de tout le réseau local, sans mot de passe. Nous avons vérifié la même valeur par défaut sur huit versions : ce n’est pas une régression récente. Et il y a un deuxième étage : leur propre page de sécurité reconnaît que la clé d’API ne suffit pas, parce qu’elle ne couvre que les préfixes /v1, /v2, /inference et /cohere alors que d’autres points sensibles restent sans authentification sur le même serveur. Leur recommandation est de le placer derrière un proxy inverse. Un troisième détail : vLLM utilise torch.distributed de PyTorch, et quand il le met en place par TCP — sur plusieurs machines, avec le parallélisme de données ou sur les cartes AMD avec l’all-reduce d’AITER —, le TCPStore de PyTorch écoute sur toutes les interfaces réseau, ce que le projet lui-même qualifie de non sécurisé par défaut. Sur une seule machine avec des cartes NVIDIA et sans parallélisme de données, la 0.32.0 utilise un fichier à la place. Vérifié par nous à la source primaire
«The --api-key flag (or VLLM_API_KEY environment variable) provides authentication for vLLM’s HTTP server, but only for OpenAI-compatible API endpoints under the /v1 path prefix […]. Many other sensitive endpoints are exposed on the same HTTP server without any authentication enforcement.»
Source · consulté le 2026-10-23
Peut-on l’auditer ?
Oui. Apache-2.0, le seul des cinq qui ne soit ni MIT ni propriétaire. Tout ce que dit cette fiche du battement de dix minutes et du 0.0.0.0 a été lu dans le code de l’étiquette publiée, non déduit de la documentation — qui dans les deux cas dit quelque chose de moins complet, et dans l’un des deux dit le contraire. Vérifié par nous à la source primaire
Source · consulté le 2026-08-25
Politique de confidentialité
Il n’y a pas de politique de confidentialité au sens habituel : il y a une page de documentation qui explique ce qu’ils collectent et comment le désactiver, et qui annonce la publication d’un sous-ensemble nettoyé et agrégé au bénéfice de la communauté. déclaré par l’éditeur Source
Ce qu’il exécute, et où
Plateformes, accélérateurs et formats de modèle : les trois murs qu’on peut rencontrer dès ce premier soir plein d’enthousiasme. Mieux vaut les découvrir ici qu’à minuit avec un modèle à moitié téléchargé.
Où il fonctionne
| Plateforme | Prise en charge | Preuve |
|---|---|---|
| Windows | Aucune prise en charge native. La voie officielle est WSL. | déclaré par l’éditeur |
| macOS Apple Silicon | Expérimental et en CPU seulement : leur documentation dit qu’il faut compiler depuis les sources. Le GPU ne passe pas par vLLM : il passe par un greffon communautaire qui utilise MLX en dessous et exige des modèles au format MLX. | déclaré par l’éditeur |
| macOS Intel | Nous n’avons pas pu le vérifier. Il n’y a ni roues ni documentation pour Mac Intel ; la section Apple Silicon est la seule section macOS qui existe et ses roues sont arm64. Nous rapportons l’absence, pas un « non ». | non vérifié |
| Linux | Oui, c’est sa plateforme. Python 3.11 à 3.14 d’après la documentation (la 0.32.0 a abandonné la 3.10). | déclaré par l’éditeur |
Ce qu’il accélère
| Moteur | État | Preuve |
|---|---|---|
| CUDA | Oui, et c’est le cas de première classe : le seul que leur propre site marque comme populaire. Exige une capacité de calcul 7.5 ou supérieure, ce qui exclut les GTX 10xx et antérieures. | déclaré par l’éditeur |
| ROCm | Oui, avec son propre index de paquets, mais plus étroit que CUDA : pour la 0.32.0, Python 3.12, ROCm 7.2.3 et glibc 2.39 ou plus récent. | vérifié par nous |
| CPU | Oui, avec des limites : x86 (AVX512 recommandé, AVX2 en fonctions limitées), ARM avec NEON, et IBM Z. | déclaré par l’éditeur |
| Metal | Non, seulement par greffon externe : vLLM-Metal, maintenu par la communauté, qui utilise MLX en dessous. | déclaré par l’éditeur |
| NPU / accélérateurs | Pas dans le dépôt principal. TPU de Google, Intel Gaudi, AWS Neuron et Ascend sont des paquets séparés depuis la 0.27. | déclaré par l’éditeur |
| Vulkan | Nous n’avons pas pu le vérifier. Il n’apparaît pas sur leur page des plateformes prises en charge et il n’y a de déclaration dans aucun sens. | non vérifié |
Formats de modèle qu’il exécute
safetensors nativement, plus AWQ, GPTQ, FP8, compressed-tensors, bitsandbytes et une vingtaine d’autres schémas de quantification. GGUF n’est plus inclus : depuis la 0.27, il a été sorti dans un greffon à part et ils continuent eux-mêmes de le qualifier de hautement expérimental. Tout texte disant « vLLM prend en charge GGUF » sans cette nuance est dépassé. vérifié par nous
Source · consulté le 2026-08-25
L’installer et vivre avec
Le quotidien : 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 une fois installé.
Étapes jusqu’au premier token
2 étapes. Installer le paquet (depuis la 0.32.0, suivi de `vllm download-kernels`) et lancer `vllm serve <modèle>`. Il n’y a pas d’interface : on lui parle par API. La difficulté n’est pas de l’installer, mais qu’il n’y a rien à regarder et qu’il faut comprendre les paramètres de mémoire. vérifié par nous
Si quelque chose ne marche pas : 8 erreurs, le message exact de chacune et la solution
Ce qu’il écrit sur votre disque
| Quoi | Où | Preuve |
|---|---|---|
| Une copie locale de la télémétrie envoyée : leur documentation vous invite à la lire, et c’est le seul des cinq qui vous montre exactement ce qui sort | ~/.config/vllm/usage_stats.json |
vérifié par nous |
| Fichier sentinelle pour désactiver la télémétrie : c’est vous qui le créez | ~/.config/vllm/do_not_track — c’est vous qui le créez |
vérifié par nous |
| Cache de compilation de PyTorch | ~/.cache/vllm (VLLM_CACHE_ROOT) |
déclaré par l’éditeur |
| Modèles : le cache de Hugging Face | ~/.cache/huggingface — le cache de Hugging Face (HF_HOME) |
déclaré par l’éditeur |
| Historique des conversations : il n’existe pas. C’est un serveur d’API sans interface de discussion et il ne persiste rien des requêtes | Nulle part : rien n’est écrit | vérifié par nous |
Licence
Apache-2.0. Le seul des cinq qui ne soit ni MIT ni propriétaire. vérifié par nous
Source · consulté le 2026-08-25
Version et rythme de publication
Une version mineure toutes les deux semaines environ. Les deux derniers correctifs (0.25.1 et 0.27.1) sont sortis en trois jours ou moins, mais il n’y en a plus eu depuis la 0.27.1 (août 2026). Ce n’est pas mensuel : les derniers sauts mineurs ont été de 14, 13, 13 et 13 jours. Attention en datant un texte à son sujet : entre le 26 août et le 22 septembre 2026, il a publié trois versions mineures (0.28, 0.29 et 0.30). vérifié par nous
Source · consulté le 2026-10-22
À savoir avant de l’installer
- C’est le seul des cinq avec la télémétrie activée d’usine, et ce n’est pas un avis au démarrage : il envoie un battement toutes les dix minutes tant que le serveur vit. À son crédit : il le documente, il laisse lire le contenu exact dans un fichier local et offre quatre façons de le couper.
- C’est aussi le seul qui écoute sur 0.0.0.0 par défaut et sans clé. Un `vllm serve modèle` sans autre paramètre, sur un portable connecté au wifi d’un hôtel, laisse le modèle à la disposition de tout le réseau. Ce n’est pas une régression : c’est ainsi depuis au moins huit versions.
- Leur propre page de sécurité prévient que la clé d’API ne couvre que les routes /v1, /v2, /inference et /cohere, et qu’il existe des points sensibles sans authentification sur le même serveur. La recommandation officielle est de le placer derrière un proxy inverse.
- Il réserve 92 % de la mémoire de la carte dès le démarrage, et c’est une pré-allocation, pas un usage à la demande. Attention au chiffre : les 90 % qui circulent sur internet viennent d’un exemple figé dans leur propre documentation depuis la version 0.4.0.
- vLLM ne publie nulle part un minimum de mémoire vidéo. Le seul prérequis matériel publié est la capacité de calcul 7.5. Nous n’inventons pas de chiffre.
- Ce n’est pas un programme pour votre ordinateur. Pas d’interface, pas de Windows natif, et sur Mac seulement un backend CPU expérimental. Il est dans cette comparaison pour marquer la limite.