A high-throughput and memory-efficient inference and serving engine for LLMs
Project description
Easy, fast, and cheap LLM serving for everyone
| Documentation | Blog | Paper | Discord |
Latest News 🔥
- [2023/12] Added ROCm support to vLLM.
- [2023/10] We hosted the first vLLM meetup in SF! Please find the meetup slides here.
- [2023/09] We created our Discord server! Join us to discuss vLLM and LLM serving! We will also post the latest announcements and updates there.
- [2023/09] We released our PagedAttention paper on arXiv!
- [2023/08] We would like to express our sincere gratitude to Andreessen Horowitz (a16z) for providing a generous grant to support the open-source development and research of vLLM.
- [2023/07] Added support for LLaMA-2! You can run and serve 7B/13B/70B LLaMA-2s on vLLM with a single command!
- [2023/06] Serving vLLM On any Cloud with SkyPilot. Check out a 1-click example to start the vLLM demo, and the blog post for the story behind vLLM development on the clouds.
- [2023/06] We officially released vLLM! FastChat-vLLM integration has powered LMSYS Vicuna and Chatbot Arena since mid-April. Check out our blog post.
vLLM is a fast and easy-to-use library for LLM inference and serving.
vLLM is fast with:
- State-of-the-art serving throughput
- Efficient management of attention key and value memory with PagedAttention
- Continuous batching of incoming requests
- Optimized CUDA kernels
vLLM is flexible and easy to use with:
- Seamless integration with popular Hugging Face models
- High-throughput serving with various decoding algorithms, including parallel sampling, beam search, and more
- Tensor parallelism support for distributed inference
- Streaming outputs
- OpenAI-compatible API server
- Support NVIDIA CUDA and AMD ROCm.
vLLM seamlessly supports many Hugging Face models, including the following architectures:
- Aquila & Aquila2 (
BAAI/AquilaChat2-7B
,BAAI/AquilaChat2-34B
,BAAI/Aquila-7B
,BAAI/AquilaChat-7B
, etc.) - Baichuan & Baichuan2 (
baichuan-inc/Baichuan2-13B-Chat
,baichuan-inc/Baichuan-7B
, etc.) - BLOOM (
bigscience/bloom
,bigscience/bloomz
, etc.) - ChatGLM (
THUDM/chatglm2-6b
,THUDM/chatglm3-6b
, etc.) - Falcon (
tiiuae/falcon-7b
,tiiuae/falcon-40b
,tiiuae/falcon-rw-7b
, etc.) - GPT-2 (
gpt2
,gpt2-xl
, etc.) - GPT BigCode (
bigcode/starcoder
,bigcode/gpt_bigcode-santacoder
, etc.) - GPT-J (
EleutherAI/gpt-j-6b
,nomic-ai/gpt4all-j
, etc.) - GPT-NeoX (
EleutherAI/gpt-neox-20b
,databricks/dolly-v2-12b
,stabilityai/stablelm-tuned-alpha-7b
, etc.) - InternLM (
internlm/internlm-7b
,internlm/internlm-chat-7b
, etc.) - LLaMA & LLaMA-2 (
meta-llama/Llama-2-70b-hf
,lmsys/vicuna-13b-v1.3
,young-geng/koala
,openlm-research/open_llama_13b
, etc.) - Mistral (
mistralai/Mistral-7B-v0.1
,mistralai/Mistral-7B-Instruct-v0.1
, etc.) - Mixtral (
mistralai/Mixtral-8x7B-v0.1
,mistralai/Mixtral-8x7B-Instruct-v0.1
, etc.) - MPT (
mosaicml/mpt-7b
,mosaicml/mpt-30b
, etc.) - OPT (
facebook/opt-66b
,facebook/opt-iml-max-30b
, etc.) - Phi-1.5 (
microsoft/phi-1_5
, etc.) - Qwen (
Qwen/Qwen-7B
,Qwen/Qwen-7B-Chat
, etc.) - Yi (
01-ai/Yi-6B
,01-ai/Yi-34B
, etc.)
Install vLLM with pip or from source:
pip install vllm
NOTE: The Mixtral model additionally requires megablocks
which can be installed with pip or from source on Python 3.10:
pip install megablocks
Getting Started
Visit our documentation to get started.
Contributing
We welcome and value any contributions and collaborations. Please check out CONTRIBUTING.md for how to get involved.
Citation
If you use vLLM for your research, please cite our paper:
@inproceedings{kwon2023efficient,
title={Efficient Memory Management for Large Language Model Serving with PagedAttention},
author={Woosuk Kwon and Zhuohan Li and Siyuan Zhuang and Ying Sheng and Lianmin Zheng and Cody Hao Yu and Joseph E. Gonzalez and Hao Zhang and Ion Stoica},
booktitle={Proceedings of the ACM SIGOPS 29th Symposium on Operating Systems Principles},
year={2023}
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
File details
Details for the file vllm-0.2.4.tar.gz
.
File metadata
- Download URL: vllm-0.2.4.tar.gz
- Upload date:
- Size: 156.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1b32df7f00ebdd2a828032d1579a1b7865f853ca0149dbee60c2a40c040b21f3 |
|
MD5 | 2f5652a5e441e8209c7fedd4ba9c180b |
|
BLAKE2b-256 | c85fb0d5a1e03f7399cb2f5530d16da82195bde9f5b02d64c08771a06a991ab3 |
File details
Details for the file vllm-0.2.4-cp311-cp311-manylinux1_x86_64.whl
.
File metadata
- Download URL: vllm-0.2.4-cp311-cp311-manylinux1_x86_64.whl
- Upload date:
- Size: 9.8 MB
- Tags: CPython 3.11
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9cb03c6600976a2a95a778388c458258e40bb73e425b69e3f34dd4e0ee1523b1 |
|
MD5 | da660c4920b635ef40534b0e14adb8b8 |
|
BLAKE2b-256 | 42d7941fbc5eccb47d68cd97706cfb063c576aa410a756e670b8305c4a4a8fff |
File details
Details for the file vllm-0.2.4-cp310-cp310-manylinux1_x86_64.whl
.
File metadata
- Download URL: vllm-0.2.4-cp310-cp310-manylinux1_x86_64.whl
- Upload date:
- Size: 9.8 MB
- Tags: CPython 3.10
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d577fa01a06ccd6584df94096483f71e529ee3586ac0a48c688509894ec3c77e |
|
MD5 | 05b2348d423a5b354c690bf325e945d0 |
|
BLAKE2b-256 | 1c1cb017902bb3770cd46721cfc1f455a02b5271ec23e6f643d1ae9f1868f0a4 |
File details
Details for the file vllm-0.2.4-cp39-cp39-manylinux1_x86_64.whl
.
File metadata
- Download URL: vllm-0.2.4-cp39-cp39-manylinux1_x86_64.whl
- Upload date:
- Size: 9.8 MB
- Tags: CPython 3.9
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0a8732a29ef460ddfb329b648ee05b05a92e9c9ff8258649c4db947be0dadf2b |
|
MD5 | 8a05e6f32d256eb9306faf87956ead45 |
|
BLAKE2b-256 | 8f7b5cc58cd9e1b91716f06deec1098dfad0ae3cd5f2e5da6d1c791f79635b66 |
File details
Details for the file vllm-0.2.4-cp38-cp38-manylinux1_x86_64.whl
.
File metadata
- Download URL: vllm-0.2.4-cp38-cp38-manylinux1_x86_64.whl
- Upload date:
- Size: 9.8 MB
- Tags: CPython 3.8
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ccb1fb690a7c468805873229b7dbbdd7cf516eca185f3675712d99380447188e |
|
MD5 | dea4ce99a4ff08951d90c8923375148b |
|
BLAKE2b-256 | 294ea141fc2679264b5b949a07ae507273674401cd7bab5b4886ddd30fc4c8a2 |