+26









Liangsheng Yin
DarkSharpness
Xiaoyu Zhang
Mick
Yuhao Yang
Cheng Wan
Ke Bao
Baizhou Zhang
Chunan Zeng
Khoa Pham
Ziyi Xu
Zijie Xia
Yuwei An
zhangxiaohao
Yangmin Li
Julien Lin
Hao Phan
Thomas Wang
RolaoDenthu
pigeonsoup
HaiShaw
Xinyuan Tong
Pranjal Shankhdhar
Lee Nau
HMING
elvischenv
Byron Hsu
Byron Hsu
Claude Opus 5
Thomas Wang
Xinyi Song
Mohammad Miadh Angkad
Cheng Wan
BBuf
Hanming Lu
Xinyi Song
abddb1c7e9
Co-authored-by: DarkSharpness <76582120+DarkSharpness@users.noreply.github.com> Co-authored-by: Xiaoyu Zhang <1182563586@qq.com> Co-authored-by: Mick <mickjagger19@icloud.com> Co-authored-by: Yuhao Yang <47235274+yhyang201@users.noreply.github.com> Co-authored-by: Cheng Wan <54331508+ch-wan@users.noreply.github.com> Co-authored-by: Ke Bao <ispobaoke@gmail.com> Co-authored-by: Baizhou Zhang <sobereddiezhang@gmail.com> Co-authored-by: Chunan Zeng <zcnrex@gmail.com> Co-authored-by: Khoa Pham <khoa.pham@radixark.ai> Co-authored-by: Ziyi Xu <ziyi.xu@radixark.ai> Co-authored-by: Zijie Xia <37504505+zijiexia@users.noreply.github.com> Co-authored-by: Yuwei An <ayw.sirius19@gmail.com> Co-authored-by: zhangxiaohao <1024393531@qq.com> Co-authored-by: Yangmin Li <yangminl@nvidia.com> Co-authored-by: Julien Lin <jullin@nvidia.com> Co-authored-by: Hao Phan <htphan@nvidia.com> Co-authored-by: Thomas Wang <1am9trash@gmail.com> Co-authored-by: RolaoDenthu <xinyisong0111@gmail.com> Co-authored-by: pigeonsoup <32922982+pigeonsoup@users.noreply.github.com> Co-authored-by: HaiShaw <hixiao@gmail.com> Co-authored-by: Xinyuan Tong <115166877+JustinTong0323@users.noreply.github.com> Co-authored-by: Pranjal Shankhdhar <pranjal.ssh@gmail.com> Co-authored-by: Lee Nau <lee.nau@gmail.com> Co-authored-by: HMING <126185151+Hearum@users.noreply.github.com> Co-authored-by: elvischenv <219235043+elvischenv@users.noreply.github.com> Co-authored-by: Byron Hsu <byronhsu1230@gmail.com> Co-authored-by: Byron Hsu <byron+per@periodiclabs.ai> Co-authored-by: Claude Opus 5 <noreply@anthropic.com> Co-authored-by: Thomas Wang <thomawan@amd.com> Co-authored-by: Xinyi Song <86638975+RolaoDenthu@users.noreply.github.com> Co-authored-by: Mohammad Miadh Angkad <176301910+mmangkad@users.noreply.github.com> Co-authored-by: Cheng Wan <cheng.wan@radixark.ai> Co-authored-by: BBuf <xiaoyu.zhang@radixark.ai> Co-authored-by: Hanming Lu <hanminglu@meta.com> Co-authored-by: Xinyi Song <xinyis10@illinois.edu>
246 lines
6.1 KiB
TOML
Executable File
246 lines
6.1 KiB
TOML
Executable File
[build-system]
|
|
requires = ["setuptools>=61.0", "setuptools-rust>=1.10", "setuptools-scm>=8.0", "wheel"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "sglang"
|
|
dynamic = ["version"]
|
|
description = "SGLang is a fast serving framework for large language models and vision language models."
|
|
readme = "README.md"
|
|
requires-python = ">=3.10"
|
|
license = { file = "LICENSE" }
|
|
classifiers = [
|
|
"Programming Language :: Python :: 3",
|
|
"License :: OSI Approved :: Apache Software License",
|
|
]
|
|
|
|
# Please keep dependency lists in this file sorted alphabetically by package name.
|
|
dependencies = [
|
|
"aiohttp",
|
|
"anthropic>=0.20.0",
|
|
"apache-tvm-ffi==0.1.11",
|
|
"av==16.1.0 ; sys_platform == 'linux' and (platform_machine == 'aarch64' or platform_machine == 'arm64' or platform_machine == 'armv7l')",
|
|
"blobfile==3.0.0",
|
|
"build",
|
|
"compressed-tensors",
|
|
"cuda-python>=13.0",
|
|
"datasets",
|
|
"decord2 ; sys_platform == 'linux' and (platform_machine == 'aarch64' or platform_machine == 'arm64' or platform_machine == 'armv7l')",
|
|
"distro",
|
|
"easydict", # Required by remote model code (e.g. DeepSeek-OCR) loaded via trust_remote_code; validated by transformers 5.4+ check_imports
|
|
"einops",
|
|
"fastapi",
|
|
"flash-attn-4>=4.0.0b18",
|
|
"flashinfer_python[cu13]==0.6.15.post1", # keep it aligned with jit-cache version in Dockerfile
|
|
"gguf",
|
|
"helion==1.4",
|
|
"humming-kernels[cu13]==0.1.10",
|
|
"interegular",
|
|
"IPython",
|
|
"kernels>=0.14.1,<0.15",
|
|
"llguidance>=1.7.6,<2.0.0",
|
|
"mistral_common>=1.11.5",
|
|
"modelscope",
|
|
"msgspec",
|
|
"ninja",
|
|
"numba==0.65.1",
|
|
"numpy",
|
|
"nvidia-cutlass-dsl[cu13]==4.6.0",
|
|
"nvidia-mathdx==25.6.0",
|
|
"nvidia-ml-py",
|
|
"openai==2.6.1",
|
|
"openai-harmony==0.0.4",
|
|
"orjson",
|
|
"outlines==0.1.11",
|
|
"packaging",
|
|
"partial_json_parser",
|
|
"pillow",
|
|
"prometheus-client>=0.20.0",
|
|
"psutil",
|
|
"py-spy",
|
|
"pybase64",
|
|
"pydantic",
|
|
"python-multipart",
|
|
"pyzmq>=25.1.2",
|
|
"quack-kernels>=0.6.1",
|
|
"requests",
|
|
"scipy",
|
|
"sentencepiece",
|
|
"setproctitle",
|
|
"sgl-deep-gemm==0.1.5.post1",
|
|
"sglang-kernel==0.4.5",
|
|
"smg-grpc-servicer>=0.5.0",
|
|
"soundfile==0.13.1",
|
|
"tiktoken",
|
|
"tilelang==0.1.11",
|
|
"timm==1.0.16",
|
|
"tokenspeed_mla==0.1.8",
|
|
"torch==2.11.0",
|
|
"torch_memory_saver>=0.0.9.post1",
|
|
"torchao==0.17.0",
|
|
"torchaudio==2.11.0",
|
|
"torchcodec==0.11.1 ; sys_platform != 'linux' or (sys_platform == 'linux' and platform_machine != 'aarch64' and platform_machine != 'arm64' and platform_machine != 'armv7l')", # torchcodec 0.11.1 for torch 2.11.x (0.10 is ABI-incompatible: references the pre-2.11 c10::MessageLogger ctor signature). Not available on Linux ARM.
|
|
"torchvision",
|
|
"tqdm",
|
|
"transformers==5.12.1",
|
|
"uvicorn",
|
|
"uvloop",
|
|
"watchfiles",
|
|
"xgrammar==0.2.1",
|
|
"xxhash",
|
|
"zstandard",
|
|
]
|
|
|
|
[[tool.uv.index]]
|
|
name = "pypi"
|
|
url = "https://pypi.org/simple"
|
|
default = true
|
|
|
|
[project.optional-dependencies]
|
|
checkpoint-engine = ["checkpoint-engine==0.1.2"]
|
|
runai = ["runai-model-streamer[s3,gcs,azure]>=0.15.7"]
|
|
diffusion = [
|
|
"addict==2.4.0",
|
|
"av==16.1.0",
|
|
"cache-dit==1.3.0",
|
|
"cloudpickle==3.1.2",
|
|
"diffusers==0.37.0",
|
|
"imageio==2.36.0",
|
|
"imageio-ffmpeg==0.5.1",
|
|
"moviepy>=2.0.0",
|
|
"msgpack",
|
|
"nvidia-modelopt",
|
|
"opencv-python-headless==4.10.0.84",
|
|
"PyYAML==6.0.1",
|
|
"remote-pdb==2.1.0",
|
|
"runai_model_streamer>=0.15.7",
|
|
"scikit-image==0.25.2",
|
|
"st_attn==0.0.7 ; platform_machine != 'aarch64' and platform_machine != 'arm64'",
|
|
"trimesh>=4.0.0",
|
|
"vsa==0.0.4 ; platform_machine != 'aarch64' and platform_machine != 'arm64'",
|
|
"websockets",
|
|
"xatlas",
|
|
]
|
|
|
|
ray = [
|
|
"ray[default]>=2.55.1",
|
|
]
|
|
|
|
tracing = [
|
|
"opentelemetry-api",
|
|
"opentelemetry-exporter-otlp",
|
|
"opentelemetry-exporter-otlp-proto-grpc",
|
|
"opentelemetry-sdk",
|
|
]
|
|
|
|
http2 = [
|
|
"granian>=2.6.0",
|
|
]
|
|
|
|
fastokens = [
|
|
"fastokens>=0.1.1,<0.2.0",
|
|
]
|
|
|
|
test = [
|
|
"accelerate",
|
|
"addict",
|
|
"auto-round>=0.13.1",
|
|
"av==16.1.0",
|
|
"bitsandbytes",
|
|
"pymupdf",
|
|
"diff-cover",
|
|
"expecttest",
|
|
"granian>=2.6.0",
|
|
"jsonlines",
|
|
"lm-eval[api]>=0.4.9.2",
|
|
"matplotlib",
|
|
# 4.9.3 is what sgl-eval's math_verify grader needs (latex2sympy2_extended
|
|
# raises ImportError on 4.7.x), so a `sglang[test]` environment is already
|
|
# compatible when sgl-eval is installed on top of it.
|
|
# Do NOT declare sgl-eval itself here: it is git-only, and PyPI rejects any
|
|
# uploaded distribution whose metadata carries a direct URL requirement.
|
|
# CUDA CI installs it in scripts/ci/cuda/ci_install_dependency.sh.
|
|
"antlr4-python3-runtime==4.9.3",
|
|
"pandas",
|
|
"parameterized",
|
|
"peft>=0.18.0",
|
|
"polars",
|
|
"pytest",
|
|
"pytest-cov",
|
|
"sentence_transformers",
|
|
"sglang[fastokens]",
|
|
"tabulate",
|
|
]
|
|
|
|
dev = ["sglang[test]"]
|
|
|
|
all = [
|
|
"sglang[diffusion]",
|
|
"sglang[http2]",
|
|
"sglang[tracing]",
|
|
]
|
|
|
|
[tool.uv.extra-build-dependencies]
|
|
st-attn = ["setuptools", "torch"]
|
|
vsa = ["setuptools", "torch"]
|
|
|
|
[project.urls]
|
|
"Homepage" = "https://github.com/sgl-project/sglang"
|
|
"Bug Tracker" = "https://github.com/sgl-project/sglang/issues"
|
|
|
|
[project.scripts]
|
|
sglang = "sglang.cli.main:main"
|
|
killall_sglang = "sglang.cli.killall:main"
|
|
|
|
[tool.setuptools.package-data]
|
|
"sglang" = [
|
|
"srt/**/*",
|
|
"kernels/**/*",
|
|
"multimodal_gen/apps/realtime_webui/**/*"
|
|
]
|
|
|
|
[tool.setuptools.exclude-package-data]
|
|
"sglang" = [
|
|
"kernels/aot/*",
|
|
"kernels/aot/**/*",
|
|
]
|
|
|
|
[tool.setuptools.packages.find]
|
|
exclude = [
|
|
"assets*",
|
|
"benchmark*",
|
|
"docs*",
|
|
"dist*",
|
|
"playground*",
|
|
"scripts*",
|
|
"sglang.kernels.aot*",
|
|
"tests*",
|
|
]
|
|
|
|
[tool.wheel]
|
|
exclude = [
|
|
"assets*",
|
|
"benchmark*",
|
|
"docs*",
|
|
"dist*",
|
|
"playground*",
|
|
"scripts*",
|
|
"sglang/kernels/aot*",
|
|
"tests*",
|
|
]
|
|
|
|
[tool.setuptools_scm]
|
|
root = ".."
|
|
version_file = "sglang/_version.py"
|
|
git_describe_command = ["python3", "python/tools/get_version_tag.py"]
|
|
# Allow editable installs even when .git metadata is not available.
|
|
fallback_version = "0.0.0.dev0"
|
|
|
|
# Rust extension modules are auto-discovered by setup.py from the cargo
|
|
# workspace in ../rust ([package.metadata.sglang] python-module in each crate).
|
|
# This CUDA pyproject builds all of them; platform variants restrict the set
|
|
# via [tool.sglang] rust-extensions (see pyproject_other.toml).
|
|
|
|
[tool.kernels.dependencies]
|
|
"kernels-community/sgl-flash-attn3" = 1
|