参数对比
当
temperature 接近 0 时,n 只能为 1,否则将返回 invalid_request_error。模型参数配置差异
切换模型时,除了替换model 字段,还需要注意各模型对请求参数的支持范围和默认值不同:
表中”固定”表示该参数不可修改:传入其他值会报错,建议不要显式传入。
thinking
thinking 是 K2.x 专属请求参数:
kimi-k2.6:支持{"type": "enabled"}(默认)、{"type": "disabled"}、{"type": "enabled", "keep": "all"}三种配置。kimi-k2.7-code:思考默认开启,仅支持{"type": "enabled", "keep": "all"},传入其他配置会报错。从kimi-k2.6切换时,需要按 Preserved Thinking 的要求在messages中回传历史reasoning_content。
reasoning_effort
K3 始终进行推理思考且保留式思考(Preserved Thinking)始终开启。通过请求顶层 reasoning_effort 配置推理强度,支持 "low" / "high" / "max" 三档,默认 "max"。详见推理强度。
tool_choice
kimi-k3 支持 auto / none / required 三档;kimi-k2.6 与 kimi-k2.7-code 不支持 required,传入会报错。详见工具调用约束。
temperature
kimi-k2.6/kimi-k2.5:思考模式固定1.0,非思考模式固定0.6,传入其他值报错;kimi-k2.7-code:固定1.0,传入其他值报错。kimi-k3:固定1.0,传入其他值报错。
temperature。
kimi-k2.7-code-highspeed 与 kimi-k2.7-code 为同一模型、参数约束完全一致,仅输出速度不同。
常见问题
从kimi-k2.6 切换到 kimi-k3,需要改代码吗?
将 model 替换为 kimi-k3,并移除 K2.x 的 thinking 配置;如需显式设置推理强度,使用顶层 reasoning_effort。K3 的多轮对话和工具调用需要把 API 返回的完整 assistant message 原样回传到 messages,包括可能返回的 reasoning_content。
从 kimi-k2.7-code 切换到 kimi-k3,需要改代码吗?
替换 model 即可,并继续原样回传完整 assistant message;如需显式设置推理强度,使用顶层 reasoning_effort。
原来代码里用的是 OpenAI 的 reasoning_effort,切到 kimi-k3 需要改吗?
不需要。K3 支持顶层 reasoning_effort,可选值为 "low" / "high" / "max",默认 "max"。
tool_choice: "required" 在 kimi-k2.6 / kimi-k2.7-code 上能用吗?
不能。这两个模型不支持 required,传入会报错;该档位仅 kimi-k3 支持。
Kimi K2.7 Code 系列 — thinking 参数
kimi-k2.7-code 系列包含 kimi-k2.7-code 及其高速版 kimi-k2.7-code-highspeed,二者为同一模型、参数约束完全一致(含上方表格与 thinking 行为),仅输出速度不同,下文统称 kimi-k2.7-code。
kimi-k2.7-code 面向代码场景,除 thinking 外的参数约束与 kimi-k2.6 完全一致。与 kimi-k2.6 不同的是,它 始终开启思考、不可禁用(传入 {"type": "disabled"} 会报错),且 Preserved Thinking 始终开启(thinking.keep 不传或传 "all" 都按 "all" 处理,传入其他非法值会报错)。因此调用时无需传入 thinking 参数,只需切换 model 即可,模型始终输出 reasoning_content。详细用法见使用思考模式。
Kimi K2.6 — thinking 参数
Kimi K2.6 支持通过thinking 参数控制是否启用深度思考。接受 {"type": "enabled"} 或 {"type": "disabled"}。
由于 OpenAI SDK 没有原生的 thinking 参数,需要使用 extra_body 传递: