Go to file
Richard Liu 2148441fd3
[TPU] Support single and multi-host TPUs on GKE (#7613)
2024-08-30 00:27:40 -07:00
.buildkite Remove faulty Meta-Llama-3-8B-Instruct-FP8.yaml lm-eval test (#7961) 2024-08-28 19:19:17 -04:00
.github [mypy] Enable mypy type checking for `vllm/core` (#7229) 2024-08-28 07:11:14 +08:00
benchmarks Add more percentiles and latencies (#7759) 2024-08-29 16:48:11 -07:00
cmake Clean up remaining Punica C information (#7027) 2024-08-04 15:37:08 -07:00
csrc [Kernel/Model] Migrate mamba_ssm and causal_conv1d kernels to vLLM (#7651) 2024-08-28 15:06:52 -07:00
docs [MODEL] add Exaone model support (#7819) 2024-08-29 23:34:20 -07:00
examples [Neuron] Adding support for context-lenght, token-gen buckets. (#7885) 2024-08-29 13:58:14 -07:00
tests [Core] Logprobs support in Multi-step (#7652) 2024-08-29 19:19:08 -07:00
vllm [TPU] Support single and multi-host TPUs on GKE (#7613) 2024-08-30 00:27:40 -07:00
.clang-format [CI/Build] Enforce style for C++ and CUDA code with `clang-format` (#4722) 2024-05-22 07:18:41 +00:00
.dockerignore [CI/Build] Dockerfile.cpu improvements (#7298) 2024-08-08 15:24:52 -04:00
.gitignore [Kernel] (1/N) Machete - Hopper Optimized Mixed Precision Linear Kernel (#7174) 2024-08-20 07:09:33 -06:00
.readthedocs.yaml [Doc] Add missing mock import to docs `conf.py` (#6834) 2024-07-27 04:47:33 +00:00
.yapfignore [issue templates] add some issue templates (#3412) 2024-03-14 13:16:00 -07:00
CMakeLists.txt [Kernel/Model] Migrate mamba_ssm and causal_conv1d kernels to vLLM (#7651) 2024-08-28 15:06:52 -07:00
CONTRIBUTING.md [Misc] Define common requirements (#3841) 2024-04-05 00:39:17 -07:00
Dockerfile [Kernel/Model] Migrate mamba_ssm and causal_conv1d kernels to vLLM (#7651) 2024-08-28 15:06:52 -07:00
Dockerfile.cpu [Misc] Update dockerfile for CPU to cover protobuf installation (#7182) 2024-08-15 10:03:01 -07:00
Dockerfile.neuron [CI/Build] bump Dockerfile.neuron image base, use public ECR (#6832) 2024-08-12 09:53:35 -07:00
Dockerfile.openvino [OpenVINO] migrate to latest dependencies versions (#7251) 2024-08-07 09:49:10 -07:00
Dockerfile.ppc64le Support CPU inference with VSX PowerPC ISA (#5652) 2024-06-26 21:53:04 +00:00
Dockerfile.rocm [Kernel][RFC] Refactor the punica kernel based on Triton (#5036) 2024-07-31 17:12:24 -07:00
Dockerfile.tpu [TPU] Upgrade PyTorch XLA nightly (#7967) 2024-08-28 13:10:21 -07:00
Dockerfile.xpu [CI/Build] Build on Ubuntu 20.04 instead of 22.04 (#6517) 2024-07-18 17:29:25 -07:00
LICENSE Add Apache-2.0 license (#102) 2023-05-14 18:05:19 -07:00
MANIFEST.in [Core] Pipeline parallel with Ray ADAG (#6837) 2024-08-02 13:55:40 -07:00
README.md Announce NVIDIA Meetup (#7483) 2024-08-13 14:28:36 -07:00
collect_env.py [misc] add nvidia related library in collect env (#7674) 2024-08-19 23:22:49 -07:00
format.sh [mypy] Enable mypy type checking for `vllm/core` (#7229) 2024-08-28 07:11:14 +08:00
pyproject.toml [mypy] Enable mypy type checking for `vllm/core` (#7229) 2024-08-28 07:11:14 +08:00
requirements-adag.txt [Core] Pipeline parallel with Ray ADAG (#6837) 2024-08-02 13:55:40 -07:00
requirements-build.txt [Misc] Add jinja2 as an explicit build requirement (#7695) 2024-08-20 17:17:47 +00:00
requirements-common.txt [Model] Add Mistral Tokenization to improve robustness and chat encoding (#7739) 2024-08-27 12:40:02 +00:00
requirements-cpu.txt [Hardware][Intel CPU] Update torch 2.4.0 for CPU backend (#6931) 2024-08-02 08:55:58 -07:00
requirements-cuda.txt [CI/Build] build on empty device for better dev experience (#4773) 2024-08-11 13:09:44 -07:00
requirements-dev.txt Seperate dev requirements into lint and test (#5474) 2024-06-13 11:22:41 -07:00
requirements-lint.txt [Core] Support serving encoder/decoder models (#7258) 2024-08-09 10:39:41 +08:00
requirements-neuron.txt [Misc] Define common requirements (#3841) 2024-04-05 00:39:17 -07:00
requirements-openvino.txt [OpenVINO] migrate to latest dependencies versions (#7251) 2024-08-07 09:49:10 -07:00
requirements-rocm.txt [CI/Build][ROCm] Enabling tensorizer tests for ROCm (#7237) 2024-08-27 10:09:13 -07:00
requirements-test.txt [Kernel/Model] Migrate mamba_ssm and causal_conv1d kernels to vLLM (#7651) 2024-08-28 15:06:52 -07:00
requirements-tpu.txt [TPU] Support single and multi-host TPUs on GKE (#7613) 2024-08-30 00:27:40 -07:00
requirements-xpu.txt [Hardware][Intel GPU] Add Intel GPU(XPU) inference backend (#3814) 2024-06-17 11:01:25 -07:00
setup.py [Bugfix] Pass PYTHONPATH from setup.py to CMake (#7730) 2024-08-21 11:17:48 -07:00

README.md

vLLM

Easy, fast, and cheap LLM serving for everyone

| Documentation | Blog | Paper | Discord | Twitter/X |


vLLM & NVIDIA Triton User Meetup (Monday, September 9, 5pm-9pm PT) at Fort Mason, San Francisco

We are excited to announce our sixth vLLM Meetup, in collaboration with NVIDIA Triton Team. Join us to hear the vLLM's recent update about performance. Register now here and be part of the event!


Latest News 🔥

  • [2024/07] We hosted the fifth vLLM meetup with AWS! Please find the meetup slides here.
  • [2024/07] In partnership with Meta, vLLM officially supports Llama 3.1 with FP8 quantization and pipeline parallelism! Please check out our blog post here.
  • [2024/06] We hosted the fourth vLLM meetup with Cloudflare and BentoML! Please find the meetup slides here.
  • [2024/04] We hosted the third vLLM meetup with Roblox! Please find the meetup slides here.
  • [2024/01] We hosted the second vLLM meetup with IBM! Please find the meetup slides here.
  • [2023/10] We hosted the first vLLM meetup with a16z! Please find the meetup slides here.
  • [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/06] We officially released vLLM! FastChat-vLLM integration has powered LMSYS Vicuna and Chatbot Arena since mid-April. Check out our blog post.

About

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
  • Fast model execution with CUDA/HIP graph
  • Quantizations: GPTQ, AWQ, INT4, INT8, and FP8.
  • Optimized CUDA kernels, including integration with FlashAttention and FlashInfer.
  • Speculative decoding
  • Chunked prefill

Performance benchmark: We include a performance benchmark that compares the performance of vLLM against other LLM serving engines (TensorRT-LLM, text-generation-inference and lmdeploy).

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 and pipeline parallelism support for distributed inference
  • Streaming outputs
  • OpenAI-compatible API server
  • Support NVIDIA GPUs, AMD CPUs and GPUs, Intel CPUs and GPUs, PowerPC CPUs, TPU, and AWS Neuron.
  • Prefix caching support
  • Multi-lora support

vLLM seamlessly supports most popular open-source models on HuggingFace, including:

  • Transformer-like LLMs (e.g., Llama)
  • Mixture-of-Expert LLMs (e.g., Mixtral)
  • Embedding Models (e.g. E5-Mistral)
  • Multi-modal LLMs (e.g., LLaVA)

Find the full list of supported models here.

Getting Started

Install vLLM with pip or from source:

pip install vllm

Visit our documentation to learn more.

Contributing

We welcome and value any contributions and collaborations. Please check out CONTRIBUTING.md for how to get involved.

Sponsors

vLLM is a community project. Our compute resources for development and testing are supported by the following organizations. Thank you for your support!

  • a16z
  • AMD
  • Anyscale
  • AWS
  • Crusoe Cloud
  • Databricks
  • DeepInfra
  • Dropbox
  • Google Cloud
  • Lambda Lab
  • NVIDIA
  • Replicate
  • Roblox
  • RunPod
  • Sequoia Capital
  • Skywork AI
  • Trainy
  • UC Berkeley
  • UC San Diego
  • ZhenFund

We also have an official fundraising venue through OpenCollective. We plan to use the fund to support the development, maintenance, and adoption of vLLM.

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}
}