Agent 记忆:情景、语义,以及该留下什么

你建的第一个 Agent 没有当前对话之外的任何记忆,这能撑大约一周。然后用户回来,期望连续性,你开始往上贴记忆:一张数据库表、一个向量库、把过去会话的摘要塞进 system prompt。三个月后,记忆层比 Agent 本身的失效模式还多。

值得区分的两种记忆

情景记忆——这条对话线里发生了什么、什么时候——是大多数团队最先建的,因为它显而易见。语义记忆——用户偏好什么、跨会话的事实——才是让 Agent 显得聪明的东西。它们是不同的存储问题、不同的检索问题,把它们混为一谈,会得到一个什么都记得、什么都用不好的 Agent。

真正该留下什么

激进地遗忘。诱惑是把所有东西都记下来以备后用;后果是上下文窗口装满噪音,挤掉模型的推理空间。把旧情景汇总成显著事实。只在跨多次会话被确认之后,才把事实提升到语义记忆——单次出现的”事实”大多是用户错误,Agent 不应该把它们编码下来。

Agent 记忆是策划问题,不是存储问题。把这件事做对的团队,有一条遗忘策略,而不只是一条记住策略。

相关文章

多自主才算太自主

Agent 的自主性是一根滑杆,不是一个开关,正确档位由任务决定的多过由技术决定的。把滑杆推到"完全自主"的本能是真的,因为那样 demo 看起来很神奇。代价后来在客服队列里出现,那时一个 Agent ...

Agent Harness:为什么你的模型不是问题所在

LangChain 在 TerminalBench 2.0 上从 30 名开外飙到了第 5 名。他们没有换模型。同一个 LLM。同样的参数。唯一改变的是包裹在模型外面的那层软件——Harness。 ...

Multi-Agent 系统:协调才是真正的难点

Multi-Agent 架构很有诱惑力,因为它映射到人类组织工作的方式:专家、协调者、交接协议。第一次把复杂任务在"研究员"Agent 和"作者"Agent 之间拆分时,结果确实更好。第三次的时候,你 ...

Planner-Executor 拆分:什么时候该拆,什么时候该合

第一天,让单个模型同时做规划和执行,看起来很优雅。三个月后,trace 日志会讲一个不同的故事:Prompt 里负责规划的那部分在工具调用上下文中开始漂移,负责执行的那部分开始幻觉出从未被规划过的步骤 ...

生产环境的 ReAct:经得起跑题的推理循环

ReAct 是一个干净的想法:思考、行动、观察、循环。在生产环境里,循环本身才是最容易崩的部分。模型在前几步推理得还算合理,然后要么过度解释,要么对工具调用反复纠结,要么自说自话地认定任务已经完成。教 ...

Agent 失败时:不会无限循环的恢复模式

Agent 的失败不抛异常。它们产出看起来合理但错误的输出,或者用稍微不同的方式悄悄重试同一个坏方法。把 Agent 包在 try/catch 里是错误的心智模型——Agent 没崩,它只是继续往一个 ...

没有标准答案的 Agent 怎么评测

评测一个 Prompt 已经很难。评测一个在给出答案前要跑十次工具调用的 Agent,是另一个量级的难。能产生正确答案的轨迹很少完全相同。能产生错误答案的轨迹常常一直看起来合理,直到第七步。标准的精确 ...

工具选择:什么时候该模型挑,什么时候该你挑

会用工具的 Agent 在 demo 里看起来很有力,因为模型在选下一步做什么。它在生产里看起来很脆弱,因为模型在选下一步做什么。可用工具的空间随特性线性增长,随边界情况二次增长——超过大约十二个工具 ...

文件驱动的 Agent,不需要构建步骤

周五晚上还在排 pitch deck 格式的投行分析师,并没有在创造 alpha。他们在给数字画框——那些数字早就从 CapIQ 拉出来了,早就在模型里交叉验证过了,早就被 VP 批过了。横在数据和格 ...