最后验证:2026-10-14。本页反映 SGLang v0.5.21(2 日发布,2026 年)。参数名称和默认值可能在不同版本之间发生变化 —— 运行
python -m sglang.launch_server --help 确认你的已安装版本。RadixAttention
SGLang 的 KV 缓存不是扁平的表 —— 它是一棵以 token 序列为键的基数树。每个请求曾经处理过的所有前缀都存在于这棵树中。当新请求到达时,SGLang 遍历树以找到最长的匹配前缀,并复用其已缓存的 KV 状态,而不是重新计算。 具体来说,如果 10 个请求共享一个 2,000 token 的系统提示词,该提示词只需预填充一次。其余 9 个请求直接进入解码阶段。随着对话产生分支,每个分支获得自己的缓存节点,任意深度的共享前缀都会被独立复用。 对于前缀密集型工作负载,性能差异显著。在 50 个并发请求、80% 前缀共享的情况下,SGLang 的首 token 时间 (TTFT) 降低 37%(与 vLLM 相比)。前缀重叠越高,优势越大;每个请求都不同时,优势缩小。SGLang 的优势场景
当工作负载具有高前缀重叠特征时,选择 SGLang:- RAG 流水线 —— 相同的系统提示词和检索片段出现在多个查询中。RadixAttention 将提示词 + 文档前缀缓存一次,然后为每个问题复用。
- 多轮对话 —— 每一轮都在前一轮的上下文基础上扩展。直到最后一轮的完整对话历史都是共享前缀。
- 带有工具 schema 的 Agent 循环 —— Agent 在每次调用时发送相同的工具定义、少样本示例和编排提示词。SGLang 缓存这些前缀,仅预填充新的工具结果。
- 长共享系统提示词 —— 数十或数百用户共享大型系统提示词的任何部署(客服机器人、编码助手、文档问答)。
- 批量评估 —— 使用不同的变量替换运行相同的提示词模板。模板前缀被缓存;仅填充部分需要预填充。
vLLM 的优势场景
当工作负载优先考虑广度而非深度时,选择 vLLM:- 每个请求独特的提示词 —— 如果每个请求的提示词完全不同且没有共享前缀,RadixAttention 无可复用。vLLM 的 PagedAttention 同样高效地处理独立请求。
- 广泛的模型支持 —— vLLM 更快地添加对新模型架构的支持。如果你需要上周刚发布的模型,vLLM 可能率先支持。
- Blackwell GPU 优化 —— vLLM 拥有针对 NVIDIA Blackwell(B100/B200/GB200)硬件的专用优化路径。如果你在 Blackwell 上部署,vLLM 能提取更高的吞吐量。
- EAGLE3 推测解码 —— vLLM 的 EAGLE 集成更加成熟。如果推测解码是你主要的延迟优化手段,vLLM 是目前更稳妥的选择。
- 生产环境加固 —— vLLM 拥有更大的部署规模和更长的生产服务记录。如果稳定性和社区支持比前缀缓存更重要,vLLM 是默认选择。
配置参数
以下是python -m sglang.launch_server 的关键 SGLang 专用参数:
基于 Rust 的前缀缓存
从 v0.5.21 开始,RadixAttention 缓存后端使用 Rust 实现并默认启用。Rust 后端取代了早期的 Python 实现,在缓存查找、插入和淘汰方面开销更低。你不需要使用参数来启用它 —— 它就是默认路径。 如果遇到问题,你可以使用--disable-cuda-graph 回退到 Python 实现,并查阅 SGLang 发布说明以确认你的版本对应的确切回退参数。实际上,Rust 后端稳定且更快。
决策矩阵
示例配置
长检索上下文的 RAG 流水线
服务一个针对 RAG 优化的 70B 模型,每个请求携带相同的系统提示词和大型检索文档片段:--mem-fraction-static 0.92 为长检索上下文分配更多 GPU 内存给 KV 缓存。--chunked-prefill-size 4096 防止大型文档预填充阻塞并发解码请求。RadixAttention 处理其余部分 —— 系统提示词和文档前缀在首次请求后即被缓存。
带工具 schema 的多轮对话 Agent
服务一个在每次调用时发送相同工具定义的 Agent 模型:高吞吐批量评估
以最大吞吐量在数千个输入上运行相同的提示词模板:原生决策 API
SGLang v0.5.21 新增了原生决策 API,遵循与 Ollama 和 LM Studio 相同的模式。这让客户端可以查询可用模型、检查模型状态,并通过一致的接口管理部署 —— 如果你构建的工具需要与多个本地后端通信,这会很有用。 请查阅 SGLang 发布说明以获取确切的端点路径和请求/响应格式,因为该 API 接口较新,可能会演进。通过 Tokios 连接 SGLang
SGLang 运行后,Tokios 连接器无需开放任何入站端口即可将其暴露给远程客户端。连接器拨出到https://api.tokios.com,并将请求转发到 localhost 上 SGLang 的 OpenAI 兼容 /v1 端点。完整设置流程请参阅 SGLang 远程访问。
SGLang 远程访问
通过 Tokios 连接 SGLang,实现认证远程访问。
vLLM 远程访问
vLLM 采用相同模式 —— 并排比较两种设置。
推测解码
使用草稿模型、n-grams、MTP 和 EAGLE 加速解码。
基准测试你的部署
测量不同配置下的 TTFT、吞吐量和延迟。