SGLang
Déployez SGLang pour la mise en service LLM haute performance avec RadixAttention sur les GPU Clore.ai
SGLang (Structured Generation Language) est un framework haute performance de service de LLM développé par l'équipe LMSYS, connue pour son travail sur Vicuna et Chatbot Arena. Il intègre RadixAttention pour le partage du cache KV, une prise en charge efficace de MoE (Mixture of Experts) et une API compatible avec OpenAI — ce qui en fait l'un des moteurs d'inférence open source les plus rapides disponibles sur les serveurs GPU de CLORE.AI.
Exigences du serveur
RAM
16 Go
32 Go+
VRAM
8 Go
24 Go+
Disque
50 Go
200 Go+
GPU
NVIDIA Turing+ (RTX 2000+)
A100, H100, RTX 4090
Déploiement rapide sur CLORE.AI
Image Docker : lmsysorg/sglang:latest
Ports : 22/tcp, 30000/http
Variables d'environnement :
HF_TOKEN
hf_xxx...
Jeton HuggingFace pour les modèles protégés
CUDA_VISIBLE_DEVICES
0,1
GPU à utiliser
Configuration étape par étape
1. Louez un serveur GPU sur CLORE.AI
Visitez la place de marché CLORE.AI et sélectionnez un serveur :
Modèles 7B: 16 Go de VRAM minimum (RTX 4080, A10)
Modèles 13B: 24 Go de VRAM (RTX 3090, RTX 4090, A5000)
Modèles 70B: 80 Go+ de VRAM (A100 80 Go) ou multi-GPU
Modèles MoE (Mixtral 8x7B): 48 Go de VRAM ou 2× 24 Go
2. Connectez-vous en SSH à votre serveur
3. Téléchargez l'image Docker de SGLang
4. Lancez le serveur SGLang
Lancement de base (Llama 3.1 8B) :
Avec un jeton HuggingFace :
Qwen2.5 72B sur multi-GPU :
DeepSeek-V2 (modèle MoE) :
5. Vérifiez l'état du serveur
6. Accédez depuis l'extérieur via le proxy CLORE.AI
Votre tableau de bord CLORE.AI fournit une http_pub URL pour le port 30000 :
Utilisez cette URL comme URL de base dans n'importe quel client compatible OpenAI.
Exemples d'utilisation
Exemple 1 : complétions de chat compatibles OpenAI
Exemple 2 : réponse en streaming
Exemple 3 : client Python OpenAI
Exemple 4 : inférence par lot avec l'API native SGLang
L'API native de SGLang offre un contrôle supplémentaire :
Exemple 5 : sortie JSON contrainte
SGLang prend en charge la génération de sorties structurées :
Configuration
Paramètres de lancement clés
--model-path
requis
ID de modèle HuggingFace ou chemin local
--host
127.0.0.1
Hôte de liaison (utiliser 0.0.0.0 pour l'externe)
--port
30000
Port du serveur
--tp
1
Degré de parallélisme tensoriel (nb de GPU)
--dp
1
Degré de parallélisme des données
--dtype
auto
float16, bfloat16, float32
--mem-fraction-static
0.88
Fraction de la VRAM pour le cache KV
--max-prefill-tokens
auto
Nombre max de jetons en une seule étape de préremplissage
--context-length
max du modèle
Remplacer la longueur maximale du contexte
--trust-remote-code
false
Autoriser le code personnalisé du modèle
--quantization
none
awq, gptq, fp8
--load-format
auto
auto, pt, safetensors
--tokenizer-path
identique au modèle
Chemin personnalisé du tokenizer
Options de quantification
AWQ (recommandé pour la vitesse) :
FP8 (pour H100/A100) :
Conseils de performance
1. RadixAttention — L'avantage clé
RadixAttention de SGLang réutilise automatiquement le cache KV pour les préfixes de prompt partagés. C'est particulièrement puissant pour :
Chatbots avec de longs prompts système
Applications RAG avec contexte répété
Appels API par lot partageant le même préfixe
Aucune configuration supplémentaire n'est nécessaire — c'est toujours activé.
2. Augmenter la taille du cache KV
Faites attention à ne pas aller trop haut — laissez de la place pour les poids du modèle.
3. Préremplissage par blocs pour les contextes longs
4. Activer le backend FlashInfer
SGLang utilise automatiquement FlashInfer lorsqu'il est disponible (GPU Ampere+) :
5. Parallélisme tensoriel multi-GPU
Pour les modèles qui ne tiennent pas sur un seul GPU :
Chaque GPU doit avoir suffisamment de VRAM pour une partition du modèle.
6. Ajuster pour le débit vs la latence
Faible latence (utilisateur unique) :
Débit élevé (nombreux utilisateurs) :
Dépannage
Problème : "torch.cuda.OutOfMemoryError"
Solution : Réduisez la fraction mémoire ou utilisez la quantification :
Problème : le serveur ne démarre pas (bloqué au chargement)
Problème : "trust_remote_code required"
Ajoutez --trust-remote-code à la commande de lancement pour les modèles avec des architectures personnalisées (DeepSeek, Falcon, etc.).
Problème : génération lente sur les modèles MoE
Les modèles MoE (Mixtral, DeepSeek) sont limités par la bande passante mémoire. Assurez-vous d'utiliser :
Problème : erreurs de longueur de contexte
Problème : le port 30000 n'est pas accessible
Vérifiez que le port est exposé dans la configuration de votre commande CLORE.AI. Consultez l'URL http_pub dans le tableau de bord de votre commande, pas localhost.
Liens
Recommandations GPU Clore.ai
Développement/Test
RTX 3090 (24 Go)
0,07–0,21 $/gpu/h
Production (7B–13B)
RTX 4090 (24 Go)
0,14–0,42 $/gpu/h
Grands modèles (70B+)
A100 80 Go / H100
~1,04 $/gpu/h
💡 Tous les exemples de ce guide peuvent être déployés sur Clore.ai des serveurs GPU. Parcourez les GPU disponibles et louez à l'heure — sans engagement, accès root complet.
Mis à jour
Ce contenu vous a-t-il été utile ?