README.md 4.83 KB
Newer Older
1
<div align="center"  id="sglangtop">
Kushal Agrawal's avatar
Kushal Agrawal committed
2
<img src="https://raw.githubusercontent.com/sgl-project/sglang/main/assets/logo.png" alt="logo" width="400" margin="10px"></img>
Lianmin Zheng's avatar
Lianmin Zheng committed
3

Yineng Zhang's avatar
Yineng Zhang committed
4
5
6
7
8
[![PyPI](https://img.shields.io/pypi/v/sglang)](https://pypi.org/project/sglang)
![PyPI - Downloads](https://img.shields.io/pypi/dm/sglang)
[![license](https://img.shields.io/github/license/sgl-project/sglang.svg)](https://github.com/sgl-project/sglang/tree/main/LICENSE)
[![issue resolution](https://img.shields.io/github/issues-closed-raw/sgl-project/sglang)](https://github.com/sgl-project/sglang/issues)
[![open issues](https://img.shields.io/github/issues-raw/sgl-project/sglang)](https://github.com/sgl-project/sglang/issues)
9
[![](https://img.shields.io/badge/Gurubase-Ask%20SGLang%20Guru%20(experimental)-006BFF)](https://gurubase.io/g/sglang)
Yineng Zhang's avatar
Yineng Zhang committed
10

Yineng Zhang's avatar
Yineng Zhang committed
11
12
</div>

Lianmin Zheng's avatar
Lianmin Zheng committed
13
14
--------------------------------------------------------------------------------

15
| [**Blog**](https://lmsys.org/blog/2024-07-25-sglang-llama3/) | [**Documentation**](https://sgl-project.github.io/) | [**Join Slack**](https://join.slack.com/t/sgl-fru7574/shared_invite/zt-2tmmp6flg-89dOlJW2TjnBrTRk1I_~GA) |
Ying Sheng's avatar
Ying Sheng committed
16
[**Join Bi-Weekly Development Meeting**](https://docs.google.com/document/d/1xEow4eIM152xNcRxqZz9VEcOiTQo8-CEuuQ5qTmkt-E/edit?usp=sharing) |
Lianmin Zheng's avatar
Lianmin Zheng committed
17

Lianmin Zheng's avatar
Lianmin Zheng committed
18
## News
Lianmin Zheng's avatar
Lianmin Zheng committed
19
20
21
- [2024/10] 🔥 The First SGLang Online Meetup ([slides](https://github.com/sgl-project/sgl-learning-materials?tab=readme-ov-file#the-first-sglang-online-meetup)).
- [2024/09] SGLang v0.3 Release: 7x Faster DeepSeek MLA, 1.5x Faster torch.compile, Multi-Image/Video LLaVA-OneVision ([blog](https://lmsys.org/blog/2024-09-04-sglang-v0-3/)).
- [2024/07] Faster Llama3 Serving with SGLang Runtime (vs. TensorRT-LLM, vLLM) ([blog](https://lmsys.org/blog/2024-07-25-sglang-llama3/)).
Ying Sheng's avatar
Ying Sheng committed
22

Ying Sheng's avatar
Ying Sheng committed
23
24
25
<details>
<summary>More</summary>

26
- [2024/02] SGLang enables **3x faster JSON decoding** with compressed finite state machine ([blog](https://lmsys.org/blog/2024-02-05-compressed-fsm/)).
27
- [2024/04] SGLang is used by the official **LLaVA-NeXT (video)** release ([blog](https://llava-vl.github.io/blog/2024-04-30-llava-next-video/)).
Ying Sheng's avatar
Ying Sheng committed
28
- [2024/01] SGLang provides up to **5x faster inference** with RadixAttention ([blog](https://lmsys.org/blog/2024-01-17-sglang/)).
Ying Sheng's avatar
Ying Sheng committed
29
30
31
32
- [2024/01] SGLang powers the serving of the official **LLaVA v1.6** release demo ([usage](https://github.com/haotian-liu/LLaVA?tab=readme-ov-file#demo)).

</details>

Ying Sheng's avatar
Ying Sheng committed
33
34
35
36
37
38
39
## About
SGLang is a fast serving framework for large language models and vision language models.
It makes your interaction with models faster and more controllable by co-designing the backend runtime and frontend language.
The core features include:

- **Fast Backend Runtime**: Provides efficient serving with RadixAttention for prefix caching, jump-forward constrained decoding, continuous batching, token attention (paged attention), tensor parallelism, FlashInfer kernels, chunked prefill, and quantization (INT4/FP8/AWQ/GPTQ).
- **Flexible Frontend Language**: Offers an intuitive interface for programming LLM applications, including chained generation calls, advanced prompting, control flow, multi-modal inputs, parallelism, and external interactions.
Chayenne's avatar
Chayenne committed
40
- **Extensive Model Support**: Supports a wide range of generative models (Llama, Gemma, Mistral, QWen, DeepSeek, LLaVA, etc.), embedding models (e5-mistral, gte) and reward models (Skywork), with easy extensibility for integrating new models.
Ying Sheng's avatar
Ying Sheng committed
41
42
- **Active Community**: SGLang is open-source and backed by an active community with industry adoption.

Chayenne's avatar
Chayenne committed
43
44
45
46
## Getting Started
Install SGLang: See [https://sgl-project.github.io/start/install.html](https://sgl-project.github.io/start/install.html)

Send requests: See [https://sgl-project.github.io/start/send_request.html](https://sgl-project.github.io/start/send_request.html)
Ying Sheng's avatar
Ying Sheng committed
47

Ying Sheng's avatar
Ying Sheng committed
48
## Backend: SGLang Runtime (SRT)
Chayenne's avatar
Chayenne committed
49
See [https://sgl-project.github.io/backend/backend.html](https://sgl-project.github.io/backend/backend.html)
Ying Sheng's avatar
Ying Sheng committed
50

Ying Sheng's avatar
Ying Sheng committed
51
## Frontend: Structured Generation Language (SGLang)
Chayenne's avatar
Chayenne committed
52
See [https://sgl-project.github.io/frontend/frontend.html](https://sgl-project.github.io/frontend/frontend.html)
Lianmin Zheng's avatar
Lianmin Zheng committed
53

Ying Sheng's avatar
Ying Sheng committed
54
## Benchmark And Performance
55
Learn more in our release blogs: [v0.2 blog](https://lmsys.org/blog/2024-07-25-sglang-llama3/), [v0.3 blog](https://lmsys.org/blog/2024-09-04-sglang-v0-3/)
Lianmin Zheng's avatar
Lianmin Zheng committed
56

Lianmin Zheng's avatar
Lianmin Zheng committed
57
## Roadmap
58
[Development Roadmap (2024 Q4)](https://github.com/sgl-project/sglang/issues/1487)
Lianmin Zheng's avatar
Lianmin Zheng committed
59
60

## Citation And Acknowledgment
Ying Sheng's avatar
Ying Sheng committed
61
62
Please cite our paper, [SGLang: Efficient Execution of Structured Language Model Programs](https://arxiv.org/abs/2312.07104), if you find the project useful.
We also learned from the design and reused code from the following projects: [Guidance](https://github.com/guidance-ai/guidance), [vLLM](https://github.com/vllm-project/vllm), [LightLLM](https://github.com/ModelTC/lightllm), [FlashInfer](https://github.com/flashinfer-ai/flashinfer), [Outlines](https://github.com/outlines-dev/outlines), and [LMQL](https://github.com/eth-sri/lmql).