Faire tourner des modèles sur son propre matériel a cessé d’être une curiosité de passionné aux alentours de 2024 pour devenir un choix d’ingénierie courant. Les contraintes de confidentialité, le coût par token, la latence et les exigences de fonctionnement hors ligne poussent les équipes vers l’inférence locale. Mais l’« IA locale » recouvre trois outils très différents: Ollama, vLLM et Docker Model Runner: et se tromper de solution fait perdre des semaines. Ce guide les compare sans détour : à quoi chacun sert, où chacun pèche, et une grille de décision applicable dès lundi.
Ce que vous aurez décidé à la fin
- Si l’inférence locale est vraiment le bon choix pour votre charge de travail
- Ollama pour les portables et le prototypage rapide
- vLLM pour le serving en production à haut débit sur GPU
- Docker Model Runner pour les modèles packagés en conteneurs au format OCI
- Comment dimensionner le matériel et éviter le piège classique de la VRAM
Info
Pourquoi faire tourner en local ?
Trois raisons honnêtes : des données qui ne peuvent légalement pas sortir de votre réseau, un coût prévisible à fort volume, et une latence faible ou nulle en mode déconnecté. Si aucune de ces raisons ne s’applique, une API hébergée est généralement moins chère et demande moins de travail. Soyez lucide sur votre situation avant d’investir dans des GPU.
Les trois outils en un coup d’œil
Ce ne sont pas vraiment des concurrents, mais plutôt des outils pour des tâches différentes. Les confondre est à l’origine de la plupart des mauvaises décisions en IA locale.
Ollama ▸ Single-machine, dev-friendly, "brew install and go"
Best for: laptops, prototypes, single-user tools
vLLM ▸ GPU inference server built for throughput & concurrency
Best for: production serving, many concurrent users
Docker Model Runner ▸ Run models as OCI artifacts in your container workflow
Best for: teams standardised on Docker/Kubernetes
| Dimension | Ollama | vLLM | Docker Model Runner |
|---|---|---|---|
| Idéal pour | Portables et prototypage | Serving à haut débit | Équipes orientées conteneurs |
| Concurrence | Faible (mono-utilisateur) | Élevée (batching continu) | Dépend du runtime |
| Effort d’installation | Minimal | Modéré (opérations GPU) | Faible si déjà sous Docker |
| Matériel | Portable / GPU unique | Vrais GPU | Partout où Docker tourne |
| API | Compatible OpenAI | Compatible OpenAI | Workflow Docker / OCI |
Ollama : le choix par défaut pour le poste développeur
Ollama est la rampe d’accès la plus simple vers les modèles locaux. Une installation, une commande, et vous disposez d’un modèle capable de dialoguer et d’un point de terminaison compatible OpenAI sur localhost. Il gère pour vous le téléchargement des modèles, les formats de quantification et la mémoire, et tourne sans problème sur la mémoire unifiée d’un MacBook ou un GPU modeste.
# Install, pull a model, and chat — three lines.
curl -fsSL https://ollama.com/install.sh | sh
ollama pull llama3.3
ollama run llama3.3
# It also serves an OpenAI-compatible API on localhost:11434
curl http://localhost:11434/v1/chat/completions \
-d '{"model":"llama3.3","messages":[{"role":"user","content":"hi"}]}'
✓ Avantages
- Installation triviale ; excellente expérience développeur
- API compatible OpenAI, donc intégration facile dans les applications
- Excellent sur Apple Silicon et les GPU uniques
- Vaste bibliothèque de modèles quantifiés prêts à l’emploi
✕ Inconvénients
- Conçu pour une seule machine, pas pour le serving à forte concurrence
- Le débit s’effondre sous de nombreuses requêtes simultanées
- Moins de contrôle sur le batching et le réglage de la mémoire GPU
- Pas ce qu’il faut derrière un point de terminaison de production très sollicité
Conseil
Utilisez Ollama pour prototyper, pas pour monter en charge
C’est l’outil parfait pour valider qu’un modèle local est assez bon pour votre tâche. Mais ne confondez pas « ça marche super sur mon portable » avec « prêt à servir un millier d’utilisateurs »: c’est le travail de vLLM.
vLLM : le débit de production
vLLM est un moteur de serving conçu pour une seule chose : tirer le maximum de tokens par seconde de vos GPU tout en gérant de nombreuses requêtes simultanées. Ses techniques phares: le batching continu et l’attention paginée (PagedAttention): lui permettent de regrouper bien plus de requêtes simultanées sur un GPU qu’un serving naïf, ce qui est exactement ce dont vous avez besoin derrière une véritable API.
pip install vllm
# Serve a model with an OpenAI-compatible endpoint, tuned for throughput.
vllm serve meta-llama/Llama-3.3-70B-Instruct \
--tensor-parallel-size 2 \
--max-model-len 8192 \
--gpu-memory-utilization 0.90
✓ Avantages
- Débit à la pointe de l’état de l’art grâce au batching continu
- Utilisation efficace de la mémoire du cache KV avec l’attention paginée
- Passage à l’échelle sur plusieurs GPU (parallélisme de tenseurs)
- Serveur compatible OpenAI s’intégrant aux clients existants
✕ Inconvénients
- Nécessite de vrais GPU: pas un outil pour portable
- Davantage de configuration et de connaissances opérationnelles requises
- Surdimensionné pour un usage mono-utilisateur ou à faible volume
- Vous gérez vous-même le dimensionnement, l’autoscaling et la supervision
débit concurrent supérieur grâce au batching continu par rapport à un serving requête par requête
Docker Model Runner : des modèles natifs conteneurs
Docker Model Runner traite les modèles comme des artefacts OCI de première classe: vous tirez et exécutez un modèle un peu comme une image de conteneur, et il s’intègre avec l’outillage Docker et les workflows Compose que votre équipe utilise déjà. Pour les organisations standardisées sur les conteneurs, cela signifie que les modèles vivent dans le même registre, le même versionnement et le même pipeline de déploiement que tout le reste, ce qui représente un vrai gain opérationnel.
# Models as OCI artifacts, managed through the Docker workflow.
docker model pull ai/llama3.3
docker model run ai/llama3.3 "Explain paged attention in one sentence."
# Wire it into Compose alongside your app services.
docker model list
✓ Avantages
- Modèles versionnés et distribués comme des images de conteneur
- S’intègre naturellement aux workflows Docker/Compose/registre existants
- Packaging cohérent du poste local à la CI jusqu’à la production
- Réduit la question opérationnelle « où vit le modèle »
✕ Inconvénients
- Le plus jeune des trois: écosystème encore en maturation
- Ne convient vraiment que si vous êtes déjà à fond sur Docker
- Les performances de serving dépendent du runtime sous-jacent
- Moins de paramètres de réglage qu’un moteur dédié comme vLLM
La grille de décision
Résumez à la question à laquelle chaque outil répond le mieux :
Prototypage ou mono-utilisateur sur un portable ?
Utilisez Ollama. Vous serez productif en quelques minutes et pourrez changer de modèle librement.
Servir de nombreux utilisateurs simultanés sur GPU ?
Utilisez vLLM. Le débit et l’efficacité mémoire sont sa raison d’être.
Standardisé sur les conteneurs et vous voulez les modèles dans le même pipeline ?
Utilisez Docker Model Runner pour que les modèles suivent le même flux de build, registre et déploiement que vos services.
Pas sûr que le local en vaille la peine ?
Prototypez avec Ollama, mesurez la qualité et le coût, et ne passez au service GPU qu’une fois qu’une API hébergée s’avère clairement être un mauvais compromis.
Dimensionner le matériel sans prise de tête
L’erreur la plus fréquente en IA locale est de sous-estimer la VRAM. En gros, un modèle a besoin d’environ son nombre de paramètres en octets multiplié par la précision, plus une marge pour le cache KV qui augmente avec la longueur du contexte et la concurrence. Un modèle quantifié (4 bits) est bien plus indulgent que la pleine précision, ce qui explique pourquoi la quantification est la norme pour le service local.
Attention
Le piège de la VRAM
Un « modèle 7B » paraît petit jusqu’à ce que l’on réalise que les poids en pleine précision, plus un cache KV à contexte long pour plusieurs utilisateurs simultanés, peuvent saturer la mémoire d’un GPU grand public. Prévoyez le cache KV, pas seulement les poids : c’est lui qui épuise votre VRAM en charge. Quantifiez et mesurez avec votre longueur de contexte et votre concurrence réelles.
Conseil de pro
Évaluez toujours avec vos prompts, longueurs de contexte et niveaux de concurrence réels, pas avec le chiffre vedette d’un fournisseur. Les tokens par seconde sur un prompt de 50 tokens ne vous disent rien du comportement du système à 6 000 tokens avec vingt utilisateurs. Mesurez la charge que vous allez réellement exécuter.
En résumé
L’IA locale en 2026 est un problème résolu à toutes les échelles : il suffit d’adapter l’outil à la tâche. Utilisez Ollama pour explorer et prototyper, vLLM pour servir à grande échelle, et Docker Model Runner pour garder les modèles dans votre flux de travail conteneurisé. Décidez honnêtement si vous avez vraiment besoin d’inférence locale, dimensionnez votre VRAM pour une charge réelle et évaluez avec votre propre trafic. Ainsi, vous obtiendrez la confidentialité, la maîtrise des coûts et la latence qui vous ont poussé vers le local au départ.
! Erreurs courantes à éviter
-
✕Dimensionner la VRAM uniquement pour les poids du modèle.
✓Prévoyez aussi le cache KV : il augmente avec la longueur du contexte et la concurrence, et c’est généralement lui qui sature le GPU.
-
✕Placer Ollama derrière une API de production très sollicitée.
✓Utilisez Ollama pour le prototypage ; servez la concurrence réelle avec vLLM, conçu pour le débit.
-
✕Se fier au chiffre vedette de tokens/seconde d’un fournisseur.
✓Évaluez avec vos prompts, longueur de contexte et concurrence réels avant d’engager du matériel.
-
✕Passer au local alors qu’une API hébergée serait moins chère et plus simple.
✓N’exécutez en local que pour la confidentialité, un coût élevé prévisible en volume, ou des besoins hors ligne/faible latence.
? Questions fréquentes
Ollama est-il assez bon pour la production ? +
Pour des outils internes mono-utilisateur ou à faible volume, oui. Pour servir de nombreux utilisateurs simultanés, son débit s’effondre : c’est pour cela que vLLM a été conçu. Utilisez Ollama pour prototyper et valider la qualité.
Qu’est-ce qui rend vLLM plus rapide qu’un service naïf ? +
Le traitement par lots continu et l’attention paginée (PagedAttention) lui permettent de regrouper bien plus de requêtes simultanées sur un GPU et d’utiliser efficacement la mémoire du cache KV, ce qui augmente considérablement le débit.
De combien de mémoire GPU ai-je besoin ? +
Environ la taille du modèle à la précision choisie (la quantification 4 bits est bien plus indulgente que la pleine précision), plus une marge pour le cache KV, qui évolue avec la longueur du contexte et le nombre d’utilisateurs simultanés. Mesurez avec votre charge réelle.
Puis-je utiliser les trois outils ensemble ? +
Oui, et beaucoup d’équipes le font : Ollama sur les postes de développement, vLLM derrière l’API de production, et Docker Model Runner pour empaqueter et versionner le modèle choisi de manière cohérente entre les deux.
Ces outils exposent-ils une API compatible OpenAI ? +
Ollama et vLLM servent tous deux des points de terminaison compatibles OpenAI, de sorte que la plupart des codes clients existants fonctionnent avec un modèle local moyennant un simple changement d’URL de base.
Succès
Mix and match
Les équipes matures utilisent souvent les trois : Ollama sur les postes de développement, vLLM derrière l’API de production, et Docker Model Runner pour empaqueter et livrer le modèle choisi de manière cohérente entre eux. Ils sont complémentaires, pas mutuellement exclusifs.
Commentaires
0Aucun commentaire pour l’instant. Soyez la première personne à donner votre avis.