Reference 0003
上下文、状态、记忆与 RAG
不要问“Agent 记住了吗”,先问信息存在哪里、何时取出、是否可信、谁能修改。
五个边界
| 概念 | 定义 | 典型内容 |
|---|---|---|
| 任务状态 | 当前任务的权威、结构化事实 | 阶段、预算、已执行 action、审批状态 |
| 本轮上下文 | 一次模型调用真正能看到的有限 token 序列 | 指令、状态投影、证据、工具 schema |
| 短期记忆 | 同一 thread 内跨步骤保留的信息 | 对话、计划、最近观察、阶段摘要 |
| 长期记忆 | 跨 thread 召回的持久信息 | 用户偏好、稳定事实、历史经验 |
| RAG | 按当前问题从外部知识源检索并组装证据 | 代码片段、文档、工单、历史事故 |
| 制品存储 | 保存不适合直接进入 prompt 的完整对象 | 日志、trace、文件、图片、查询结果 |
Context Builder 管线
选择来源任务状态、记忆、检索、工具和制品索引
检索排序按当前决策所需的相关性召回证据
标注信任区分系统指令、用户输入和外部数据
压缩预算去重、摘要、截断,并保留来源
确定组装按稳定模板生成本轮模型上下文
Context 是从系统事实生成的有限视图,不是系统事实本身
长期记忆写入门禁
- 价值:未来任务是否真的需要?
- 来源:事实来自用户确认、权威系统还是模型猜测?
- 范围:属于用户、项目、组织还是单次任务?
- 时效:是否需要 TTL、版本或失效条件?
- 隐私:是否允许跨会话保存与召回?
- 冲突:新事实如何覆盖或保留旧版本?
快速决策
| 问题 | 优先放置 |
|---|---|
| 任务恢复时必须准确存在? | 任务状态或检查点 |
| 只服务当前一次模型判断? | 本轮上下文 |
| 未来会话仍有稳定价值? | 经过门禁的长期记忆 |
| 来自大型知识库并按问题选择? | RAG 索引与检索管线 |
| 体积大但偶尔需要局部读取? | 制品存储加引用 |