Skip to main content

A high-throughput and memory-efficient inference and serving engine for LLMs

Project description

vLLM

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vllm-0.2.4.tar.gz (156.5 kB view details)

Uploaded Source

Built Distributions

vllm-0.2.4-cp311-cp311-manylinux1_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.11

vllm-0.2.4-cp310-cp310-manylinux1_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.10

vllm-0.2.4-cp39-cp39-manylinux1_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.9

vllm-0.2.4-cp38-cp38-manylinux1_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.8

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

Hashes for vllm-0.2.4.tar.gz
Algorithm Hash digest
SHA256 1b32df7f00ebdd2a828032d1579a1b7865f853ca0149dbee60c2a40c040b21f3
MD5 2f5652a5e441e8209c7fedd4ba9c180b
BLAKE2b-256 c85fb0d5a1e03f7399cb2f5530d16da82195bde9f5b02d64c08771a06a991ab3

See more details on using hashes here.

File details

Details for the file vllm-0.2.4-cp311-cp311-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for vllm-0.2.4-cp311-cp311-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 9cb03c6600976a2a95a778388c458258e40bb73e425b69e3f34dd4e0ee1523b1
MD5 da660c4920b635ef40534b0e14adb8b8
BLAKE2b-256 42d7941fbc5eccb47d68cd97706cfb063c576aa410a756e670b8305c4a4a8fff

See more details on using hashes here.

File details

Details for the file vllm-0.2.4-cp310-cp310-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for vllm-0.2.4-cp310-cp310-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 d577fa01a06ccd6584df94096483f71e529ee3586ac0a48c688509894ec3c77e
MD5 05b2348d423a5b354c690bf325e945d0
BLAKE2b-256 1c1cb017902bb3770cd46721cfc1f455a02b5271ec23e6f643d1ae9f1868f0a4

See more details on using hashes here.

File details

Details for the file vllm-0.2.4-cp39-cp39-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for vllm-0.2.4-cp39-cp39-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 0a8732a29ef460ddfb329b648ee05b05a92e9c9ff8258649c4db947be0dadf2b
MD5 8a05e6f32d256eb9306faf87956ead45
BLAKE2b-256 8f7b5cc58cd9e1b91716f06deec1098dfad0ae3cd5f2e5da6d1c791f79635b66

See more details on using hashes here.

File details

Details for the file vllm-0.2.4-cp38-cp38-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for vllm-0.2.4-cp38-cp38-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 ccb1fb690a7c468805873229b7dbbdd7cf516eca185f3675712d99380447188e
MD5 dea4ce99a4ff08951d90c8923375148b
BLAKE2b-256 294ea141fc2679264b5b949a07ae507273674401cd7bab5b4886ddd30fc4c8a2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page