vLLM (Kwon et al., UC Berkeley, 2023) a introduit PagedAttention dans le serving de LLM. Au-delà de PagedAttention, vLLM implémente : le batching continu (ajout de nouvelles requêtes aux lots en cours sans attendre), le prefix caching (partage du KV cache pour les préfixes de prompt communs), le parallélisme de tenseurs (répartition des modèles sur plusieurs GPU), et le décodage spéculatif (utilisation d'un modèle brouillon pour accélérer la génération). Ces optimisations se composent, délivrant des accélérations multiplicatives.
Déployer un modèle avec vLLM est simple : vllm serve meta-llama/Llama-3-70B --tensor-parallel-size 4 démarre un serveur compatible OpenAI sur 4 GPU. Les applications se connectent en utilisant n'importe quel SDK OpenAI en changeant l'URL de base. Cette compatibilité drop-in signifie que tu peux prototyper avec l'API d'OpenAI et passer à un vLLM auto-hébergé sans changer le code de l'application — il suffit de changer l'endpoint.
TGI (Hugging Face) offre des fonctionnalités similaires avec une intégration plus étroite à l'écosystème Hugging Face. TensorRT-LLM (NVIDIA) utilise des kernels CUDA personnalisés pour une performance maximale sur un seul GPU mais nécessite du matériel NVIDIA. SGLang (Berkeley) se concentre sur la génération structurée et les patterns de prompting complexes. Pour la plupart des scénarios d'auto-hébergement, vLLM est le choix par défaut grâce à sa performance, son large support de modèles et sa communauté active. Pour un débit maximal sur du matériel NVIDIA spécifiquement, TensorRT-LLM peut le devancer.