开始/Advanced
推理与深度思考模型
像 DeepSeek-R1 和 OpenAI o1/o3 这样的推理模型,在输出最终答案前会先进行一番“思考”并输出中间逻辑。本指南介绍如何在 Sozdai 中控制推理粒度并获取思考过程。
#1. 思考过程 (reasoning_content)
对于 DeepSeek-R1 等输出原生思考内容的模型,Sozdai 在返回的 Choice 结构中,额外增加了 `reasoning_content` 字段。 这使您可以将思考步骤与最终答案拆开,在前端页面以折叠框(Accordion)形式呈现思考过程。
json
{
"id": "chatcmpl-456",
"object": "chat.completion",
"model": "deepseek-reasoner",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "The final answer is: 42.",
"reasoning_content": "We need to calculate the meaning of life, which is a known constant..."
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 15,
"completion_tokens": 120,
"total_tokens": 135
}
}#2. 流式返回处理 (SSE Chunk)
在流式输出模式下(`stream: true`),模型会先以流的方式持续输出 `reasoning_content`。 当思考结束后,返回的 delta 会变为正常的 `content`。您的代码需要监听并累加这两类字段:
text
data: {"id":"chatcmpl-456","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"reasoning_content":"Thinking step..."}}],"model":"deepseek-reasoner"}
data: {"id":"chatcmpl-456","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":"Final answer..."}}],"model":"deepseek-reasoner"}#3. 控制推理力度 (reasoning_effort)
部分模型(如 OpenAI o3-mini 等)支持调节思考时长以控制推理精度。 您可以在请求体中加入 `reasoning_effort` 参数,可选值有:
low: 较少的推理步骤,生成速度快,费用低。medium: 默认均衡。high: 充分的深度思考,适合极其复杂的数学、逻辑、编程难题,思考 token 较多。
计费提示
思考过程中消耗的所有 reasoning tokens 均按输出 token 价格计费。在设置 high 推理力度时,由于思考长,费用可能相应上升,请合理调控。