站长注:详细解析 Deepseek Reasoner API 的思考过程输出机制,包括如何控制和自定义输出形式,以及在 API易 平台上的最佳实践。
很多开发者在使用 Deepseek Reasoner API 时都有一个疑问:模型是否一定会输出思考过程?答案是否定的。本文将详细介绍如何根据实际需求来控制 Deepseek Reasoner 的思考过程输出。
欢迎免费试用 API易,3 分钟跑通 API 调用 www.apiyi.com
支持 Deepseek 全系列模型,让开发更简单
注册即送 1.1 美金额度起,约 300万 Tokens的 deepseek-chat 额度体验。立即免费注册 www.apiyi.com
Deepseek Reasoner 思考过程机制
模型版本与思考过程差异
Deepseek 的思考过程输出有两种形式,这取决于您使用的模型版本:
- 官方 API 版本
- 模型名称:
deepseek-reasoner
- 思考过程字段:
reasoning_content
- 直接通过 API 响应字段获取思考过程
- 模型名称:
- 开源部署版本
- 模型名称:
deepseek-r1
- 思考过程格式:使用
<think>思考内容</think>
标签 - 输出在模型回复的文本内容中
- 模型名称:
API易 平台完整支持这两个版本,您可以根据需求选择使用。如果您使用开源版本想要去除思考过程,可以通过前端程序过滤 <think>
标签及其内容。
第三方客户端支持
目前已经有多个优秀的客户端产品支持展示 Deepseek 的思考过程:
- Chatbox
- 支持
<think>
标签解析 - 可以优雅展示思考过程
- 提供显示/隐藏控制选项
- 支持
- Cherry Studio
- 内置思考过程展示功能
- 支持多种展示样式
- 用户体验优化
- 其他支持产品
- 越来越多的 AI 客户端开始支持
- 提供更丰富的展示方式
- 持续优化用户体验
原生思考过程字段
Deepseek Reasoner 的 API 响应中包含一个特殊的字段 reasoning_content
,用于展示模型的思考过程。一个典型的响应如下:
{
"choices": [
{
"message": {
"role": "assistant",
"content": "最终答案",
"reasoning_content": "这里是模型的思考过程..."
}
}
],
"usage": {
"completion_tokens_details": {
"reasoning_tokens": 90
}
}
}
最佳实践
- 选择合适的模型版本
- 使用官方 API 版本(deepseek-reasoner):直接处理
reasoning_content
字段 - 使用开源版本(deepseek-r1):解析
<think>
标签内容
- 使用官方 API 版本(deepseek-reasoner):直接处理
- 前端处理建议
// 去除思考过程的示例代码 function removeThinkingProcess(response) { return response.replace(/<think>[\s\S]*?<\/think>/g, ''); } // 提取思考过程的示例代码 function extractThinkingProcess(response) { const match = response.match(/<think>([\s\S]*?)<\/think>/); return match ? match.trim() : null; }
- 展示控制
- 提供用户控制选项
- 可配置的展示样式
- 灵活的切换机制
如何控制思考过程输出
方法一:强制显示思考过程
如果您希望模型始终展示思考过程,可以通过以下方式实现:
curl https://vip.apiyi.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $APIYI_API_KEY" \
-d '{
"model": "deepseek-reasoner",
"messages": [
{
"role": "system",
"content": "在每个输出中,使用以下格式:\n\n<think>\n{reasoning_content}\n</think>\n\n{content}"
},
{
"role": "user",
"content": "请分析这个问题..."
}
]
}'
方法二:禁用思考过程
如果您只需要直接答案,可以这样设置:
curl https://vip.apiyi.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $APIYI_API_KEY" \
-d '{
"model": "deepseek-reasoner",
"messages": [
{
"role": "system",
"content": "请直接提供答案,无需解释思考过程。"
},
{
"role": "user",
"content": "请回答这个问题..."
}
]
}'
API易 平台使用建议
1. 模型选择
API易 目前支持 Deepseek 全系列两个模型:
- deepseek-reasoner:推理思考场景首选
- deepseek-coder:编程开发场景
2. 性能优化建议
- 使用流式输出
- 降低超时风险
- 提升用户体验
- 特别适合长篇输出
- 合理设置参数
- temperature:控制输出随机性
- max_tokens:管理输出长度
- top_p:影响答案多样性
3. 最佳实践
- 根据场景选择
- 教育场景:建议显示思考过程
- 生产环境:可以直接输出结果
- 开发调试:按需开启思考过程
- 提示词优化
- 清晰的指令
- 具体的示例
- 明确的格式要求
常见问题解答
Q1:如何在流式输出中处理思考过程?
A1:可以直接使用 API 返回的 reasoning_content
字段,或者使用特定标记(如 <think>
标签)来区分思考过程和最终答案。
Q2:思考过程会影响 token 消耗吗?
A2:是的,API 响应中的 reasoning_tokens
字段显示了思考过程消耗的 token 数。如果预算有限,建议仅在必要时获取思考过程。
Q3:可以动态控制思考过程输出吗?
A3:可以通过动态修改系统提示来实现,但建议在会话开始时就确定是否需要思考过程。
为什么选择 API易
- 稳定可靠的供给
- 解决模型官方平台充值受限问题
- API易 确保稳定的模型供给
- 无需担心额度用尽问题
- 专业的技术支持
- 提供最佳实践指导
- 解决接入过程问题
- 持续的服务优化
- 灵活的使用方案
- 支持多种调用方式
- 简单统一的接口
- 合理的计费方式
总结
Deepseek Reasoner API 的思考过程输出是一个灵活可控的功能。通过合理的配置和 API易 平台的支持,开发者可以根据实际需求来决定是否显示思考过程,从而实现最优的应用效果。
欢迎免费试用 API易,3 分钟跑通 API 调用 www.apiyi.com
支持 Deepseek 全系列模型,让开发更简单
本文作者:API易团队
欢迎关注我们的更新,持续分享 AI 开发经验和最新动态。