vLLM — высокопроизводительный движок инференса LLM

· 1 мин чтения
llm inference model-serving gpu open-source
📂 Исходный код на GitHub

Высокопроизводительный движок для inference и сервинга LLM с технологией PagedAttention. Поддерживает 200+ моделей Hugging Face, квантизацию, спекулятивный декодинг, распределённый инференс и совместим с OpenAI API.

vLLM — высокопроизводительный движок инференса LLM

vLLM — быстрая и простая в использовании библиотека для inference и сервинга больших языковых моделей. Проект разработан в Sky Computing Lab в UC Berkeley и вырос в один из самых активных open-source AI-проектов с более чем 2000 контрибьюторов.

PagedAttention — ключевая технология

Главное нововведение vLLM — алгоритм PagedAttention, который кардинально меняет подход к управлению памятью KV-кэша. Вместо выделения непрерывных блоков памяти под каждую последовательность, PagedAttention разбивает KV-кэш на фиксированные страницы (блоки), которые распределяются динамически — по аналогии с виртуальной памятью операционных систем.

Это устраняет фрагментацию памяти и позволяет одновременно обрабатывать значительно больше запросов на том же оборудовании. Пропускная способность сервинга возрастает в 2–4 раза по сравнению с HuggingFace Transformers при равных условиях.

Производительность

vLLM обеспечивает высокую пропускную способность за счёт комплекса оптимизаций:

  • Непрерывный батчинг (continuous batching) — новые запросы добавляются в обработку на лету, не дожидаясь завершения текущего батча
  • Chunked prefill — предзаполнение (обработка промпта) разбивается на части и чередуется с генерацией токенов
  • Prefix caching — кэширование общих префиксов промптов между запросами
  • CUDA/HIP graphs — выполнение модели через графы CUDA для минимальных накладных расходов

Квантизация

Поддерживается широкий спектр форматов квантизации для уменьшения потребления памяти и ускорения инференса:

Формат Описание
FP8, MXFP8 8-битные форматы с плавающей точкой
INT8, INT4 Целочисленная квантизация
GPTQ, AWQ Популярные методы постобученной квантизации
GGUF Формат для CPU-инференса
NVFP4, MXFP4 4-битные форматы нового поколения

Полный список поддерживаемых методов — в документации.

Оптимизированные ядра

vLLM интегрирует лучшие реализации ключевых вычислительных операций:

  • Attention: FlashAttention, FlashInfer, TRTLLM-GEN, FlashMLA, Triton
  • GEMM/MoE: CUTLASS, TRTLLM-GEN, CuTeDSL — оптимизированные матричные умножения и вычисления Mixture-of-Experts
  • torch.compile — автоматическая генерация ядер и оптимизация графа вычислений

Спекулятивный декодинг

vLLM поддерживает несколько методов спекулятивного декодинга для ускорения генерации:

  • n-gram — предсказание следующих токенов по n-граммам
  • Suffix — сопоставление суффиксов
  • EAGLE — отдельная draft-модель для генерации гипотез
  • DFlash — иерархический спекулятивный декодинг

Распределённый инференс

Для моделей, не помещающихся в память одного ускорителя, vLLM предлагает несколько стратегий параллелизма:

  • Tensor parallelism — разбиение слоёв модели между GPU
  • Pipeline parallelism — разбиение слоёв по этапам конвейера
  • Data parallelism — репликация модели
  • Expert parallelism — распределение экспертов MoE-моделей
  • Disaggregated prefill/decode — разделение фаз предзаполнения и генерации на разные машины

Поддержка моделей

vLLM бесшовно работает с 200+ архитектурами моделей на Hugging Face:

  • Decoder-only LLM: Llama, Qwen, Gemma, GPT-OSS
  • Mixture-of-Experts: Mixtral, DeepSeek-V3, Qwen-MoE
  • Hybrid SSM: Mamba, Qwen3.5 (гибридные модели внимания и пространства состояний)
  • Мультимодальные: LLaVA, Qwen-VL, Pixtral
  • Embedding-модели: E5-Mistral, GTE, ColBERT
  • Reward-модели: Qwen-Math

Полный список — на странице supported models.

API и интеграции

vLLM поставляется с сервером, совместимым с OpenAI API — достаточно сменить базовый URL. Также поддерживаются Anthropic Messages API и gRPC. Дополнительные возможности:

  • Структурированный вывод через xgrammar или guidance
  • Tool calling и reasoning-парсеры
  • Streaming-ответы
  • Multi-LoRA — эффективное обслуживание нескольких адаптеров LoRA одновременно

Аппаратная поддержка

Помимо NVIDIA GPU, vLLM работает на:

  • AMD GPU (через HIP)
  • x86, ARM, PowerPC CPU
  • Google TPU, Intel Gaudi, Huawei Ascend, Apple Silicon и других ускорителях

Установка

uv pip install vllm

Документация по быстрому старту — на docs.vllm.ai.

Резюме

vLLM — это зрелый проект с 84.8k звёзд на GitHub, 18.7k форков и 98 релизами. Распространяется под лицензией Apache 2.0. Основной язык реализации — Python (84%) с критическими частями на Rust, CUDA и C++. Проект активно используется более чем 8200 организациями-зависимыми и является де-факто стандартом для production-сервинга open-source LLM.

Источник: https://github.com/vllm-project/vllm