Code map: the folder tree
Code version: vLLM @ 3e44c0d · 2026-10-22
Purpose#
This page shows every folder of the repository. Click a folder name to open it at the pinned commit. Folders with a module page have a link to it.
The folder tree#
8,357 tracked files, 2,663,920 lines (text files only; counted with git ls-tree at the pinned commit).
- .agents/ 23 files · 1,941 lines Skill files for AI coding agents that work on the vLLM repository. Not part of vLLM at run time.
- .agents/skills/ 23 files · 1,941 lines
- .buildkite/ 224 files · 42,641 lines CI pipelines and scripts for Buildkite (tests on GPU machines, image builds, benchmarks).
- .buildkite/amd-disagg/ 7 files · 2,354 lines
- .buildkite/hardware_tests/ 6 files · 680 lines
- .buildkite/image_build/ 10 files · 940 lines
- .buildkite/intel_jobs/ 16 files · 1,661 lines
- .buildkite/lm-eval-harness/ 47 files · 926 lines
- .buildkite/performance-benchmarks/ 23 files · 4,730 lines
- .buildkite/scripts/ 70 files · 14,772 lines
- .buildkite/test_areas/ 36 files · 9,425 lines
- .claude/ 9 files · 9 lines Links to the agent skills in .agents/, for Claude Code. Not part of vLLM at run time.
- .claude/skills/ 9 files · 9 lines
- .github/ 43 files · 6,400 lines GitHub settings: issue templates and GitHub Actions workflows.
- .github/ISSUE_TEMPLATE/ 9 files · 452 lines
- .github/workflows/ 24 files · 4,638 lines
- benchmarks/ 141 files · 40,017 lines Stand-alone benchmark scripts, most of them for single kernels. The serving benchmark is vllm bench (vllm/benchmarks/).
- benchmarks/attention_benchmarks/ 21 files · 5,999 lines
- benchmarks/auto_tune/ 3 files · 668 lines
- benchmarks/fused_kernels/ 3 files · 786 lines
- benchmarks/kernels/ 84 files · 24,202 lines
- benchmarks/multi_turn/ 7 files · 2,967 lines
- benchmarks/replayssm/ 1 files · 268 lines
- benchmarks/structured_schemas/ 1 files · 19 lines
- cmake/ 13 files · 2,593 lines CMake helpers for the C++/CUDA build of csrc/ (out of scope).
- cmake/external_projects/ 9 files · 1,115 lines
- cmake/patches/ 1 files · 15 lines
- csrc/ 320 files · 142,997 lines C++ and CUDA kernels, compiled into vllm._C. Out of scope: the site explains only how vLLM calls them.
- csrc/attention/ 10 files · 4,317 lines
- csrc/beam/ 1 files · 472 lines
- csrc/core/ 10 files · 1,846 lines
- csrc/cpu/ 87 files · 46,353 lines
- csrc/cutlass_extensions/ 13 files · 3,721 lines
- csrc/gdn/ 1 files · 597 lines
- csrc/kimi_k3/ 4 files · 5,376 lines
- csrc/mamba/ 2 files · 1,102 lines
- csrc/moe/ 19 files · 9,705 lines
- csrc/quantization/ 99 files · 27,244 lines
- csrc/rocm/ 15 files · 13,705 lines
- docker/ 19 files · 8,314 lines Dockerfiles for each hardware type (CUDA, ROCm, CPU, ...) and container entry scripts.
- docker/entrypoints/ 2 files · 353 lines
- docs/ 360 files · 55,235 lines The user and design documentation (mkdocs). Useful, but the site cites the code for behaviour.
- docs/api/ 2 files · 86 lines
- docs/assets/ 92 files · 6,969 lines
- docs/benchmarking/ 4 files · 1,965 lines
- docs/cli/ 3 files · 285 lines
- docs/community/ 4 files · 68 lines
- docs/configuration/ 7 files · 765 lines
- docs/contributing/ 19 files · 3,455 lines
- docs/deployment/ 37 files · 3,479 lines
- docs/design/ 32 files · 8,212 lines
- docs/examples/ 1 files · 18 lines
- docs/features/ 63 files · 11,817 lines
- docs/getting_started/ 15 files · 3,056 lines
- docs/governance/ 3 files · 408 lines
- docs/mkdocs/ 17 files · 3,456 lines
- docs/models/ 17 files · 4,484 lines
- docs/serving/ 18 files · 2,667 lines
- docs/training/ 15 files · 2,295 lines
- docs/usage/ 8 files · 1,525 lines
- examples/ 272 files · 44,208 lines Runnable examples: online serving clients, offline inference, features, deployment, observability.
- examples/applications/ 7 files · 1,243 lines
- examples/basic/ 10 files · 611 lines
- examples/deployment/ 25 files · 1,538 lines
- examples/disaggregated/ 32 files · 6,639 lines
- examples/features/ 35 files · 6,541 lines
- examples/generate/ 12 files · 6,591 lines
- examples/observability/ 14 files · 5,464 lines
- examples/pooling/ 59 files · 5,950 lines
- examples/ray_serving/ 7 files · 576 lines
- examples/reasoning/ 4 files · 348 lines
- examples/rl/ 17 files · 3,494 lines
- examples/scale_out/ 3 files · 175 lines
- examples/speech_to_text/ 4 files · 625 lines
- examples/tool_calling/ 7 files · 1,247 lines
- recipes/ 188 files · 45,684 lines Deployment recipes: one YAML file per Hugging Face model with tested vllm serve settings.
- recipes/models/ 186 files · 45,640 lines
- requirements/ 28 files · 6,425 lines Python requirement files for each hardware type, for the build and for the tests.
- requirements/build/ 6 files · 75 lines
- requirements/test/ 8 files · 5,930 lines
- rust/ 537 files · 180,678 lines Experimental Rust OpenAI frontend. It talks to the Python engine core over the same ZMQ boundary. One paragraph only on this site.
- rust/.config/ 1 files · 3 lines
- rust/proto/ 7 files · 615 lines
- rust/src/ 519 files · 172,757 lines
- tests/ 2,519 files · 783,261 lines The test suite. tests/plugins/ has small example plugin packages; tests/v1/ tests the V1 engine.
- tests/basic_correctness/ 12 files · 1,497 lines
- tests/benchmarks/ 22 files · 5,315 lines
- tests/compile/ 65 files · 17,628 lines
- tests/config/ 17 files · 3,261 lines
- tests/cuda/ 5 files · 473 lines
- tests/detokenizer/ 7 files · 551 lines
- tests/device_allocator/ 1 files · 145 lines
- tests/distributed/ 64 files · 30,841 lines
- tests/engine/ 3 files · 1,128 lines
- tests/entrypoints/ 298 files · 82,004 lines
- tests/evals/ 266 files · 4,172 lines
- tests/fusion/ 2 files · 156 lines
- tests/ir/ 3 files · 906 lines
- tests/jit_monitor/ 6 files · 772 lines
- tests/kernels/ 331 files · 139,702 lines
- tests/lora/ 42 files · 12,277 lines
- tests/model_executor/ 82 files · 22,364 lines
- tests/models/ 313 files · 75,461 lines
- tests/multimodal/ 29 files · 10,866 lines
- tests/parser/ 48 files · 29,862 lines
- tests/platforms/ 1 files · 224 lines
- tests/plugins/ 26 files · 1,303 lines
- tests/plugins_tests/ 20 files · 2,244 lines
- tests/prompts/ 2 files · 9 lines
- tests/quantization/ 39 files · 18,779 lines
- tests/reasoning/ 25 files · 6,180 lines
- tests/renderers/ 33 files · 11,004 lines
- tests/rocm/ 2 files · 864 lines
- tests/samplers/ 8 files · 1,447 lines
- tests/spec_decode/ 1 files · 124 lines
- tests/standalone_tests/ 4 files · 499 lines
- tests/tokenizers_/ 28 files · 5,328 lines
- tests/tool_parsers/ 44 files · 19,116 lines
- tests/tool_use/ 19 files · 5,337 lines
- tests/tools/ 6 files · 1,467 lines
- tests/tracing/ 3 files · 231 lines
- tests/transformers_utils/ 17 files · 1,801 lines
- tests/utils_/ 23 files · 3,749 lines
- tests/v1/ 551 files · 243,341 lines
- tests/vllm_test_utils/ 4 files · 149 lines
- tests/watermarking/ 13 files · 6,885 lines
- tools/ 80 files · 16,683 lines Developer tools: pre-commit hooks, profiling helpers, recipe tuning, EP kernel install scripts.
- tools/ci/ 1 files · 370 lines
- tools/ep_kernels/ 5 files · 514 lines
- tools/gumbel_precision/ 1 files · 141 lines
- tools/pre_commit/ 21 files · 2,794 lines
- tools/profiler/ 8 files · 1,299 lines
- tools/recipes/ 19 files · 7,330 lines
- tools/vllm-rocm/ 3 files · 693 lines
- tools/vllm-tpu/ 1 files · 98 lines
- vllm/ 3,564 files · 1,281,758 lines The Python package vllm: everything that runs when you call vllm serve.
- vllm/assets/ 5 files · 282 lines Sample images, audio and video for tests and examples.
- vllm/benchmarks/ 33 files · 15,590 lines The vllm bench commands: serving, throughput and latency benchmarks.
- vllm/compilation/ 44 files · 15,998 lines torch.compile integration: the compile backend, graph splitting, fusion passes, CUDA graph wrappers.
- vllm/config/ 37 files · 16,982 lines The @config dataclasses (ModelConfig, CacheConfig, ParallelConfig, ...) that make up VllmConfig. page
- vllm/cute_utils/ 4 files · 742 lines Small helpers for CuTe DSL kernels (out of scope).
- vllm/device_allocator/ 5 files · 1,210 lines GPU memory allocators for sleep mode (cumem, xpumem) and the sleep-mode backend registry.
- vllm/distributed/ 198 files · 85,958 lines Process groups and communicators (TP, PP, DP, EP), KV transfer connectors, EPLB, elastic EP. page
- vllm/engine/ 5 files · 3,615 lines EngineArgs and the CLI flags (arg_utils.py). The other files are aliases to the V1 engine classes. page
- vllm/entrypoints/ 245 files · 46,628 lines The CLI (vllm serve, bench, ...), the OpenAI-compatible API server, other APIs and the offline LLM class. page
- vllm/inputs/ 3 files · 679 lines Types for prompts and engine inputs.
- vllm/ir/ 7 files · 876 lines vLLM IR: ops declared with register_op. Each op has implementations (providers); a priority list, with defaults from the platform, picks one.
- vllm/kernels/ 34 files · 69,802 lines Kernel code: IR op providers (vllm_c, aiter, oink, triton) and the Helion kernel integration (out of scope inside).
- vllm/logging_utils/ 7 files · 454 lines Logging helpers: log format, request-input dump, uvicorn log setup, timing.
- vllm/lora/ 45 files · 14,835 lines LoRA adapter support: LoRA layers, the adapter manager, Punica kernel wrappers, the LoRA resolver registry.
- vllm/model_executor/ 1,454 files · 469,306 lines Model code and the layers it uses: model definitions, linear and attention layers, quantization, CustomOp, model loaders. page
- vllm/models/ 562 files · 205,723 lines New per-family model packages (for example deepseek_v4/) with nvidia/ and amd/ subfolders. One paragraph only on this site.
- vllm/multimodal/ 36 files · 13,444 lines Multimodal inputs: processors, the multimodal registry, input hashing and caches.
- vllm/parser/ 45 files · 14,497 lines Unified output parsers: one Parser object does reasoning and tool-call extraction for the serving layer.
- vllm/platforms/ 8 files · 5,820 lines Platform classes (CUDA, ROCm, XPU, CPU, TPU) and current_platform with plugin detection. page
- vllm/plugins/ 8 files · 699 lines Plugin loading by entry-point group, plus endpoint, IO processor and LoRA resolver plugins. page
- vllm/profiler/ 4 files · 1,349 lines Torch and layer-wise profiler helpers.
- vllm/ray/ 3 files · 147 lines Small helpers for Ray (lazy import, environment for Ray workers).
- vllm/reasoning/ 42 files · 4,647 lines Reasoning parsers that split model output into reasoning content and the answer.
- vllm/renderers/ 26 files · 10,804 lines Renderers: turn chat messages into a prompt (chat templates) and tokens, for the API server.
- vllm/snapshot/ 6 files · 2,019 lines Create, inspect and restore snapshots of an initialized engine (vllm snapshot).
- vllm/third_party/ 23 files · 13,284 lines Vendored third-party code (FlashMLA, flash linear attention, pynvml). Out of scope.
- vllm/tilelang_utils/ 1 files · 111 lines Helpers for TileLang kernels (out of scope).
- vllm/tokenizers/ 15 files · 3,986 lines Tokenizer wrappers (Hugging Face and model-specific) and detokenizer helpers.
- vllm/tool_parsers/ 60 files · 15,428 lines Tool-call parsers, one per model family, that read tool calls from the model output.
- vllm/tracing/ 3 files · 485 lines OpenTelemetry tracing helpers.
- vllm/transformers_utils/ 92 files · 20,901 lines Helpers around Hugging Face transformers: config loading, custom configs, repo files.
- vllm/triton_utils/ 6 files · 472 lines Helpers to import and configure Triton (out of scope inside kernels).
- vllm/usage/ 2 files · 281 lines Anonymous usage statistics (usage_lib.py).
- vllm/utils/ 42 files · 11,984 lines General helpers: argparse, import, network, system and torch utilities.
- vllm/v1/ 429 files · 190,986 lines The V1 engine: AsyncLLM and EngineCore, the scheduler and KV cache manager, executors, workers and Model Runner V2. page
- vllm/vllm_flash_attn/ 3 files · 804 lines The Python interface of vLLM's FlashAttention build (out of scope inside).
How the numbers were measured#
The tool lists the tracked files with git ls-tree at the pinned commit. It counts the lines of text files. It does not count binary files.