Open-Source Wikis

/

vLLM

/

Reference

/

Dependencies

vllm-project/vllm

Dependencies

vLLM has a layered requirements story. The platform-specific files inherit from common.txt.

requirements/
├── common.txt              # base — required everywhere
├── cuda.txt                # NVIDIA wheels
├── rocm.txt                # AMD wheels
├── cpu.txt                 # CPU-only
├── tpu.txt                 # Google TPU
├── xpu.txt                 # Intel XPU
├── kv_connectors.txt       # Optional KV transport extras (NIXL, Mooncake, LMCache, ...)
├── kv_connectors_rocm.txt  # ROCm-specific KV connector extras
├── lint.txt                # ruff, isort, codespell, ...
├── dev.txt                 # editable-install dev deps
├── docs.txt                # mkdocs and friends
├── build/                  # build-time only (cmake, ninja, ...)
└── test/                   # test runtime

Required at runtime (common.txt)

Highlights:

Package Why
transformers >= 4.56 Tokenizers, processors, configs
tokenizers >= 0.21.1 Fast incremental detokenization
pydantic >= 2.12 Request / config models
fastapi[standard] >= 0.115 API server
aiohttp, openai >= 2.0, anthropic Frontends and helper clients
xgrammar, outlines_core, lm-format-enforcer, llguidance, lark Structured-output backends
compressed-tensors Quantization
gguf GGUF format
mistral_common[image] Mistral / Pixtral tokenizer & multimodal
opencv-python-headless Video IO
pyzmq, msgspec, cbor2 Cross-process messaging
numba N-gram speculative decoding
prometheus_client, prometheus-fastapi-instrumentator Metrics
opentelemetry-* Tracing
mcp MCP server
openai-harmony Required for gpt-oss models
blake3, pybase64, regex, tqdm, cloudpickle, setproctitle Misc utilities

CUDA stack (cuda.txt)

  • torch == 2.11.0, torchvision, torchaudio
  • flashinfer-python (and the matching flashinfer-cubin)
  • apache-tvm-ffi, tilelang
  • nvidia-cudnn-frontend
  • nvidia-cutlass-dsl, quack-kernels (FA4 / CUTLASS DSL)
  • fastsafetensors

ROCm stack (rocm.txt)

  • AMD-built torch wheels
  • AITER (vllm/_aiter_ops.py ↔ AITER kernels)
  • ROCm-specific FlashAttention variants

CPU stack (cpu.txt)

  • CPU-only torch
  • IPEX bits where applicable
  • numa / AMX helpers

Optional KV connectors (kv_connectors.txt)

  • nixl-py — NIXL transport
  • mooncake-transfer-engine — Mooncake
  • lmcache — LMCache
  • (ROCm gets nixl-py-rocm)

Build-time

requirements/build/ contains cmake, ninja, and other tools needed to build the C++ / CUDA extensions in csrc/.

Plugins

Out-of-tree plugins (TPU, Gaudi, Ascend, Spyre, Apple Silicon, Rebellions, MetaX, ...) ship as separate packages. They depend on vllm itself and register through Python entry points. See the project's plugin docs for the current list.

Lint & format

pre-commit orchestrates ruff, isort, codespell, and the custom hooks (tools/check_pickle_imports.py, tools/validate_config.py, etc.). The lint requirements live in requirements/lint.txt.

Updating dependencies

  1. Edit the relevant requirements/*.txt.
  2. Regenerate any lock files (uv pip compile, project Makefile target).
  3. Bump the constraint, run pre-commit run validate-config.
  4. Confirm CI builds wheels for every active platform.

For build automation, see .buildkite/ and the per-platform Dockerfile.* files.

Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.

Dependencies – vLLM wiki | Factory