Héberger Devstral en Local
Pourquoi héberger Devstral localement ?
Devstral appartient à l’Open tier de Mistral AI : ses poids sont disponibles en open-source sous licence Apache 2.0. Cela signifie que vous pouvez le déployer sur vos propres serveurs, sans envoyer une seule ligne de votre code à une API externe.
Les raisons de l’auto-hébergement sont nombreuses :
- Confidentialité — votre code ne quitte jamais votre infrastructure
- Latence — pas de round-trip réseau vers l’API Mistral
- Coût prévisible — un coût fixe de GPU au lieu d’une facturation à l’usage
- Conformité — exigence de certaines réglementations (RGPD, secteur bancaire, défense)
- Disponibilité — aucune dépendance à un service tiers
Le modèle recommandé
Devstral Small 2 (24B-Instruct-2512) est le modèle recommandé pour l’hébergement local. Avec 24 milliards de paramètres, il offre un excellent rapport performance/ressources.
Le modèle est disponible sur Hugging Face :
mistralai/Devstral-Small-2-24B-Instruct-2512
Prérequis GPU
Le choix du matériel détermine la qualité de l’expérience :
Configuration recommandée — H100 ou A100
- GPU : NVIDIA H100 (80 Go) ou A100 (80 Go)
- Précision : FP8
- Contexte : jusqu’à ~128k tokens
- Performance : excellente, comparable à l’API Mistral
- Coût : serveur dédié ou cloud (environ 2-4 EUR/heure sur les clouds publics)
Configuration alternative — RTX 4090
- GPU : NVIDIA RTX 4090 (24 Go VRAM)
- Précision : 4-bit (quantization)
- Contexte : environ 32k tokens
- Performance : bonne pour le développement, latence légèrement plus élevée
- Coût : environ 500-700 EUR pour un PC de bureau ou 0.5-1 EUR/heure en cloud
Configuration CPU-only
- Matériel : suffisamment de RAM (64 Go+)
- Performance : lente, acceptable pour des tâches ponctuelles
- Usage : prototypage uniquement, pas pour la production
Déploiement avec vLLM
vLLM est le framework d’inférence recommandé par Mistral AI. Il offre les meilleures performances pour servir des modèles de langage.
Installation
pip install vllm
Lancer le serveur
vllm serve mistralai/Devstral-Small-2-24B-Instruct-2512 \
--tool-call-parser mistral \
--enable-auto-tool-choice \
--port 8080
Paramètres importants
# Multi-GPU (si vous avez 2+ GPU)
vllm serve mistralai/Devstral-Small-2-24B-Instruct-2512 \
--tool-call-parser mistral \
--enable-auto-tool-choice \
--tensor-parallel-size 2 \
--port 8080
# Précision réduite (pour GPU avec moins de VRAM)
vllm serve mistralai/Devstral-Small-2-24B-Instruct-2512 \
--tool-call-parser mistral \
--enable-auto-tool-choice \
--dtype float16 \
--port 8080
# Contexte réduit (pour économiser la VRAM)
vllm serve mistralai/Devstral-Small-2-24B-Instruct-2512 \
--tool-call-parser mistral \
--enable-auto-tool-choice \
--max-model-len 32768 \
--port 8080
Explication des flags
--tool-call-parser mistral— active le parsing des appels d’outils au format Mistral--enable-auto-tool-choice— permet au modèle de décider quand appeler un outil--tensor-parallel-size— répartit le modèle sur plusieurs GPU--dtype— contrôle la précision (float16, bfloat16, float32)--max-model-len— limite la taille du contexte pour économiser la VRAM
Utiliser le serveur local
Une fois vLLM lancé, le serveur expose une API compatible OpenAI sur le port 8080 :
from mistralai import Mistral
# Pointer vers le serveur local
client = Mistral(
api_key="dummy", # Pas de clé nécessaire en local
server_url="http://localhost:8080",
)
response = client.chat.complete(
model="mistralai/Devstral-Small-2-24B-Instruct-2512",
messages=[
{"role": "user", "content": "Analyse ce code et propose des améliorations."}
],
)
Vous pouvez aussi utiliser le SDK OpenAI directement :
from openai import OpenAI
client = OpenAI(
api_key="dummy",
base_url="http://localhost:8080/v1",
)
response = client.chat.completions.create(
model="mistralai/Devstral-Small-2-24B-Instruct-2512",
messages=[
{"role": "user", "content": "Explique ce code."}
],
)
Frameworks alternatifs
llama.cpp
Pour les configurations avec peu de VRAM, llama.cpp propose une quantification agressive :
# Télécharger le modèle quantifié GGUF
# Lancer le serveur
./llama-server -m devstral-small-2-Q4_K_M.gguf --port 8080
Ollama
Ollama simplifie le déploiement pour les développeurs individuels :
ollama run devstral
LM Studio
LM Studio offre une interface graphique pour télécharger et exécuter des modèles localement, sans ligne de commande.
Connecter Vibe au serveur local
Pour utiliser Devstral local avec Mistral Vibe CLI :
- Lancez le serveur vLLM (port 8080)
- Dans Vibe, tapez
/config - Sélectionnez “local” comme modèle
- Le port 8080 est utilisé par défaut
Vous bénéficiez alors de l’expérience agentique complète de Vibe, sans aucune donnée envoyée à l’extérieur.
Points clés à retenir
- Devstral Small 2 (24B) est déployable en local grâce à sa licence Apache 2.0
- vLLM est le framework recommandé pour servir le modèle
- Un H100/A100 offre la meilleure expérience ; un RTX 4090 en 4-bit est viable
- Le serveur vLLM expose une API compatible OpenAI, utilisable avec tout SDK
- Les alternatives (llama.cpp, Ollama, LM Studio) conviennent pour des usages plus légers
- Vibe CLI se connecte nativement au serveur local