pyproject.toml 3.15 KB
Newer Older
Lianmin Zheng's avatar
Lianmin Zheng committed
1
[build-system]
Yineng Zhang's avatar
Yineng Zhang committed
2
requires = ["setuptools>=61.0", "wheel"]
Lianmin Zheng's avatar
Lianmin Zheng committed
3
4
5
6
build-backend = "setuptools.build_meta"

[project]
name = "sglang"
7
version = "0.5.4"
Yineng Zhang's avatar
Yineng Zhang committed
8
description = "SGLang is a fast serving framework for large language models and vision language models."
Lianmin Zheng's avatar
Lianmin Zheng committed
9
readme = "README.md"
10
requires-python = ">=3.10"
11
license = { file = "LICENSE" }
Lianmin Zheng's avatar
Lianmin Zheng committed
12
classifiers = [
13
14
15
  "Programming Language :: Python :: 3",
  "License :: OSI Approved :: Apache Software License",
]
16

17
18
dependencies = [
  "IPython",
19
20
  "aiohttp",
  "anthropic>=0.20.0",
21
22
23
  "blobfile==3.0.0",
  "build",
  "compressed-tensors",
24
  "cuda-python",
25
  "decord2",
26
27
28
  "datasets",
  "einops",
  "fastapi",
29
  "flashinfer_python==0.4.1",
30
  "gguf",
31
32
33
34
35
36
37
  "hf_transfer",
  "huggingface_hub",
  "interegular",
  "llguidance>=0.7.11,<0.8.0",
  "modelscope",
  "msgspec",
  "ninja",
38
39
  "numpy",
  "nvidia-cutlass-dsl==4.2.1",
40
  "openai-harmony==0.0.4",
41
  "openai==1.99.1",
42
43
44
45
46
47
48
  "orjson",
  "outlines==0.1.11",
  "packaging",
  "partial_json_parser",
  "pillow",
  "prometheus-client>=0.20.0",
  "psutil",
49
  "py-spy",
50
51
  "pybase64",
  "pydantic",
52
  "nvidia-ml-py",
53
54
  "python-multipart",
  "pyzmq>=25.1.2",
55
  "requests",
56
57
  "scipy",
  "sentencepiece",
58
  "setproctitle",
59
  "sgl-kernel==0.3.16.post3",
60
61
  "soundfile==0.13.1",
  "tiktoken",
62
63
  "timm==1.0.16",
  "torch==2.8.0",
64
  "torch_memory_saver==0.0.9",
65
  "torchao==0.9.0",
66
67
68
  "torchaudio==2.8.0",
  "torchvision",
  "tqdm",
69
  "transformers==4.57.1",
70
71
  "uvicorn",
  "uvloop",
72
  "xgrammar==0.1.25",
73
  "grpcio==1.75.1", # keep it align with compile_proto.py
74
75
  "grpcio-tools==1.75.1", # keep it align with compile_proto.py
  "grpcio-reflection==1.75.1", # required by srt/entrypoints/grpc_server.py
76
  "grpcio-health-checking==1.75.1", # required for Kubernetes gRPC health probes
Lianmin Zheng's avatar
Lianmin Zheng committed
77
78
79
]

[project.optional-dependencies]
80
modelopt = ["nvidia-modelopt"]
81
82
83
test = [
  "accelerate",
  "expecttest",
84
  "gguf",
85
86
87
88
89
  "jsonlines",
  "matplotlib",
  "pandas",
  "peft",
  "pytest",
90
  "sentence_transformers",
91
  "tabulate",
92
]
93
checkpoint-engine = ["checkpoint-engine==0.1.2"]
94
95
96
97
all = []
dev = ["sglang[test]"]

# Temporary tags
98
99
100
101
102
103
104
105
106
107
cu130 = [
  "torch==2.9.0",
  "torchaudio==2.9.0",
  "torchvision==0.24.0",
]
cu130_all = [
  "sglang[test]",
  "sglang[decord]",
  "sglang[cu130]"
]
108
109
110
111
112
113
tracing = [
  "opentelemetry-api",
  "opentelemetry-exporter-otlp",
  "opentelemetry-exporter-otlp-proto-grpc",
  "opentelemetry-sdk",
]
Lianmin Zheng's avatar
Lianmin Zheng committed
114

115
116
117
# To be deprecated in 2 weeks
blackwell = ["sglang[dev]"]
blackwell_aarch64 = ["sglang[dev]"]
Lianmin Zheng's avatar
Lianmin Zheng committed
118

Lianmin Zheng's avatar
Lianmin Zheng committed
119
120
121
122
[project.urls]
"Homepage" = "https://github.com/sgl-project/sglang"
"Bug Tracker" = "https://github.com/sgl-project/sglang/issues"

yudian0504's avatar
yudian0504 committed
123
[tool.setuptools.package-data]
124
"sglang" = [
125
126
127
  "srt/layers/moe/fused_moe_triton/configs/*/*.json",
  "srt/layers/quantization/configs/*.json",
  "srt/mem_cache/storage/hf3fs/hf3fs_utils.cpp",
128
129
  "srt/speculative/cpp_ngram/*.cpp",
  "srt/speculative/cpp_ngram/*.h",
130
]
yudian0504's avatar
yudian0504 committed
131

Lianmin Zheng's avatar
Lianmin Zheng committed
132
[tool.setuptools.packages.find]
133
exclude = [
134
135
136
137
138
139
140
  "assets*",
  "benchmark*",
  "docs*",
  "dist*",
  "playground*",
  "scripts*",
  "tests*",
141
]
Lianmin Zheng's avatar
Lianmin Zheng committed
142
143

[tool.wheel]
144
exclude = [
145
146
147
148
149
150
151
  "assets*",
  "benchmark*",
  "docs*",
  "dist*",
  "playground*",
  "scripts*",
  "tests*",
152
]
153
154
155
156

[tool.codespell]
ignore-words-list = "ans, als, hel, boostrap, childs, te, vas, hsa, ment"
skip = "*.json,*.jsonl,*.patch,*.txt"