Deepseek 推理模型 (deepseek-reasoner)
API 参数
输入参数:最终回答的最大长度(不含思维链输出),默认为 4K,最大为 8K。请注意,思维链的输出最多可以达到 32K tokens,控思维链的长度的参数(reasoning_effort)将会在近期上线。
输出字段:reasoning_content:思维链内容,与 content 同级,访问方法见访问样例content:最终回答内容
上下文长度:API 最大支持 64K 上下文,输出的 reasoning_content 长度不计入 64K 上下文长度中
支持的功能:对话补全,对话前缀续写 (Beta)
不支持的功能:Function Call、Json Output、FIM 补全 (Beta)
不支持的参数:temperature、top_p、presence_penalty、frequency_penalty、logprobs、top_logprobs。请注意,为了兼容已有软件,设置 temperature、top_p、presence_penalty、frequency_penalty 参数不会报错,但也不会生效。设置 logprobs、top_logprobs 会报错。
上下文拼接
在每一轮对话过程中,模型会输出思维链内容(reasoning_content)和最终回答(content)。在下一轮对话中,之前轮输出的思维链内容不会被拼接到上下文中,如下图所示:

请注意,如果您在输入的 messages 序列中,传入了reasoning_content,API 会返回 400 错误。因此,请删除 API 响应中的 reasoning_content 字段,再发起 API 请求,方法如访问样例所示。
访问样例
下面的代码以 Python 语言为例,展示了如何访问思维链和最终回答,以及如何在多轮对话中进行上下文拼接。
非流式示例
from openai import OpenAI
client = OpenAI(api_key=“”, base_url=“https://api.deepseek.com”)
Round 1
messages = [{“role”: “user”, “content”: “9.11 and 9.8, which is greater?”}]
response = client.chat.completions.create(
model=“deepseek-reasoner”,
messages=messages
)
reasoning_content = response.choices[0].message.reasoning_content
content = response.choices[0].message.content
Round 2
messages.append({‘role’: ‘assistant’, ‘content’: content})
messages.append({‘role’: ‘user’, ‘content’: “How many Rs are there in the word ‘strawberry’?”})
response = client.chat.completions.create(
model=“deepseek-reasoner”,
messages=messages
)
…
流式示例
from openai import OpenAI
client = OpenAI(api_key=“”, base_url=“https://api.deepseek.com”)
Round 1
messages = [{“role”: “user”, “content”: “9.11 and 9.8, which is greater?”}]
response = client.chat.completions.create(
model=“deepseek-reasoner”,
messages=messages,
stream=True
)
reasoning_content = “”
content = “”
for chunk in response:
if chunk.choices[0].delta.reasoning_content:
reasoning_content += chunk.choices[0].delta.reasoning_content
else:
content += chunk.choices[0].delta.content
Round 2
messages.append({“role”: “assistant”, “content”: content})
messages.append({‘role’: ‘user’, ‘content’: “How many Rs are there in the word ‘strawberry’?”})
response = client.chat.completions.create(
model=“deepseek-reasoner”,
messages=messages,
stream=True
)
…
更多推荐



所有评论(0)