思考模式
ecnu-max 对话模型支持思考模式:在输出最终回答之前,模型会先生成一段思维链(reasoning_content),经过更充分的推演后再给出答案,以提升复杂问题的回答质量。
您可以自由控制思考模式的开关与强度:
- 通过
thinking参数开关思考模式; - 通过
reasoning_effort参数控制思考强度(low/high/max)。
思考强度控制当前仅适用于 ecnu-max 模型。
该能力目前已开放,具体接入方式请参考下方文档。
思考模式开关与思考强度
思考强度(
reasoning_effort)仅对ecnu-max模型生效,ecnu-plus无法使用,传入会被忽略。
| 能力 | 参数 | 说明 |
|---|---|---|
| 思考模式开关 | thinking: {"type": "enabled"} | enabled 开启思考模式,disabled 关闭思考模式 |
| 思考强度控制 | reasoning_effort: "low" | 思考强度,可选 low / high / max,仅 ecnu-max 支持 |
思考强度仅对开启了思考模式的
ecnu-max请求生效;若未开启思考模式,传入reasoning_effort不会生效。
关于默认值
ecnu-max思考模式默认关闭。需要时请显式通过thinking参数开启;- 开启思考模式后,思考强度默认逻辑与模型偏好一致。建议显式指定
reasoning_effort以获得稳定的结果; - 各档思考强度的资源消耗与耗时不同,强度越高,推理越充分但耗时与 token 消耗也越多。
开启思考模式
在请求体中传入 thinking 与 reasoning_effort 参数:
json
{
"model": "ecnu-max",
"thinking": {
"type": "enabled"
},
"reasoning_effort": "high",
"messages": [
{
"role": "user",
"content": "请帮我分析这个问题"
}
]
}响应中的思维链内容
开启思考模式后,思维链内容会通过 choices.message.reasoning_content 返回,与最终回答 content 同级:
json
{
"choices": [
{
"message": {
"role": "assistant",
"reasoning_content": "……思维链内容……",
"content": "……最终回答……"
}
}
]
}多轮对话拼接
在思考模式下做多轮对话时,需要注意 reasoning_content 的拼接规则:
- 未进行工具调用时:两个
user消息之间若模型没有调用工具,则中间assistant消息的reasoning_content无需参与上下文拼接,可在后续轮次中省略。 - 进行了工具调用时:若模型调用了工具,则中间
assistant的reasoning_content需要参与上下文拼接,在后续所有user交互轮次中必须完整回传给 API;部分模型未正确回传时可能返回 400 报错。
与 ChatECNU 的对应关系
- ChatECNU 网页端的深度思考,现同步升级为思考强度,并提供 中/高/超高 三个级别供选择;
- 对于 API 开发者而言,三个级别对应的思考强度参数如下:
| ChatECNU 级别 | reasoning_effort 参数 |
|---|---|
| 中 | low |
| 高 | high |
| 超高 | max |
注意事项
- 思考模式对部分采样参数有限制:开启思考模式时,
temperature、top_p等参数可能不生效或受限制,建议按默认处理; - 思考模式的 token 消耗更高,请结合您的 配额限制 合理使用;
- 需要查看模型当前是否支持思考模式,可参考 模型介绍 中的能力表格。