Перейти к основному содержимому

For clean Markdown content of this page, append .md to this URL. For the complete documentation index, see https://docs.nvidia.com/dynamo/llms.txt. For full content including API reference and SDK examples, see https://docs.nvidia.com/dynamo/llms-full.txt.

vLLM

Развёртывание LLM с помощью vLLM

Dynamo vLLM интегрирует движки vLLM в распределённую среду выполнения Dynamo, обеспечивая disaggregated serving, KV-aware маршрутизацию и отмену запросов при полной совместимости с нативными аргументами движка vLLM. Dynamo использует нативные события KV cache, механизмы передачи на базе NIXL и отчётность по метрикам vLLM, чтобы поддерживать KV-aware маршрутизацию и P/D disaggregation.

Installation

Установка последнего релиза

Рекомендуем использовать uv для установки:

uv venv --python 3.12 --seed
uv pip install "ai-dynamo[vllm]"

Это установит Dynamo с совместимой версией vLLM.


Контейнер

Публичные образы доступны в NGC Catalog:

docker pull nvcr.io/nvidia/ai-dynamo/vllm-runtime:<version>
./container/run.sh -it --framework VLLM --image nvcr.io/nvidia/ai-dynamo/vllm-runtime:<version>
Сборка из исходников
python container/render.py --framework vllm --output-short-filename
docker build -f container/rendered.Dockerfile -t dynamo:latest-vllm .
./container/run.sh -it --framework VLLM [--mount-workspace]

Настройка для разработки

Для разработки используйте devcontainer, в котором уже предустановлены все зависимости.

Feature Support Matrix

FeatureStatusNotes
Disaggregated ServingРазделение prefill/decode с передачей KV через NIXL
KV-Aware Routing
SLA-Based Planner
KVBM
LMCacheДля контейнеров CUDA 12.9 и arm64/aarch64 может потребоваться сборка LMCache из исходников
FlexKV
Multimodal SupportЧерез интеграцию vLLM-Omni
ObservabilityМетрики и мониторинг
WideEPПоддержка DeepEP
DP Rank RoutingГибридная балансировка нагрузки через внешний контроль DP rank
LoRAДинамическая загрузка и выгрузка из S3-совместимого хранилища
GB200 SupportКонтейнер работает в main

Quick Start

Запустите инфраструктурные сервисы для локальной разработки:

docker compose -f dev/docker-compose.yml up -d

Запустите агрегированное развёртывание обслуживания:

cd $DYNAMO_HOME/examples/backends/vllm
bash launch/agg.sh

Запуск launch-скриптов отдельно. Скрипты launch/*.sh ожидают, что etcd и NATS доступны на localhost. Сначала поднимите их (запускайте из корня репозитория или используйте указанный абсолютный путь):

docker compose -f "$DYNAMO_HOME/dev/docker-compose.yml" up -d

Затем запустите launch-скрипт. Без этого workers зарегистрируются, но frontend не сможет их обнаружить, и запросы будут зависать.

Next Steps

  • Reference Guide: Конфигурация, аргументы и эксплуатационные детали
  • Examples: Все шаблоны развёртывания со скриптами запуска
  • KV Cache Offloading: Интеграции KVBM, LMCache и FlexKV
  • Observability: Метрики и мониторинг
  • vLLM-Omni: Обслуживание мультимодальных моделей
  • Kubernetes Deployment: Руководство по развёртыванию в Kubernetes
  • vLLM Documentation: Аргументы serve из upstream vLLM