环境变量#
SGLang 支持多种环境变量,可用于配置其运行时行为。本文档提供了全面的列表,并计划随着时间的推移保持更新。
注意:SGLang 使用两个前缀作为环境变量:SGL_ 和 SGLANG_。这可能是由于历史原因。虽然两者目前都支持不同设置,但未来版本可能会统一它们。
通用配置#
环境变量 |
描述 |
默认值 |
|---|---|---|
|
启用使用 ModelScope 的模型 |
|
|
服务器的 IP 地址 |
|
|
服务器的端口 |
自动检测 |
|
自定义日志配置路径 |
未设置 |
|
禁用请求日志记录 |
|
|
健康检查超时时间(秒) |
|
|
收集每层和 GPU 排名所选物理专家指标的时间间隔(以 pass 为单位)。0 表示禁用。 |
|
|
将未知的工具调用转发给客户端,而不是丢弃它们 |
|
性能调优#
环境变量 |
描述 |
默认值 |
|---|---|---|
|
控制是否使用 torch.inference_mode |
|
|
启用 torch.compile |
|
|
启用 CPU 亲和性设置(在 Docker 构建中通常设置为 |
|
|
允许调度器覆盖较长上下文长度的请求(在 Docker 构建中通常设置为 |
|
|
控制 FlashInfer 可用性检查 |
|
|
跳过 P2P(对等)访问检查 |
|
|
设置启用分块前缀缓存的阈值 |
|
|
在融合多头注意力中启用 RoPE 融合 |
|
|
禁用连续填充批次的重叠调度 |
|
|
禁用 Flash Attention 4 预热轮次(设置为 |
|
DeepGEMM 配置(高级优化)#
环境变量 |
描述 |
默认值 |
|---|---|---|
|
启用 DeepGEMM 内核的即时编译 |
|
|
启用 DeepGEMM 内核的预编译 |
|
|
并行 DeepGEMM 内核编译的 worker 数量 |
|
|
DeepGEMM 预编译脚本中使用的指示标志 |
|
|
缓存编译的 DeepGEMM 内核的目录 |
|
|
使用 NVRTC(而非 Triton)进行 JIT 编译(实验性) |
|
|
对批处理矩阵乘法(BMM)操作使用 DeepGEMM |
|
DeepEP 配置#
环境变量 |
描述 |
默认值 |
|---|---|---|
|
使用 Bfloat16 进行调度 |
|
|
使用 nvfp4 进行 MoE 调度 |
|
内存管理#
环境变量 |
描述 |
默认值 |
|---|---|---|
|
启用内存池调试 |
|
|
为内存规划裁剪最大新 token 估计 |
|
|
反序列化器的最大状态数 |
基于系统的默认值 |
|
禁用跨张量并行等级的内存不平衡检查 |
未设置(默认启用检查) |
模型特定选项#
环境变量 |
描述 |
默认值 |
|---|---|---|
|
使用 AITER 优化实现 |
|
|
启用 INT4 权重量化 |
|
|
启用 MoE 填充(如果值为 |
|
|
即使有其他 FP8 内核可用,也强制使用 FP8 MARLIN 内核 |
|
|
在 Blackwell GPU 上运行块状 fp8 GEMM 时使用 flashinfer 内核 |
|
|
在 Blackwell GPU 上为 |
`` |
|
在 Hopper 或 Blackwell GPU 上运行块状 fp8 GEMM 时使用 Cutlass 内核 |
|
|
在 Blackwell GPU 上使用 Cutlass FP8 MoE 内核(已弃用,使用 --moe-runner-backend=cutlass) |
|
分布式计算#
环境变量 |
描述 |
默认值 |
|---|---|---|
|
控制阻止非零等级子进程 |
|
|
指示当前进程是否是其节点上的第一等级 |
|
|
流水线并行层分区规范 |
未设置 |
|
为分布式计算设置每个进程一个可见设备 |
|
测试与调试(内部/CI)#
这些变量主要用于内部测试、持续集成或调试。
环境变量 |
描述 |
默认值 |
|---|---|---|
|
指示是否在 CI 环境中运行 |
|
|
指示是否在 AMD CI 环境中运行 |
|
|
启用撤回解码测试 |
|
|
当启用 SGLANG_TEST_RETRACT 时,如果批处理大小超过 SGLANG_TEST_RETRACT_NO_PREFILL_BS,则不执行预填充。 |
|
|
记录步骤时间以进行性能分析 |
|
|
测试请求时间统计 |
|
|
在 CI 中使用小的 KV 缓存大小 |
未设置 |
性能分析与基准测试#
环境变量 |
描述 |
默认值 |
|---|---|---|
|
PyTorch 分析器输出的目录 |
|
|
为 PyTorch 分析器设置 |
|
|
为 PyTorch 分析器设置 |
|
|
如果启用跟踪,配置 BatchSpanProcessor.schedule_delay_millis |
|
|
如果启用跟踪,配置 BatchSpanProcessor.max_export_batch_size |
|
存储与缓存#
环境变量 |
描述 |
默认值 |
|---|---|---|
|
等待权重就绪的超时时间 |
|
|
禁用 Outlines 磁盘缓存 |
|
函数调用 / 工具使用#
环境变量 |
描述 |
默认值 |
|---|---|---|
|
控制工具调用解析和验证的严格性级别。 |
|