2026-05-20 21:39:12 +08:00

2.4 KiB
Raw Permalink Blame History

title created updated type tags sources
Thinking/Reasoning 能力系统 2026-04-14 2026-04-14 concept
llm
agent
runtime
packages/backend/src/modules/netaclaw/runtime/thinking.ts
packages/backend/src/modules/netaclaw/plugins/llm_providers/anthropic.ts

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 header interleaved-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 流式推送思考内容。

相关页面