Meta-Controller (元控制器)

发布时间:2026/7/11 7:29:13
Meta-Controller (元控制器) 定义: 一次性路由器将传入请求分类后派发给对应的 specialist agent。路由器本身不执行任何任务。核心思想: 像 “分诊台” 而非 “总控台”。由于其简单性和可预测性这是生产多 agent 系统最常见的起步架构。核心工作流: ① 接收用户请求 → ② Meta-Controller 对请求进行一次性分类 → ③ 路由到对应领域的 Expert Agent 执行 → ④ Expert 完成任务后直接输出结果。形式化描述:S (q, c, r) 其中 c ∈ Categories, r ∈ Resultsδ : (q, ∅, ∅) → classify → (q, c, ∅) → route© → specialist_c(q) → (q, c, r) → FF {s | r ≠ ∅}Γ {c ∈ KnownCategories, route© ∈ Registered Specialists, specialist_c 匹配 c}终止性: 结构性终止 —— 两步固定流程。示意图8 Meta-Controller扩展维度 分析要解决什么 用户请求类型多样, 需要一次性路由到正确的下游系统State S 拓扑 两步固定: Classify → Route → SpecialistRouter 第一次 LLM 调用做分类, 然后静态映射 category → specialist失败模式 分类错误导致路由到错误 specialist; 边界 case 无匹配何时升级 需要并行调用多个 specialist 时 → Ensemble框架映射:我们来看看 本模式 如何映射到其它模式上。维度 取值Topology 两层树 (根→分类→叶)Routing LLM 分类 静态映射Guard 分类结果校验Mode live核心维度 Routing (路由是全部)核心洞察: Meta-Controller 是架构中最轻的模式——一次性路由。像分诊台: 不治病, 只判断该去哪个科室。它的价值在于把路由决策本身变成一个可审计的步骤。4.9 Ensemble (集成模式)基础定义: 多个 agent 独立并行处理相同输入然后由聚合器将多元视角合并为最终建议。核心思想: 价值不在于取平均而在于保留冲突。冗余降低个体偏差聚合器必须暴露分歧而非掩盖它。核心工作流: ① 将同一输入分发Fan-out给多个独立 Agent → ② 各 Agent 并行处理产出独立见解 → ③ Aggregator 收集所有见解并识别分歧 → ④ 综合多元视角输出最终建议保留冲突信息。形式化描述:S (q, O, A) 其中 O [o₁, o₂, …, oₙ], n ≥ 2, A 为聚合结果δ : (q, ∅, ∅) → fan_out → (q, ∅, ∅) → ∥ᵢ modelᵢ(q) → (q, O, ∅) → aggregate → (q, O, A) → FF {s | A ≠ ∅}Γ {n ≥ 2, ∀ i ≠ j, modelᵢ ≠ modelⱼ ∨ promptᵢ ≠ promptⱼ, 冲突必须保留在 O 中}终止性: 结构性终止 —— Fan-out → Parallel → Fan-in 一步完成。示意图9 Ensemble扩展维度 分析要解决什么 单模型有盲区, 需要多角度冗余覆盖State S 拓扑 Fan-out → Parallel → Fan-in: 一分多 → 并行执行 → 汇聚Router Fan-out: 复制到 N 个模型/agent; Fan-in: 聚合策略 (投票/加权/LLM 评判)失败模式 所有模型同时错; 聚合策略掩盖重要分歧; 成本线性增长何时升级 需要认知分工而非冗余时 → Multi-Agent; 需要自我评估时 → Metacognitive框架映射:我们来看看 本模式 如何映射到其它模式上。维度 取值Topology Fan-out → Fan-inRouting 静态 fan-out 策略 fan-inGuard 多样性校验 (model/prompt 不重复)Mode live核心维度 Topology (并行) Guard (冲突保留)核心洞察: Ensemble 的关键不是取平均, 是 保留冲突。如果三个模型给出三种答案, 这不叫失败——这叫信息。聚合策略必须保留分歧而不是抹平它。4.10 Episodic Semantic Memory (记忆模式)基础定义: 在基础 agent通常是 ReAct上扩展持久外部记忆 — 情景记忆事件历史存为向量和语义记忆结构化事实, 支持跨会话学习。核心思想: 记忆让系统更强大但也让错误变得持久。关键设计决策是何时检索、何时写入、如何防止记忆污染。核心工作流: ① Agent 推理前先从记忆库检索相关历史Recall → ② 结合当前上下文和历史记忆进行推理 → ③ 执行行动并获取结果 → ④ 对话结束后提取新知识写入记忆库情景事件→向量库结构化事实→知识库。形式化描述:S S_core × M_e × M_s (核心状态 × 情节记忆 × 语义记忆)δ : (s, M_e, M_s) → retrieve(q, M_e, M_s) → inject(s, memories) → act(s’) → store(outcome, M_e, M_s)F S_core 的终止条件 (继承自主架构)Γ {store 仅在 outcome.verified true 时触发, |M_e| ≤ max_episodes, |M_s| ≤ max_entries}终止性: 继承自主架构 (通常是条件终止)。示意图10 Episodic扩展维度 分析要解决什么 agent 缺乏跨对话/跨任务的持久记忆State S 扩展为 S × M_episodic × M_semantic, memory 在图外可检索拓扑 agent 主循环 memory 读写分支 (写入: store; 读取: retrieve → inject)Router 基于相似度检索 (embedding/关键词); 写入: 基于重要性阈值失败模式 检索噪音; 记忆膨胀; 错误记忆持久化污染后续任务何时升级 需要结构化关系时 → Graph Memory框架映射:我们来看看 本模式 如何映射到其它模式上。维度 取值Topology 主循环 读写侧枝Routing 相似度检索Guard 写入前验证 (重要性阈值结果校验)Mode live核心维度 State (外延扩展)核心洞察: Memory 把 State 从图内扩展到了图外。memory 让错误变持久——如果存储了错误经验, 它会系统性地污染所有后续任务。Memory 的写入门槛应该高于读取门槛。4.11 Graph Memory (图记忆模式)基础定义: 使用知识图谱实体 关系作为记忆基底通过 Text-to-Cypher 实现向量检索无法处理的多跳关系查询。核心思想: 关键不只是 LLM 的智能而是整个知识建模链条抽取→存储→查询→综合。图结构支持关于关系的结构化推理。核心工作流: ① 从原始文本中抽取实体和关系三元组 → ② 存入图数据库构建知识图谱 → ③ 将自然语言查询转为 Cypher 并在图上执行 → ④ LLM 综合查询结果生成最终答案。形式化描述:S (q, cypher, graph_result, context, response)δ : (q, ∅, ∅, ∅, ∅) → text2cypher → (q, c, ∅, ∅, ∅) → query → (q, c, R, ∅, ∅)→ augment → (q, c, R, ctx, ∅) → generate → (q, c, R, ctx, resp) → FF {s | resp ≠ ∅}Γ {cypher 语法合法, R ⊆ GraphDB, ctx q format®}终止性: 结构性终止 —— 固定流水线。示意图11 Graph扩展维度 分析要解决什么 需要结构化关系推理, 超越向量相似度匹配State S 扩展包含 KnowledgeGraph (Entity-Relationship 图)拓扑 线性流水线: NL→Cypher→GraphDB→Context→ResponseRouter 静态: Text-to-Cypher 翻译后查询图数据库, 结果注入上下文失败模式 Cypher 生成错误 (语法/语义); 图 schema 与自然语言不对齐; 空查询结果何时升级 需要搜索而非检索时 → ToT框架映射:我们来看看 本模式 如何映射到其它模式上。维度 取值Topology 线性流水线Routing 静态Guard Cypher 语法校验 查询沙箱Mode live核心维度 State (结构化图记忆)核心洞察: Graph Memory 的价值不在图数据库本身, 而在于 关系变得可查询。“A 和 B 是什么关系?”——这个问题向量数据库回答不好, 但一个 JOIN 就能回答。4.12 Tree-of-Thoughts (思维树)基础定义: 将线性推理变为树搜索 — 展开多条候选思维路径评估打分剪枝无效分支使用程序化搜索控制BFS/DFS。核心思想: 永远不要把搜索控制交给 LLM— 交给代码。LLM 的职责只是生成候选和打分。代码管理分支、回溯和终止。核心工作流: ① 代码控制展开多条候选思维路径 → ② LLM 对每条路径打分评估 → ③ 代码根据分数剪枝无效分支 → ④ 继续向下展开有效分支直到找到目标或达到最大深度。形式化描述:S (T, frontier, budget) T 为思维树, frontier 为待展开节点队列, budget 为剩余搜索预算δ : select(frontier) → expand(LLM) → evaluate(LLM) → prune → update(frontier)F {s | budget 0 ∨ ∃ n ∈ T.leaves, score(n) ≥ threshold}Γ {budget 单调递减, 每轮至少剪除 |frontier|×p 的候选}终止性: 有界终止 —— budget 单调递减。示意图12扩展维度 分析要解决什么 需要探索多条推理路径, 而非单线推进State S 拓扑 树: 每个节点可 fan-out 多个候选, 搜索策略决定下一步展开哪个节点Router 代码控制搜索策略 (BFS/DFS/beam/蒙特卡洛), LLM 只做 generate_candidates evaluate失败模式 搜索空间爆炸; 评分不准确导致剪枝错误; 同质化候选何时升级 需要搜索执行验证时 → Mental Loop框架映射:我们来看看 本模式 如何映射到其它模式上。维度 取值Topology 树 (动态展开)Routing 代码控制的搜索策略Guard budget 约束Mode simulate (搜索过程)核心维度 Topology (树形) Routing (搜索驱动)核心洞察: Tree-of-Thoughts 让推理变成搜索。关键分离: 代码控制搜索策略, LLM 只生成候选和评分。这让推理从模型内部不可见过程变成外部可控可调的搜索问题。4.13 Mental Loop / Simulator (心智模拟)基础定义: 在执行真实动作前系统 fork 一个模拟环境推演动作后果评估结果仅在超过基线时才真正执行。核心思想: 架构的上限不是 LLM, 而是模拟器的保真度。核心安全不变量模拟绝对不能修改真实环境。核心工作流: ① Agent 提出待执行动作 → ② Fork 当前环境创建模拟副本 → ③ 在模拟环境中推演动作后果并与基线对比评估 → ④ 评估通过则在真实环境执行否则放弃该动作。形式化描述:S (scenario, rollouts: List[Rollout], best_action)δ : (s, ∅, ∅) → fork(s, k) → ∥ᵢ rollout(s, kᵢ) → evaluate_all → select_best → execute(real)F {s | real_execution_complete}Γ {simulate(·) 不修改 real_env (核心不变量), k ≥ 2, ∀ rollout, rollout.trajectory ∈ FeasiblePaths}终止性: 有界终止 —— fork 数 k 固定, rollout 深度有界。示意图13扩展维度 分析要解决什么 在执行前预演多种可能路径, 选择最优方案State S 拓扑 fork → for each branch: rollout → evaluate → select_best → execute(real)Router 代码控制 fork 数量, LLM 做 rollout 生成evaluate, 最终策略选 best失败模式 模拟与现实偏离; rollout 数量少导致遗漏最优; 模拟成本高何时升级 需要真实环境但拦截副作用 → Dry-Run; 需要长期自我改进 → Self-Improvement框架映射:我们来看看 本模式 如何映射到其它模式上。维度 取值Topology Fork → Parallel Rollouts → MergeRouting 代码控制 fork LLM evaluate 策略 selectGuard Mode 约束: simulate 不修改 real_envMode simulate → live (两阶段)核心维度 Mode (simulate 与 live 切换)核心洞察: Mental Loop 的核心不变量是 simulate 不修改 real_env。这是三思而后行的工程实现——在反事实世界中犯错是免费的, 在真实世界中不是。