一种理想的智能体编排架构

目的:写给要动手实现智能体编排器的人,说明在 LLM 上下文有限的前提下,靠哪些结构撑起大范围、高深度的自洽。

顶层论点:LLM 只是个强大的计算器,智能来自围绕它搭起来的记忆与调度结构。

一、设计理念与理论基础

1.1 类比:生物脑、计算机、LLM

生物脑/人脑的核心组成要素:逻辑能力、长期记忆、短期记忆

几种记忆/状态存储形态的对比:

1.2 关于“意识”与“语言”的基本观察

  1. 意识主要存在于短期记忆中,长期记忆也需要保持自洽性。

  2. 短期临时记忆维护了当前意识,信息容量相对固定,不会太大。其本质是:

    • 语义压缩加上下文存储,上下文处理就是一个“信息压缩”的过程。

    • 记忆过程就是不断把未知输入换成大脑内部已有知识的表达,持续匹配知识、确保自洽,不断根据输入修正大脑(上下文)当前的主观感觉、想法、语境

  3. 外界输入的目的:让大脑内部根据已有的知识点组织出一个意识/想法。对文本的理解和记录,本质上与 LLM 一致,文本是串流的,准确的编码过程也与 LLM 一致。

  4. 语言是大脑的工具,不是智能本身:大脑不断重新组织语言,由中心意识判断是否符合中心思想,再决定输出。最核心的是人类的意识,也就是临时的状态记忆

    • 人类处理语言的过程,就是通过语言表达的信息不断修正短期记忆中的观点、感觉、意识。

    • 说话是这个过程的逆过程。

  5. 自我提供了人性本能的最高层级抽象。

  6. LLM 只是个强大的计算器,利用这个计算器加上记忆,就能实现强大的智能。

1.3 参考与相关工作


二、通用智能的特性

2.1 意识:当前意识的存储容器,属临时记忆

2.2 记忆:知识的存储

旁注:自动遗忘与热度排序作为未来演进方向列出。当前 WeaveAgent 工程设计未采纳这两项,短时记忆随 Frame 生命期自然消亡,长时记忆以关键词树组织、不使用热度概念。详见 Agent/WeaveAgentDesign.md 的记忆系统一节。

2.3 基本行动规则、准则与方法

2.4 本能:认知核心,对所有任务都有效,是全局的

2.5 技能:特定领域的后天习得能力


三、编排器设计目标

  1. 自我意识、人性化

    • 精心设计的 prompt。

    • 把人格从大模型内部移出来,放到编排器。

  2. 大范围、高深度的信息自洽

    • 主动的检查和主动的行动逻辑判断。

    • 不仅保证上下文/临时记忆的自洽,还能主动读取长期记忆进行判断与校准。

    • 分层的信息组织方式。

    • 包含任务控制的提示词,加上 LLM 显式的任务管理,加上本地运行的任务组织。

  3. 自动进化、自动学习

    • 灵活的记忆接口,加上预设的学习本能任务。
  4. 降低对 LLM 上下文的需求

    • Frame /任务树的抽象。

    • 快速、动态的逻辑推理:很短的上下文,形如“如果 xxx 是 xxx,那么 xxx 就是 xxx”。

    • 本地可直接执行的逻辑操作:大量、大范围的明确逻辑操作。

  5. 支持高效的信息检索

    • weavemind。

    • 支持复杂的带逻辑条件的检索。

    • 支持自然语言的语义检索。

  6. 核心特点/功能/优势

    1. 逻辑思维链条的管理和总结
    2. 自动的总结、反思和改进
    3. 自洽的灵魂要求
    4. 多层、灵活、健壮、自洽的记忆系统

四、核心抽象与机制

4.1 智能主体的描述

4.2 临时记忆:当前状态信息的记录

4.3 长时记忆:通用存储容器,可存任意信息

接口形态说明:长时记忆是结构化的知识图,由关键词树、Info 节点和多对多关联构成,其物理接口以 Search / CreateKeyword / CreateInfo / LinkInfo / MergeKeywords 等专用操作呈现,与短时记忆的通用 CRUD 基类不共享继承关系。两者概念上都是“寻找/创建/修改/删除”,实现上是两套接口。详见 Agent/WeaveAgentDesign.md 的长时记忆一节。

4.4 任务 / Frame 抽象:统一的任务与思维单元

注:Frame 是最通用的抽象,表达大脑的一个思考任务、一个上下文片段、一个工作片段、一个 handle、一个阶段性思考过程。

4.4.1 任务/Frame 的上下文

4.4.2 任务/Frame 的状态

4.4.3 组织形式:分层树状结构

4.4.4 自洽要求

4.4.5 思维树操作:LLM 对 Frame 树的动作集

这是“复杂化的 TodoWrite”,LLM 在操作这棵树,可扩展节点、放大分支、合并节点、查看节点详细信息。文本 + 逻辑决策 = prompt 生成

4.4.6 Frame 的接口

4.4.7 Frame 可见的工具

4.4.8 上下文布局与压缩策略:“两端有用,中间可丢”

设计原则:让上下文压缩变成一次安全的“中段截断”,而不是一次复杂的摘要工程。

本架构对每一次送给 LLM 的上下文采用严格三段式布局

┌──────────────────────────────────────────┐
│  [TOP] System 段                         │  ← 长度可控、永远有用
│   人格 / 价值观 / 当前 Frame 的 system   │
│   prompt / 可见工具集(分层加载注入)    │
├──────────────────────────────────────────┤
│  [MID] 历史段:思维过程、工具调用与返回  │  ← 长度可增长、可被安全裁剪
│   ……过去的思考轨迹……                     │
│   ……过去的工具调用结果……                 │
├──────────────────────────────────────────┤
│  [BOT] 有效段:当前推进所需的最少信息    │  ← 长度已知、远小于 LLM 上限
│   最近一段对话 / 最新工具返回 /          │
│   当前要回答的问题 / 当前 Frame 状态摘要 │
└──────────────────────────────────────────┘

核心不变量(任何时刻都必须成立的条件):

TOP + BOT 在任意时刻都是一个可独立执行的最小完整上下文。

压缩 = 直接删除 MID 中段

len(TOP) + len(MID) + len(BOT) > 阈值(例如 LLM 窗口的 80%)时:

  1. 不做摘要、不做 LLM 调用、不做语义压缩

  2. 直接对 MID从中向两端截断,保留 MID 头若干 token 与 MID 尾若干 token,删除中间最久远的过程性记录。

  3. 反复迭代,直到总长度回到阈值以下。

为什么“删中段”不破坏信息完整性

关键信息类别 物理存放位置 受截断影响
人格 / 价值观 / 任务目标 TOP(System 段) ❌ 不影响
当前可见工具与动作集 TOP(分层加载注入) ❌ 不影响
当前要做的事 / 最新工具返回 BOT(有效段) ❌ 不影响
Frame 的结论、状态、思维链路总结 Frame 状态字段,本地存储 ❌ 不影响,不在 prompt 里
过去的工具调用过程性记录 MID ✅ 被裁剪,但结论已沉淀到 Frame 状态/笔记/记忆,过程证据可丢

也就是说:MID 段是“过程性证据”,不是“结论性事实”。结论性事实由思维树操作里的“笔记/学习/抽象”动作主动落入:

MID 一旦被丢弃,agent 仍能从这三处“主存”中找回任何关键事实。LLM 上下文只是高速缓存,不是事实的唯一存储位置

与 Anthropic Compaction 的对比

维度 Anthropic Claude Code 本架构
触发 接近窗口上限 接近预设阈值,如 80%
方式 LLM 摘要历史,保留架构决策与未解 bug 直接删除中段,无 LLM 调用
成本 每次压缩需要一次 LLM call 零 LLM 调用,O(1) 截断
不变量保障 依赖摘要质量 依赖 Frame 状态/记忆作为外部主存
失败模式 摘要丢关键信息 MID 段过大时 BOT 仍完整可用

工程上的额外约束

  1. BOT 段长度必须严格设上限:例如最近对话不超过 8K token、Frame 状态摘要不超过 2K token,超出就主动滚出到 MID 或落盘。

  2. 关键状态变更必须先写 Frame 状态再进入 MID:保证一旦 MID 被裁剪,状态没丢。

  3. 截断只发生在 Frame 调度边界:不在工具执行中途截,避免破坏正在进行的 tool_call / tool_result 配对。

  4. 截断后无需通知 LLM:模型从 TOP + BOT 即可继续推进。如果某次推理需要历史细节,应通过显式工具调用从记忆中取回,而不是依赖 MID 仍在。

设计哲学:把上下文压缩从一个“语义难题”降级为一个“长度算术问题”。代价是要求架构其他部分(Frame 状态、记忆系统)承担“事实主存”的责任,这与本架构“总结/抽象/记忆”的本能设计和长时记忆的设计天然对齐。

4.5 本能 / 调度器:主循环

创建当前状态的下一步行动,是整个系统的主循环。

4.5.1 根任务:维持“自我意识”的入口

4.5.2 背景线程:本能在后台自动连续运行

本能有一条全局的背景线程,跨所有 Frame,在后台自动、连续地运行。

它持续做以下几件事。

检测结果有两个去向。

4.5.3 行动力:下一步任务的推进

每个任务独立循环执行,只关心自己的上下文。

4.5.4 任务列表维护

4.5.5 循环闭环

本能的任务/功能不断产生记忆,存入临时记忆,作为下一次行动的依据。临时记忆与本能目标之间形成循环


五、工程实现

5.1 存储与记忆基础设施

5.2 Frame 模块

详细设计见“任务 / Frame 抽象”一节。

5.3 Prompt 工程

5.4 提供给 LLM 的基础设施总览

  1. 记忆与存储:知识、历史、状态的记录与检索。
  2. Frame / Action 管理:任务规划工具。
  3. 逻辑思维管理:思考历史与逻辑关系的记录与检索。

六、关键挑战与进一步思考

6.1 LLM 上下文有限,难以实现大范围高深度自洽

因为 LLM 注意力长度有限,实现高深度、大范围自洽的途径:

6.2 复杂问题的逻辑分析能力

6.3 复杂动态决策能力

6.4 自动更新与学习,动态、递归执行任务

6.5 自洽

贯穿全文,是核心准则。

6.6 价值观

利用“自我”这一抽象,提供终极的目标指引。


Revision #6
Created 2026-04-17 08:52:35 UTC by Colin
Updated 2026-08-14 06:52:45 UTC by Colin