2.4 KiB
2.4 KiB
| title | created | updated | type | tags | sources | |||||
|---|---|---|---|---|---|---|---|---|---|---|
| Thinking/Reasoning 能力系统 | 2026-04-14 | 2026-04-14 | concept |
|
|
Thinking/Reasoning 能力系统
统一管理不同 LLM 提供商的思考/推理能力,支持会话级动态调节思考深度。
支持的模型
| 提供商 | 模型 | 机制 | 级别 |
|---|---|---|---|
| Anthropic | claude-3-5-sonnet, claude-4* | extended_thinking (budget_tokens) | minimal(2k)/low(4k)/medium(8k)/high(16k) |
| Anthropic | claude-4.6+ | adaptive thinking | 自适应(无需指定预算) |
| OpenAI | o1, o3 | reasoning_effort | low/medium/high |
| DeepSeek | deepseek-r1 | reasoning_content 字段 | 无级别控制 |
核心函数(runtime/thinking.ts)
| 函数 | 用途 |
|---|---|
isThinkingSupported(model) |
检查模型是否支持思考 |
supportsAdaptiveThinking(model) |
检测 Claude 4.6+ 自适应思考 |
getModelThinkingCapability(supplier, model) |
返回能力描述(supported, adaptive, levels, defaultLevel) |
buildAnthropicThinkingParams(model, level) |
构建 Anthropic 参数(adaptive 或 budget_tokens) |
buildOpenAIThinkingParams(level) |
构建 OpenAI reasoning_effort 参数 |
参数注入
Anthropic 适配器:
- 自适应模式:
thinking: { type: 'adaptive' }+ beta headerinterleaved-thinking-2025-05-14 - 固定预算:
thinking: { type: 'enabled', budget_tokens: N }+ 强制temperature: 1.0
OpenAI 适配器:
reasoning_effort: 'low' | 'medium' | 'high'
思考内容提取
| 提供商 | 提取方式 |
|---|---|
| Anthropic | response.content[] 中 { type: 'thinking' } 块 |
| OpenAI/o1/o3 | thinking 字段 |
| DeepSeek-R1 | reasoning_content 字段 |
| 通用 | <think>...</think> 标签解析 |
会话级控制
优先级链:会话级 sessionThinkLevel > Agent 配置 defaultThinkLevel > 模型默认值
前端通过 ClientSetThinkingLevelMessage WebSocket 消息动态调节,服务端通过 ServerThinkingEvent / ServerThinkingDeltaEvent / ServerThinkingDoneEvent 流式推送思考内容。
相关页面
- llm-providers — 提供商适配层实现
- agent-runtime — 运行时集成思考参数
- websocket-gateway — 思考事件的 WebSocket 协议