用途:SGLang 是面向大语言模型与视觉语言模型的高性能服务框架,核心创新为 RadixAttention 自动前缀缓存。需要结构化输出(JSON、正则、语法)、构建带重复前缀(系统提示、工具定义)的智能体、函数调用工作流、共享上下文的多轮对话时使用。若只需简单文本生成、不需要前缀缓存或偏好更成熟的生产系统,可考虑 vLLM;若追求单请求最低延迟且仅限 NVIDIA 部署,可考虑 TensorRT-LLM。
主要能力:RadixAttention 自动缓存并复用跨请求的公共前缀,据资料在共享系统提示的智能体负载约快 5 倍、少样本提示约快 10 倍,零配置即可生效。支持 JSON schema、正则与 EBNF 语法约束解码,JSON 解码约快 3 倍。支持工具调用、多轮对话、推测解码、多模态图像输入、批量并行请求,以及 OpenAI 兼容 API。
使用方式:可用 pip install "sglang[all]" 安装(或装 flashinfer 加速、从源码安装)。启动服务示例:python -m sglang.launch_server --model-path meta-llama/Meta-Llama-3-8B-Instruct --port 30000;多 GPU 加 --tp 4;前缀缓存默认启用。通过 Python 装饰器 @sgl.function 定义流程,使用 sgl.gen 生成并传 regex、json_schema、grammar、tools 等参数;也可用 OpenAI 客户端访问 http://localhost:30000/v1。
适用场景:结构化抽取、智能体与工具调用、多轮对话、少样本提示、视觉模型描述等。
限制:硬件支持与具体模型列表以资料为准(NVIDIA A100/H100/L4/T4 CUDA 11.8+、AMD MI300/MI250 ROCm 6.0+、Apple MPS 实验性等);量化、收费、部署规模等细节暂未提供。