Qu'est-ce que candle-vllm ?
candle-vllm est un moteur d'inférence et de serving LLM gratuit et open source, écrit entièrement en Rust, construit sur le framework de machine learning Candle de Hugging Face plutôt qu'en Python. Il est développé par EricLBuehler et distribué sur GitHub.
- Type de produit : un moteur de serving / serveur API que vous exécutez vous-même, pas un service hébergé ni une application de chat de bureau
- Créateur : EricLBuehler
- Framework sous-jacent : Candle, le framework de machine learning Rust-natif de Hugging Face — candle-vllm est construit dessus, ce n'est ni un fork ni un renommage de Candle lui-même
- Licence : MIT
- Financement : aucune levée de fonds, investisseur ou soutien commercial n'a été identifié pour ce test — à considérer comme un projet open source communautaire maintenu de façon indépendante
- Échelle : environ 728 étoiles GitHub, environ 90 forks, et un historique de commits récent et actif au moment de ce test
Que fait concrètement candle-vllm ?
candle-vllm charge un LLM ouvert et le sert via une API HTTP compatible OpenAI, en appliquant des optimisations de serving proches dans l'esprit du projet Python vLLM — traitement par lots continu, gestion mémoire efficace du cache d'attention et prise en charge de la quantification — implémentées nativement en Rust.
- Serveur API compatible OpenAI : écoute par défaut sur
http://localhost:2000, si bien que les clients conçus pour le format de l'API OpenAI peuvent souvent s'y connecter avec un simple changement d'URL de base - Interface web intégrée optionnelle : selon le README du projet, une interface de chat façon ChatGPT peut être lancée en parallèle de l'API, sur un port décalé par rapport au port de l'API
- Large prise en charge de familles de modèles selon le README : Qwen, Llama, Mistral, Phi3/Phi4, DeepSeek (y compris V3/R1), GLM, Yi, StableLM, Gemma, QwQ et des modèles vision-langage
- Formats de modèles pris en charge selon la documentation du projet : SafeTensors, GGUF, GPTQ, AWQ, Marlin, MXFP4 et NVFP4
- Fonctionnalités de performance décrites dans le README : Flash Attention, une option de backend FlashInfer, CUDA Graphs, traitement par lots continu et mise en cache de préfixe (réutilisation du cache KV entre requêtes)
- Fonctionnalité d'efficacité mémoire : compression du cache KV « TurboQuant », que le README décrit comme permettant une extension substantielle de la longueur de contexte via des variantes de quantification du cache sur 2 à 4 bits
- Prise en charge multi-GPU et multi-nœuds : inférence multi-GPU en parallélisme tensoriel (le mode multi-processus est recommandé selon le README) et coordination multi-nœuds basée sur TCP sans dépendance MPI
- Intégration d'outils : prise en charge documentée du Model Context Protocol (MCP) et des appels de fonction/outils compatibles OpenAI
Plateforme, tarifs et licence
Plateforme
- Ce que déclare candle-vllm:
- Un processus serveur auto-hébergé, exécuté en ligne de commande ou en tant que bibliothèque Rust. Multiplateforme : Linux (CUDA 11/12/13), macOS/Apple Silicon (Metal) et repli CPU, même base de code pour les trois.
Coût
- Ce que déclare candle-vllm:
- Gratuit et open source, sans palier payant. Vous fournissez votre propre puissance de calcul et téléchargez séparément les poids de modèles ouverts (ex. depuis Hugging Face).
Licence
- Ce que déclare candle-vllm:
- Licence MIT.
Méthode d'installation
- Ce que déclare candle-vllm:
- Selon le README du projet : un installateur shell en une ligne pour les installations DEB/binaires, une compilation depuis les sources via
cargo installavec des flags de fonctionnalités CUDA/Metal/CPU, ou une image Docker avec version CUDA/SM configurable.
Vérifiez la méthode d'installation actuellement recommandée et la compatibilité CUDA/pilote sur github.com/EricLBuehler/candle-vllm avant d'exécuter une commande, car les instructions d'installation et les versions CUDA prises en charge peuvent changer d'une version à l'autre.
Installer candle-vllm
candle-vllm s'installe gratuitement via un script shell, cargo (compilation depuis les sources) ou Docker, et son code source est sur GitHub.
Source | Link |
|---|---|
| Dépôt GitHub (code source, MIT) | github.com/EricLBuehler/candle-vllm |
| Framework Candle (framework ML sous-jacent) | github.com/huggingface/candle |
| Fiche du Local LLM Software Directory | Local LLM Software Directory |
candle-vllm nécessite un terminal ainsi qu'un binaire précompilé/une image Docker ou une chaîne d'outils Rust (via cargo) pour compiler depuis les sources — il n'y a pas d'installateur graphique, s'agissant d'un composant serveur/API plutôt que d'une application de bureau grand public.
candle-vllm vs. vLLM Python
candle-vllm n'est ni un fork ni un portage du projet Python vLLM original — c'est une implémentation Rust distincte, construite de zéro, qui suit une conception de serving similaire (traitement par lots continu, gestion efficace du cache KV) et cite le papier vLLM comme référence.
Langage/runtime
- candle-vllm:
- Rust, aucun runtime Python nécessaire pour exécuter le serveur
- vLLM Python:
- Python, nécessite un environnement Python
Framework sous-jacent
- candle-vllm:
- Hugging Face Candle (framework ML Rust)
- vLLM Python:
- PyTorch
Compatibilité API
- candle-vllm:
- API HTTP compatible OpenAI
- vLLM Python:
- API HTTP compatible OpenAI
Prise en charge des plateformes
- candle-vllm:
- CUDA, Apple Metal, CPU — même base de code
- vLLM Python:
- Principalement axé CUDA/ROCm, pas de backend Apple Metal natif
Maturité de l'écosystème
- candle-vllm:
- Communauté plus restreinte (~728 étoiles), projet plus récent
- vLLM Python:
- Vaste, largement déployé en production dans des stacks de serving LLM
Cette comparaison reflète la documentation propre à chaque projet, pas un benchmarking indépendant de PromptQuorum. Vérifiez la parité de fonctionnalités et les performances actuelles directement auprès de chaque projet avant de choisir.
À qui s'adresse candle-vllm ?
candle-vllm convient aux développeurs qui veulent un moteur de serving local compatible OpenAI sans dépendance Python, et qui valorisent le fait d'exécuter la même base de code sur CUDA et Apple Metal.
Utilisez candle-vllm si vous
- souhaitez éviter une dépendance à un runtime Python dans votre couche de serving d'inférence, pour des raisons de simplicité de déploiement ou de compilation native
- devez exécuter la même base de code de serving à la fois sur un serveur NVIDIA CUDA et sur un Mac Apple Silicon
- êtes à l'aise avec l'outillage Rust (cargo) ou des binaires/images Docker précompilés plutôt qu'un paquet Python installé via pip
- voulez un comportement de serving façon vLLM (traitement par lots continu, réutilisation du cache KV) sans adopter la stack Python vLLM complète
- avez besoin d'une large prise en charge de formats de quantification (GGUF, GPTQ, AWQ, Marlin, MXFP4, NVFP4) dans un seul moteur de serving
Regardez ailleurs si vous
- avez besoin de l'écosystème le plus vaste et le plus mature et du plus large soutien communautaire — vLLM Python compte nettement plus de déploiements en production et d'intégrations tierces
- voulez un installateur graphique sans terminal — candle-vllm est un composant serveur/API configuré en ligne de commande ou via Docker
- dépendez d'une intégration ou d'un plugin spécifique à vLLM Python sans équivalent Rust/candle-vllm
- avez besoin de chiffres de débit vérifiés indépendamment et spécifiques au matériel avant de vous engager — ce test ne présente pas les benchmarks auto-déclarés du projet comme des chiffres confirmés
Pour quoi candle-vllm n'est pas adapté
candle-vllm n'est pas un bon choix si vous avez besoin du plus vaste écosystème d'intégrations existant, d'un installateur graphique sans terminal, ou de chiffres de performance vérifiés indépendamment avant de vous engager.
- Pas l'écosystème le plus mature — vLLM Python dispose d'une communauté bien plus large, de plus d'intégrations tierces et de plus de retours en production au moment de ce test
- Pas d'installation graphique ou en un clic — c'est un composant serveur/API configuré via un script shell, une compilation cargo ou Docker
- Pas un remplacement direct pour chaque plugin ou workflow spécifique à vLLM Python — certains outils construits spécifiquement autour des mécanismes internes de vLLM Python n'ont pas d'équivalent Rust direct ici
- Pas benchmarké de façon indépendante par PromptQuorum — ce test ne confirme pas les chiffres de vitesse de décodage auto-déclarés du projet par ses propres tests pratiques
- Aucune levée de fonds ou société vérifiable pour ce test — à considérer comme un projet maintenu de façon indépendante et soutenu par la communauté
Erreurs courantes en évaluant candle-vllm
La plupart des confusions autour de candle-vllm viennent de l'hypothèse qu'il s'agit d'un portage Python-vers-Rust de vLLM, ou de l'hypothèse qu'il est écrit en Python à cause du « vllm » dans son nom.
Erreur 1 : penser que candle-vllm est un portage Rust du vLLM Python
C'est une implémentation Rust distincte, construite de zéro sur le framework Candle, qui suit une conception de serving similaire et cite le papier vLLM comme référence — elle ne réutilise ni n'encapsule le code Python de vLLM.
Erreur 2 : penser qu'il est écrit en Python
Le nom contient « vllm », mais l'intégralité du serveur est écrite en Rust sur le framework Candle de Hugging Face. Aucun runtime Python n'est requis pour l'exécuter.
Erreur 3 : traiter les chiffres de débit auto-déclarés comme vérifiés de façon indépendante
Le README du projet indique des chiffres de vitesse de décodage pour des modèles et matériels spécifiques. Ce test ne les présente pas comme des benchmarks confirmés par PromptQuorum — vérifiez les chiffres actuels sur un matériel correspondant à votre propre configuration.
Erreur 4 : confondre candle-vllm avec le framework Candle lui-même
Candle est le framework ML Rust généraliste de Hugging Face ; candle-vllm est un projet de moteur de serving distinct construit dessus, maintenu par un auteur principal différent (EricLBuehler).
Concurrents et alternatives
Parmi les moteurs d'inférence et de serving LLM locaux, candle-vllm se compare surtout à d'autres plateformes de serving auto-hébergées et compatibles OpenAI — son principal différenciateur est d'être Rust-natif plutôt que basé sur Python, avec une prise en charge native d'Apple Metal en plus de CUDA.
Tool | Le plus connu pour | Link |
|---|---|---|
| LMDeploy | Boîte à outils de serving LLM en Python de l'équipe InternLM, avec quantification et inférence à haut débit | Test de LMDeploy |
| NVIDIA Dynamo | Framework de serving d'inférence distribué pour déploiements LLM multi-nœuds à grande échelle | Test de Dynamo |
| LoRAX | Framework de serving multi-adaptateurs LoRA pour variantes fine-tunées d'un modèle de base | Test de LoRAX |
Cette liste reflète des outils couramment comparés à candle-vllm dans le segment des moteurs d'inférence/serving, pas un classement indépendant de PromptQuorum — vérifiez les fonctionnalités actuelles de chaque outil avant de choisir.
Questions fréquentes
Qu'est-ce que candle-vllm ?
candle-vllm (github.com/EricLBuehler/candle-vllm) est un moteur d'inférence et de serving LLM gratuit, open source et Rust-natif, construit sur le framework Candle de Hugging Face, avec un serveur API compatible OpenAI.
candle-vllm est-il écrit en Python ?
Non. Malgré le « vllm » dans son nom, candle-vllm est écrit entièrement en Rust sur le framework de machine learning Candle de Hugging Face. Aucun runtime Python n'est requis pour exécuter le serveur.
candle-vllm est-il le même projet que vLLM ?
Non. C'est une implémentation Rust distincte, construite de zéro, qui suit une conception de serving similaire (traitement par lots continu, gestion du cache KV) au projet Python vLLM et cite son papier, mais qui ne réutilise pas le code Python de vLLM.
candle-vllm est-il gratuit ?
Oui, il est gratuit et open source sous licence MIT, sans palier payant.
Quelles plateformes candle-vllm prend-il en charge ?
La même base de code fonctionne sur NVIDIA CUDA (11/12/13) sous Linux, sur Apple Metal sous macOS/Apple Silicon (16 Go+ de mémoire unifiée recommandés), et sur CPU en repli.
Comment installer candle-vllm ?
Selon le README du projet : un installateur shell en une ligne pour les installations DEB/binaires, une compilation depuis les sources via cargo install avec les flags CUDA/Metal/CPU appropriés, ou une image Docker.
candle-vllm prend-il en charge les modèles quantifiés ?
Oui. Il prend en charge les formats SafeTensors, GGUF, GPTQ, AWQ, Marlin, MXFP4 et NVFP4, selon la documentation du projet.
Qui a créé candle-vllm ?
Le développeur EricLBuehler a créé et maintient candle-vllm, construit sur le framework de machine learning Candle de Hugging Face.
candle-vllm a-t-il une interface web ?
Il peut optionnellement lancer une interface web intégrée façon ChatGPT en parallèle de son serveur API, sur un port décalé par rapport au port de l'API, selon le README du projet.
PromptQuorum a-t-il vérifié de façon indépendante les affirmations de performance de candle-vllm ?
Non. Ce test s'appuie sur le dépôt GitHub et le README du projet lui-même, pas sur des tests de performance pratiques réalisés par PromptQuorum.