服务启动参数
本页总结 SGLang-KT 中的 KT 专用参数。通用 SGLang server arguments 仍以 SGLang 文档为准。对 KTransformers 来说,关键规则是 KT 参数必须匹配模型、权重格式、CPU backend 和硬件拓扑。
常见启动形态
python -m sglang.launch_server \
--host 0.0.0.0 \
--port 30000 \
--model-path /path/to/model \
--served-model-name my-model \
--trust-remote-code \
--tensor-parallel-size 1 \
--kt-weight-path /path/to/kt-weights \
--kt-method FP8 \
--kt-cpuinfer 64 \
--kt-threadpool-count 2 \
--kt-num-gpu-experts 32
KT 参数参考
| 参数 | 作用 | 建议 |
|---|---|---|
--kt-method | 选择 KT expert backend / 权重格式 | 使用精确模型页或支持矩阵中的 method。 |
--kt-weight-path | CPU 侧 expert 权重路径 | 可能是原始权重、AMX 转换权重、原生 FP8/INT4 权重或 GGUF 权重,取决于 method。 |
--kt-cpuinfer | CPU 推理 worker 数 | 从物理核心数开始,不要按超线程数设置。 |
--kt-threadpool-count | 线程池 / NUMA 分组 | 从 NUMA node 数量开始,再调参。 |
--kt-num-gpu-experts | 常驻 GPU 的 expert 数量 | 越高通常延迟越低,但 VRAM 压力越大。 |
--kt-max-deferred-experts-per-token | Deferred expert 执行 | 需要谨慎调参,激进值可能影响质量/延迟权衡。 |
--kt-gpu-prefill-token-threshold | 原生 FP8/RAWINT4 prefill 行为切换点 | 适用于原生精度路径;优先使用模型默认值。 |
--kt-enable-dynamic-expert-update | 根据实际 routing 统计更新 GPU expert placement | 目标模型和 workload 必须重新验证。 |
--kt-expert-placement-strategy | 初始 expert placement 策略 | 没有 profiling 数据时保守使用 uniform。 |
调参顺序
- 确认
--kt-method和--kt-weight-path。 - 用
lscpu确认 CPU 特性。 --kt-cpuinfer从物理核心数开始,--kt-threadpool-count从 NUMA domain 数开始。--kt-num-gpu-experts从保守值开始。- 基线正确性稳定后,再调 prefill、deferred experts 和 dynamic update。
不要泛化
一个能跑通的命令不能自动泛化到其他模型家族。只有下面的支持 tuple 被记录后,才能写成当前支持:
模型家族 + checkpoint + KT method + CPU backend + GPU 拓扑 + 包版本