Skip to content

上下文、会话、摘要与记忆不是一回事

返回机制目录 · 可编辑图 · PNG

存储状态与本轮模型上下文的关系

查看原尺寸 SVG(可缩放)

最容易造成误解的一句话是“Agent 有记忆”。先问四件事:内容存在哪里保存多久由谁决定读入本轮模型真的看见了什么。模型的当前上下文是一次请求的输入,并不等于系统能访问的全部历史或文件。

名称它通常是什么本轮一定可见吗?
当前上下文此次模型请求实际提交的指令、选中的消息、工具结果等是;它本身就是输入
会话记录应用保存的消息和事件历史不一定;可能只投影当前分支或近几轮
压缩摘要为预算或续接而概括出的历史信息不一定;要看是否被选入本轮
长期记忆跨轮次、甚至跨会话保存的事实、偏好或状态不一定;通常还需检索、引用或注入
外部知识文件、数据库、网页等可访问材料不一定;可访问不等于已读取,更不等于已验证

图的虚线是“可被选择或检索”,不是自动、无损、可靠的传输。上下文装配会受到窗口预算、策略与权限约束;没被装进去的内容不会神奇地存在于本轮模型输入里。反过来,被装进去也不意味着模型必然正确使用它。

Pi 提供一个可核对的具体例子:其核心在请求前进行 transformContext → convertToLlm;coding-agent 的 SessionManager 投影当前会话分支。这证明 Pi 的“存储状态”和“本次模型消息”有转换边界,不证明所有系统采用同一种存储或摘要算法。Pi 代码导读有更完整的固定版本路径。

下一步应分别研究:压缩在什么条件下触发,摘要保留/丢失了什么;长期记忆如何写入和检索;检索结果怎样做来源核验。这三件事不能靠本图推出答案。图是通用教学模型,不代表某个产品的完整实现。

图的文字说明 · context-vs-memory

左侧四层是系统可能拥有的来源:会话记录、压缩摘要、长期记忆和外部知识。它们通过选择、引用或检索,才可能进入中间的上下文装配。右侧是一次模型请求实际可见的输入;它不自动等于左侧所有内容。虚线不表示每个系统都有该路径。具体 Pi 实例及源码边界见专题正文。


在线预览稿:书稿仍在校稿,系统篇以文内固定源码版本为准;静态阅读不等于运行验收。