index.md 4.89 KB
Newer Older
1
# Welcome to vLLM
2

3
:::{figure} ./assets/logos/vllm-logo-text-light.png
4
5
6
7
:align: center
:alt: vLLM
:class: no-scaled-link
:width: 60%
8
:::
9

10
:::{raw} html
11
12
13
14
15
16
17
18
19
20
21
<p style="text-align:center">
<strong>Easy, fast, and cheap LLM serving for everyone
</strong>
</p>

<p style="text-align:center">
<script async defer src="https://buttons.github.io/buttons.js"></script>
<a class="github-button" href="https://github.com/vllm-project/vllm" data-show-count="true" data-size="large" aria-label="Star">Star</a>
<a class="github-button" href="https://github.com/vllm-project/vllm/subscription" data-icon="octicon-eye" data-size="large" aria-label="Watch">Watch</a>
<a class="github-button" href="https://github.com/vllm-project/vllm/fork" data-icon="octicon-repo-forked" data-size="large" aria-label="Fork">Fork</a>
</p>
22
:::
23
24
25

vLLM is a fast and easy-to-use library for LLM inference and serving.

26
Originally developed in the [Sky Computing Lab](https://sky.cs.berkeley.edu) at UC Berkeley, vLLM has evolved into a community-driven project with contributions from both academia and industry.
27

28
29
30
vLLM is fast with:

- State-of-the-art serving throughput
31
- Efficient management of attention key and value memory with [**PagedAttention**](https://blog.vllm.ai/2023/06/20/vllm.html)
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
- Continuous batching of incoming requests
- Fast model execution with CUDA/HIP graph
- Quantization: [GPTQ](https://arxiv.org/abs/2210.17323), [AWQ](https://arxiv.org/abs/2306.00978), INT4, INT8, and FP8
- Optimized CUDA kernels, including integration with FlashAttention and FlashInfer.
- Speculative decoding
- Chunked prefill

vLLM is flexible and easy to use with:

- Seamless integration with popular HuggingFace models
- High-throughput serving with various decoding algorithms, including *parallel sampling*, *beam search*, and more
- Tensor parallelism and pipeline parallelism support for distributed inference
- Streaming outputs
- OpenAI-compatible API server
- Support NVIDIA GPUs, AMD CPUs and GPUs, Intel CPUs, Gaudi® accelerators and GPUs, PowerPC CPUs, TPU, and AWS Trainium and Inferentia Accelerators.
- Prefix caching support
- Multi-lora support

For more information, check out the following:

- [vLLM announcing blog post](https://vllm.ai) (intro to PagedAttention)
- [vLLM paper](https://arxiv.org/abs/2309.06180) (SOSP 2023)
- [How continuous batching enables 23x throughput in LLM inference while reducing p50 latency](https://www.anyscale.com/blog/continuous-batching-llm-inference) by Cade Daniel et al.
55
- [vLLM Meetups](#meetups)
56
57
58

## Documentation

59
60
% How to start using vLLM?

61
:::{toctree}
62
63
64
:caption: Getting Started
:maxdepth: 1

65
getting_started/installation/index
66
67
getting_started/quickstart
getting_started/examples/examples_index
68
69
getting_started/troubleshooting
getting_started/faq
70
:::
71

72
73
% What does vLLM support?

74
:::{toctree}
75
76
77
78
79
:caption: Models
:maxdepth: 1

models/generative_models
models/pooling_models
80
81
models/supported_models
models/extensions/index
82
:::
83

84
85
% Additional capabilities

86
:::{toctree}
87
:caption: Features
88
89
:maxdepth: 1

90
91
92
features/quantization/index
features/lora
features/tool_calling
93
features/reasoning_outputs
94
95
96
97
98
features/structured_outputs
features/automatic_prefix_caching
features/disagg_prefill
features/spec_decode
features/compatibility_matrix
99
:::
100

101
102
% Details about running vLLM

103
104
105
106
107
108
109
110
:::{toctree}
:caption: Training
:maxdepth: 1

training/trl.md

:::

111
:::{toctree}
112
113
114
115
116
117
118
119
120
121
122
123
:caption: Inference and Serving
:maxdepth: 1

serving/offline_inference
serving/openai_compatible_server
serving/multimodal_inputs
serving/distributed_serving
serving/metrics
serving/engine_args
serving/env_vars
serving/usage_stats
serving/integrations/index
124
:::
125

126
127
% Scaling up vLLM for production

128
:::{toctree}
129
130
131
132
133
134
135
136
:caption: Deployment
:maxdepth: 1

deployment/docker
deployment/k8s
deployment/nginx
deployment/frameworks/index
deployment/integrations/index
137
:::
138

139
140
% Making the most out of vLLM

141
:::{toctree}
142
143
144
:caption: Performance
:maxdepth: 1

145
performance/optimization
146
performance/benchmarks
147
:::
148

149
% Explanation of vLLM internals
150

151
:::{toctree}
152
:caption: Design Documents
153
154
155
156
157
158
:maxdepth: 2

design/arch_overview
design/huggingface_integration
design/plugin_system
design/kernel/paged_attention
159
design/mm_processing
160
design/automatic_prefix_caching
161
design/multiprocessing
162
:::
163

164
165
166
167
:::{toctree}
:caption: V1 Design Documents
:maxdepth: 2

168
design/v1/torch_compile
169
design/v1/prefix_caching
170
design/v1/metrics
171
172
:::

173
% How to contribute to the vLLM project
174

175
:::{toctree}
176
:caption: Developer Guide
177
178
179
180
181
:maxdepth: 2

contributing/overview
contributing/profiling/profiling_index
contributing/dockerfile/dockerfile
182
contributing/model/index
183
contributing/vulnerability_management
184
:::
185

186
187
% Technical API specifications

188
:::{toctree}
189
190
191
192
193
194
195
196
:caption: API Reference
:maxdepth: 2

api/offline_inference/index
api/engine/index
api/inference_params
api/multimodal/index
api/model/index
197
:::
198
199
200

% Latest news and acknowledgements

201
:::{toctree}
202
203
204
:caption: Community
:maxdepth: 1

205
community/blog
206
207
community/meetups
community/sponsors
208
:::
209

210
## Indices and tables
211
212
213

- {ref}`genindex`
- {ref}`modindex`