KTransformers

服务启动参数

本页总结 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-pathCPU 侧 expert 权重路径可能是原始权重、AMX 转换权重、原生 FP8/INT4 权重或 GGUF 权重,取决于 method。
--kt-cpuinferCPU 推理 worker 数从物理核心数开始,不要按超线程数设置。
--kt-threadpool-count线程池 / NUMA 分组从 NUMA node 数量开始,再调参。
--kt-num-gpu-experts常驻 GPU 的 expert 数量越高通常延迟越低,但 VRAM 压力越大。
--kt-max-deferred-experts-per-tokenDeferred 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

调参顺序

  1. 确认 --kt-method--kt-weight-path
  2. lscpu 确认 CPU 特性。
  3. --kt-cpuinfer 从物理核心数开始,--kt-threadpool-count 从 NUMA domain 数开始。
  4. --kt-num-gpu-experts 从保守值开始。
  5. 基线正确性稳定后,再调 prefill、deferred experts 和 dynamic update。

不要泛化

一个能跑通的命令不能自动泛化到其他模型家族。只有下面的支持 tuple 被记录后,才能写成当前支持:

模型家族 + checkpoint + KT method + CPU backend + GPU 拓扑 + 包版本