思考功能介绍
思考功能(Extended Thinking / Reasoning)让 AI 在回答问题前先进行深度思考,展示其推理过程,从而提供更准确、更有逻辑的回答。
如何开启
方式一:聊天框快捷开关
在对话输入框上方,点击**「思考」按钮**(灯泡图标)即可开启或关闭思考功能:
- 关闭状态:按钮显示为灰色轮廓样式
- 开启状态:按钮高亮显示为主题色填充样式
┌─────────────────────────────────────────────────────────────┐
│ [模型选择 ▼] [💡 思考] [📎 附件] 12 条消息 3.2 KB │
├─────────────────────────────────────────────────────────────┤
│ 输入消息... [发送] │
└─────────────────────────────────────────────────────────────┘
↑
点击切换思考开关方式二:助手设置
在助手编辑弹窗中,可以设置「思考模式」开关。该设置与聊天框的快捷开关双向同步——在任意一处修改都会同步到另一处。
工作原理
思考功能通过调用各模型的原生思考 API 实现:
| 模型 | 请求参数 | 响应格式 |
|---|---|---|
| OpenAI | reasoning_effort: 'medium' | delta.reasoning_content |
| Claude | thinking: { type: 'enabled', budget_tokens: 10000 } | delta.type: 'thinking_delta' |
| Gemini | generationConfig.thinkingConfig: { includeThoughts: true } | part.thought: true |
注意:
- 无需选择带
-thinking后缀的模型,系统会自动启用思考功能- 不同模型的思考能力和输出质量可能有所差异
支持的模型
思考功能需要模型本身支持扩展思考能力。以下是常见支持的模型:
| 模型系列 | 示例模型 | 备注 |
|---|---|---|
| OpenAI o 系列 | o1, o1-mini, o3, o3-mini, o4-mini | 原生推理模型 |
| OpenAI GPT-5 | gpt-5, gpt-5-mini, gpt-5-nano | 支持推理参数 |
| Claude | claude-3-7-sonnet, claude-sonnet-4, claude-opus-4 | 原生 extended thinking |
| Gemini | gemini-2.5-flash, gemini-2.5-pro | 原生 thinking mode |
| DeepSeek | deepseek-reasoner | 原生推理模型 |
提示:对于不支持思考功能的模型,开启思考开关不会产生任何效果(参数会被忽略)。
内容呈现
思考过程
AI 的思考内容会以特殊格式保存在消息中:
markdown
<thinking>
用户询问的是关于量子纠缠的原理...
我需要从基础物理概念开始解释...
首先介绍量子态的叠加原理...
然后说明测量对量子态的影响...
</thinking>
量子纠缠是量子力学中最神奇的现象之一...折叠显示
思考内容在消息列表中默认折叠显示:
- 点击「展开思考过程」可查看完整的推理内容
- 再次点击可折叠隐藏
- 折叠状态下仅显示思考摘要或图标提示
流式输出
思考内容支持流式输出,用户可以实时看到 AI 的推理过程:
- 思考阶段:显示思考中的动画,逐步展示推理内容
- 回答阶段:思考完成后,开始输出最终回答
使用场景
适合开启思考的场景
- 复杂推理问题:数学证明、逻辑推理、算法设计
- 多步骤任务:需要分解和规划的复杂任务
- 代码调试:分析代码问题、设计解决方案
- 决策分析:需要权衡多个因素的决策问题
- 创意写作:需要构思和组织的长文写作
不建议开启的场景
- 简单问答:事实性问题、定义查询
- 日常闲聊:轻松对话、打招呼
- 快速翻译:简单的文本翻译任务
- 格式转换:JSON/XML 等格式转换
注意事项
Token 消耗
开启思考功能会显著增加 Token 消耗:
- 思考内容本身消耗输出 Token
- 建议在需要深度推理时才开启
响应时间
思考模式下 AI 需要更多时间生成回答:
- 首字延迟会明显增加
- 总体响应时间可能是普通模式的 2-3 倍
- 复杂问题的思考时间更长
兼容性
- 思考功能需要使用支持扩展思考的模型(见上方模型列表)
- 系统会根据 API 格式自动发送对应的原生思考参数
- 不支持的模型会忽略该参数,正常返回响应(无思考内容)
