Mistral.rs
Inférence LLM ultra-rapide écrite en Rust — serveur prêt pour la production avec prise en charge de GGUF, GGML, SafeTensors et une API compatible OpenAI.
🦀 Conçu en Rust pour des performances maximales | prise en charge des modèles GGUF et vision | licence Apache-2.0
Qu'est-ce que Mistral.rs ?
Mistral.rs est un moteur d'inférence LLM haute performance écrit entièrement en Rust. Initialement axé sur les modèles Mistral, il prend désormais en charge l'ensemble des LLM modernes. La base Rust offre :
Abstractions sans coût — aucune pause de ramasse-miettes pendant l'inférence
Sécurité mémoire — pas d'exceptions de pointeur nul ni de fuites mémoire
Performances déterministes — latence constante sans surcharge JVM/Python
Optimisations à la compilation — SIMD, threading et noyaux GPU optimisés à la compilation
Caractéristiques clés
Prise en charge de GGUF — exécutez n'importe quel modèle quantifié (Q4_K_M, Q8_0, etc.)
ISQ (quantification in situ) — quantification à la volée au chargement
PagedAttention — cache KV efficace avec batching continu
Modèles vision-langage — prise en charge de LLaVA, Phi-3 Vision, Idefics
Décodage spéculatif — inférence plus rapide avec des modèles brouillons
X-LoRA — prise en charge évolutive des adaptateurs affinés
API REST compatible avec OpenAI — remplacement prêt à l'emploi
Familles de modèles prises en charge
Llama 2/3
GGUF, SafeTensors
Rust CUDA
Mistral/Mixtral
GGUF, SafeTensors
Rust CUDA
Phi-2/3
GGUF, SafeTensors
Rust CUDA
Gemma
GGUF, SafeTensors
Rust CUDA
Qwen 2
GGUF, SafeTensors
Rust CUDA
Starcoder 2
GGUF
Rust CUDA
LLaVA 1.5/1.6
SafeTensors
Vision
Phi-3 Vision
SafeTensors
Vision
Démarrage rapide sur Clore.ai
Étape 1 : Trouver un serveur GPU
Sur clore.ai place de marché :
Minimum : 8 Go de VRAM (pour les modèles 7B Q4)
Recommandé : RTX 3090/4090 (24 Go) pour les modèles plus volumineux
CUDA 11.8+ requis
Étape 2 : déployer le conteneur Docker Mistral.rs
Mappages de ports :
22
Accès SSH
8080
Serveur API REST
Variantes d'image disponibles :
Étape 3 : se connecter et vérifier
Exécution du serveur
Démarrage rapide avec un modèle GGUF
Servir Mistral 7B (SafeTensors)
Servir avec quantification in situ (ISQ)
ISQ quantifie le modèle au chargement — aucun modèle préquantifié n'est nécessaire :
Modèle vision-langage
Décodage spéculatif
Décodage spéculatif peut offrir une accélération de 2 à 3x pour la plupart des charges de travail conversationnelles où le petit modèle brouillon prédit avec précision les jetons suivants.
Utilisation de l’API
Points de terminaison compatibles avec OpenAI
/v1/chat/completions
POST
Complétions de chat
/v1/completions
POST
Complétions de texte
/v1/models
GET
Lister les modèles
/v1/images/generations
POST
Génération d'images (VLM)
/v1/re_isq
POST
Requantifier le modèle chargé
/health
GET
Vérification de santé
Exemple Python
Réponse en streaming
Entrée vision/image
Exemples cURL
Options de configuration
Options du serveur
Référence de quantification ISQ
Q2K
2
★★☆☆☆
~2.5GB
Q3K
3
★★★☆☆
~3.5GB
Q4_0
4
★★★★☆
~4.5GB
Q4K
4
★★★★☆
~4.5GB
Q5K
5
★★★★★
~5.5GB
Q6K
6
★★★★★
~6.5GB
Q8_0
8
★★★★★
~8 Go
HQQ4
4
★★★★☆
~4.5GB
HQQ8
8
★★★★★
~8 Go
Fonctionnalités avancées
X-LoRA (mélange d'adaptateurs LoRA)
Exécute plusieurs adaptateurs affinés sélectionnés dynamiquement par jeton :
Requantifier à l'exécution
Journalisation des requêtes
Réglage des performances
Optimiser pour le débit
Optimiser pour une faible latence
Surveiller les performances
Docker Compose
Compilation à partir des sources
Si l'image Docker ne correspond pas à votre version de CUDA :
Temps de compilation : La compilation Rust est lente. Comptez 10 à 20 minutes pour une compilation complète. Utilisez sccache pour accélérer les compilations incrémentales : cargo install sccache && RUSTC_WRAPPER=sccache cargo build --release --features cuda
Dépannage
Bibliothèque CUDA introuvable
Échec du téléchargement du modèle
Le port 8080 est déjà utilisé
Mémoire insuffisante pendant la quantification
ISQ contre GGUF : ISQ quantifie au chargement en utilisant la mémoire GPU (pic temporaire). Si votre VRAM est limitée, utilisez des fichiers GGUF préquantifiés de TheBloke ou similaires — ils utilisent un pic mémoire plus faible pendant le chargement.
Recommandations GPU Clore.ai
Mistral.rs est un moteur natif Rust — sa faible surcharge signifie plus de débit par dollar de GPU qu'avec des serveurs basés sur Python.
RTX 3090
24 Go
0,07–0,21 $/h
Meilleure option économique — 7B Q4/Q8, modèles vision
~120 tok/s
RTX 4090
24 Go
0,14–0,42 $/h
Débit élevé 7B–34B, décodage spéculatif
~200 tok/s
Pourquoi la RTX 3090 excelle ici : Les noyaux Rust CUDA de Mistral.rs évitent la surcharge du GIL Python et les pauses de ramasse-miettes qui pénalisent les serveurs Python. Une RTX 3090 exécutant Mistral 7B Q4_K_M délivre environ ~120 tok/s — comparable à vLLM sur le même matériel pour une fraction du coût ($0.07–0.21/hr vs les fournisseurs cloud facturant $0.07–0.21/hr).
Décodage spéculatif : Associez un grand modèle (34B) à un petit modèle brouillon (3B) pour une accélération de 2 à 3× sans perte de qualité. La RTX 4090 est idéale pour ce schéma.
Ressources
🐙 GitHub : github.com/EricLBuehler/mistral.rs
📦 Registre de conteneurs : ghcr.io/ericlbuehler/mistral.rs
📚 Documentation : ericlbuehler.github.io/mistral.rs
💬 Discord : discord.gg/SZrecqK8qw
🤗 Modèles GGUF : huggingface.co/TheBloke
Mis à jour
Ce contenu vous a-t-il été utile ?