如果 AI Agent 每次对话后都会「失忆」,那它和人类实习生有什么区别?

在当前的 AI 应用开发中,这不仅仅是一个比喻,而是悬在开发者头顶的达摩克利斯之剑。当用户要求一个复杂的编程助手完成一个涉及数十个文件、多次迭代调试的项目时,模型往往会在第 15 步突然“断片”,忘记了最初的需求背景。这种“上下文诅咒”是限制大语言模型(LLM)从聊天机器人进化为真正智能体的最大障碍。

程序员 reaction:Content-Length:50

实习生第一天能记住需求,第二天就忘光,这锅不能全甩给模型

为什么现有记忆方案在长任务中失效?

要理解 PRO-LONG 的价值,首先必须看清当前记忆管理的困境。现有的主流方案主要分为两类:基于检索增强生成(RAG)的向量检索,以及基于滑动窗口或总结的上下文压缩。

向量检索虽然能解决知识库查询问题,但在长程推理(Long-Horizon Reasoning)中却显得力不从心。长程任务需要持续的感知、推理和探索,这要求智能体不仅知道“事实是什么”,还要知道“事实之间是如何演变的”。例如,在 ARC-AGI-3 这样的持续学习基准测试中,简单的语义相似度检索无法捕捉到多轮交互中的逻辑因果链条。当上下文窗口被填满,要么发生灾难性的遗忘,要么因为检索噪声过大导致模型注意力分散。

而传统的上下文压缩(如滑动窗口截断或 LLM 自动总结)则面临“信息失真”的风险。为了节省 Token 成本,许多系统会将历史对话压缩成一段简短的描述。然而,这种有损压缩丢失了大量的细粒度结构信息——比如具体的代码行号、特定的参数配置或中间推理步骤。对于需要高精度执行的任务来说,这种模糊性是致命的。

程序员 reaction:

压缩摘要就像把高清原片压成马赛克,看着像,细节全没了

PRO-LONG核心:程序化记忆的极简主义设计

针对上述痛点,杜克大学(Duke University)的研究团队提出了 PRO-LONG 框架。与那些试图通过增加模型参数量来解决记忆问题的思路不同,PRO-LONG 选择了一条更为务实的工程路径:重构上下文管理方式。

PRO-LONG 的核心创新在于引入了“程序化记忆”(Programmatic Memory)。它不再将记忆视为一堆散乱的文本片段,而是将其视为可执行的程序结构。在长程、探索性环境中,智能体的每一次交互都被记录为一个结构化的状态对象。这些对象包含了完整的输入、输出、工具调用结果以及环境反馈。

这种设计的精妙之处在于“极简主义”。PRO-LONG 并不试图将所有历史数据都塞进 Prompt,而是通过一种结构化的加载机制,根据当前任务的上下文,动态地提取最相关的程序化记忆块。这就好比程序员在调试 Bug 时,不会去翻阅整个代码库,而是根据错误日志精准定位到相关的函数模块。通过保留完整且结构化的交互信息,PRO-LONG 在检索相关细节的难度和信息量之间找到了完美的平衡点。

实验数据显示,在标准的长程推理基准测试中,PRO-LONG 使得智能体的推理准确率提升了 18%。这一提升并非来自模型智商的突变,而是源于记忆效率的革命。

PRO-LONG 程序化记忆架构

PRO-LONG 程序化记忆架构

无损记忆 vs. 压缩摘要:信息保真度的博弈

在记忆管理中,我们常常面临一个两难选择:是保留所有原始数据的“无损记忆”,还是牺牲部分细节换取效率的“压缩摘要”?

传统的 RAG 系统倾向于后者,因为它们受限于向量数据库的索引效率和计算成本。然而,PRO-LONG 证明了在长程推理中,结构化的程序化记忆比单纯的上下文堆砌更有效。这里的“无损”并非指存储每一个比特,而是指保留逻辑结构的完整性。

想象一下,在一个多步骤的代码生成任务中,压缩摘要可能会说:“模型尝试了两种方法,第一种失败,第二种成功。”而程序化记忆则会保留:“第一次尝试使用了 pandas 读取 CSV,因编码错误在第 42 行崩溃;第二次尝试使用了 csv 模块并指定 utf-8 编码,成功解析。”

这种保真度的差异在复杂探索中至关重要。当智能体需要回溯之前的决策路径以修正错误时,只有保留了完整的结构化信息,它才能进行有效的自我纠正。如果只是模糊的摘要,智能体往往会陷入重复错误的循环。

程序员 reaction:

摘要只能告诉你结果,程序化记忆能让你复盘过程,这才是调试的关键

工程实践:从 LangGraph 到 Postgres 的记忆持久化

理论上的优越性需要通过工程实践来落地。在当前的 Agent 开发生态中,LangGraph 已成为构建多步工作流的事实标准,而 PostgreSQL 则是持久化存储的首选。

将 PRO-LONG 的理念融入工程实践,关键在于如何设计 State Schema(状态模式)。在 LangGraph 中,我们需要定义一个包含历史消息、工具调用记录和中间状态的复杂对象。为了实现跨会话的长期记忆,这些状态必须被序列化并存储到数据库中。

以下是一个基于 LangGraph 和 PostgreSQL 的记忆持久化核心逻辑示例。通过 langgraph-checkpoint-postgres,我们可以轻松地将智能体的每一步状态快照保存到 Postgres 中,从而实现真正的“无损”回溯。

# 伪代码示例:LangGraph + Postgres 记忆持久化
from langgraph.checkpoint.postgres import PostgresSaver
import psycopg

# 1. 建立数据库连接
conn_string = "postgresql://user:pass@localhost/dbname"

# 2. 初始化检查点保存器
with psycopg.connect(conn_string) as conn:
    saver = PostgresSaver(conn)
    
# 3. 在 Graph 构建中使用
# graph.compile(checkpointer=saver)
# 这样,每次节点执行后的状态都会被自动序列化存入 Postgres

这种架构的优势在于解耦。计算层(LLM)与存储层(Postgres)分离,使得我们可以独立扩展记忆容量。无论对话进行到多少轮,智能体都可以随时从数据库中调取任意时间点的完整上下文,而不必担心上下文窗口的限制。

程序员 reaction:losingafewpackets

把记忆交给数据库,把算力留给模型,这是分布式系统的经典智慧

未来展望:RL训练与自主记忆管理的融合

尽管 PRO-LONG 在结构化管理上取得了突破,但如何决定“记住什么”依然是一个开放性问题。目前的方法多依赖于预设的规则或启发式算法。然而,正如 MIT 和 NUS 联合提出的 MEM1 智能体所展示的那样,未来的方向是将记忆管理纳入端到端的强化学习(RL)框架中。

“智能不是让 AI 记住一切,而是教会它自己决定应该如何记忆。”这句话深刻揭示了下一代 Agent 的本质。通过 RLHF(基于人类反馈的强化学习)或 GRPO 等先进算法,我们可以训练智能体在交互过程中动态调整其记忆策略:对于高价值、高不确定性的信息赋予更高的存储权重,对于冗余信息则进行自动丢弃或抽象。

这种自主记忆管理与 PRO-LONG 的结构化存储理念并不冲突,反而是互补的。PRO-LONG 提供了存储的“容器”和“格式”,而 RL 提供了填充容器的“策略”。两者的结合,将使得 AI Agent 从被动的信息处理器,进化为具备持久认知能力的主动学习者。

随着推理成本的进一步降低(如浪潮信息等厂商推动的单卡算力优化),这种复杂的记忆管理架构将在更多垂直领域落地。无论是长期的个人数字助理,还是复杂的自动化科研代理,拥有“无损记忆”的智能体都将展现出超越人类短期记忆极限的协作能力。


参考文献

  1. PRO-LONG: Programmatic Memory Enables Long-Horizon Reasoning - https://chatpaper.com/zh-CN/chatpaper/paper/[REDACTED]
  2. 让AI智能体拥有像人类的持久记忆:基于LangGraph的长短期记忆管理实践指南_腾讯新闻 - https://view.inews.qq.com/a/20251208A06MZ900
  3. 你的AI一重启就“失忆”?一文讲透如何赋予智能体「持久记忆」 - https://adg.csdn.net/695252695b9f5f31781b87a5.html
  4. 突破Agent长程推理效率瓶颈!MIT&NUS联合推出强化学习新训练方法 – 量子位 - https://www.qbitai.com/2025/08/[REDACTED].html
  5. 破解「长程智能体」RL训练难题,腾讯提出RLVMR框架 - https://zhuanlan.zhihu.com/p/1939275671999341107
上一篇:
黄仁勋:中国开源AI模型非常优秀,美国不应惧怕
下一篇:
宇树发布轮足机器人 As2-W:6m/s速度、IP54防水、30km续航

分享到这些地方