MemoryLake
返回全部文章
Tutorial2026 年 9 月 4 日·11 分钟阅读

如何引导 Augment 的 Cosmos Experts 从您的反馈中学习 (2026 指南)

大多数智能体(agent)记忆系统只提供一个设置:开启或关闭。而 Augment 的 Cosmos Experts 提供了三个设置,其中最有趣的一个是几乎无人知晓的选择——Expert 应该立即信任单次反馈,还是等到同一个信号出现多次后再采取行动。

这种区别在文档中有一个专门的名称。简单记忆(Simple memory)会直接写入您告诉它的内容。嘈杂记忆(Noisy memory)则保留一个证据日志,并且“仅在证据足够强时才提升为学习成果”。两者的读取界面完全相同,但行为却截然不同,正确的选择取决于您的信号实际有多可靠。

在做任何决定之前,值得了解的是:记忆功能已经在运行了。“所有模板 Expert(Template Experts)都已启用记忆功能”,当您构建自己的 Expert 时,“除非您明确要求不启用,否则 Advisor 默认也会接入轻量级记忆”。因此,问题不在于是否开启它,而在于其作用域、模型和信号是否是您所期望的。

在开始之前,先划定一个界限。本文讨论的是控制 Augment 内部的记忆。如果您要换用其他工具,问题就不同了——哪些内容可以迁移,哪些不能——从 Augment Code 迁移到 Cursor 涵盖了这方面的内容。

为什么 Expert 的记忆会偏离您的本意

它是默认开启的,且作用域由他人选择

记忆“允许 Expert 跨会话保留有用的上下文”,并“将特定作用域的知识存储在共享虚拟文件系统(VFS)中,以便未来的会话可以应用已建立的偏好、约定和经验,而无需依赖当前的对话”。

作用域是第一个发生不匹配的地方:“Expert 的记忆属于其团队,并按适合工作流的作用域进行隔离。基于代码库的 Expert 通常每个代码库使用一个作用域,而其他 Expert 可以使用全局、频道、项目或特定于用户的作用域。”

共有五种可能的作用域,默认值是适合模板的任何作用域。一个本应限制在代码库级别的 Expert 如果被设置为了全局作用域,就会学习某个团队的约定并将其应用到所有地方。而一个本应是全局作用域的 Expert 如果被限制在代码库级别,则会在每个代码库中重复学习相同的内容。

两条写入路径,只有一条会等待

这是一个值得深入理解的机制,因为它决定了单次随意的评论将如何影响之后的一切。

简单记忆(Simple memory)是默认设置。它将明确、高质量的人类反馈直接写入整理后的知识文件中。这非常适用于本身具有权威性的偏好和常规规则。”
嘈杂记忆(Noisy memory)使用证据日志加上整理后的知识文件。它会随着时间的推移整合较弱的信号,并且仅在证据足够强时才提升为学习成果。”

这也解释了为什么您无法从外部区分它们:“两种模型向读者展示的都是相同的整理后知识视图。区别在于该视图是如何生成的:简单记忆直接记录可信的事实,而嘈杂记忆在将其呈现给未来的会话之前,会先提炼重复的证据。”

因此,一个看起来完全相同的可读知识文件,其背后可能仅有一条评论支持,也可能有十二条相互印证的评论支持。如果您正在调试为什么 Expert 会相信某件事,这是首先需要确定的事情。

并非您的所有操作都具有相同强度的信号

Code Review Memory 运行的是嘈杂模型,其文档对权重的规定异常具体:“明确的人类反馈比反应或推断出的结果具有更高的权重,因此强反馈可以立即转化为有用的记忆,而较弱的信号则必须重复出现。”

实际上分为三个层级。书面评论可以立即生效。对智能体发现的反应,或者代码更改被合并的事实,则需要重复出现。系统还会进行过滤:“常规确认、机器人更新和仅限流程的评论都会被过滤掉。”

这是一个合理的设计。这也意味着一句随口的“行吧,可以”并不是中立的——它会被记录为一个弱信号,累积起来就会产生影响。

它会提示您,但大多数人并没有注意

有一个否决步骤,很容易被忽略:“在交互式会话中,当它记住某些内容时会提示您,以便您可以进行纠正或否决。”

这里起关键作用的词是交互式(interactive)。后台 Expert——而 Code Review Memory 明确是“一个后台模板 Expert”——在拉取请求(PR)合并时进行捕获,此时没有任何人在流程中提出反对。

它会暴露冲突,而不是解决冲突

在读取路径上:“在相关工作开始时,Expert 会加载当前作用域的记忆。它会应用匹配的指南,并在当前证据与记住的规则冲突时标记差异。”

标记差异比默默应用过时的规则要好,但这并不等同于修复它。过时的条目会一直保留,直到有人对其进行编辑,这也是检测 AI 记忆中的冲突中所讨论的普遍问题。

人们尝试过的方法

关闭记忆功能。 这是可行的——您可以告诉 Advisor 不要接入记忆——但这会把有用的部分和嘈杂的部分一起丢弃。从持续工作中获得的学习成果,恰恰是指令(instructions)无法捕获的。

将所有内容都写进 Expert 的指令中。 Augment 直接指出了这一点:“对于明确的工作流,使用技能(skills)或 Expert 指令;对于通过持续工作学到的上下文,使用记忆。”在评审方面:“Code Review Memory 并不等同于为每个代码库创建一个技能。技能提供明确、可重用的指令和工作流。记忆则是不断演进的、有证据支持的上下文,评审 Expert 会自动为他们正在评审的代码库加载这些上下文。”这是两项不同的工作,强迫一个机制同时做这两件事只会让两边都做得更糟。

使用最宽的作用域,以便所有内容在所有地方都可用。 官方指南恰恰相反:“使用与工作流匹配的最窄稳定作用域,例如用于代码评审的代码库,或用于反馈会诊的频道。”宽泛的作用域并不会让 Expert 获取更多信息,反而会让检索变得更加嘈杂。

将所有内容切换为嘈杂记忆,因为这听起来更严谨。 这也违反了文档的建议:“除非工作流确实需要重复的、加权的证据,否则首选简单记忆。”嘈杂记忆在设计上就会延迟学习。在您的反馈具有权威性的工作流中,这种延迟完全是净成本。

将记住的内容视为定论。 “将记忆视为不断演进的上下文,而不是不容置疑的规则。Expert 应该暴露矛盾,而不是忽略当前的证据。”记忆是一个带有历史记录的声明,而不是一个决定,这也是记忆溯源背后的区别。

假设另一个团队的 Expert 会获取这些记忆。 事实并非如此:“每个 Expert 团队拥有并维护自己的记忆,而不是修改另一个团队整理后的知识。”所有权是一个边界,而不是一个可以绕过的麻烦。

解决方案:设置作用域,然后选择模型,最后阅读写入的内容

步骤 1:为每个 Expert 选择最窄的稳定作用域

梳理您的 Expert,并为每一个写下仍能覆盖其工作的最小作用域。在 Augment 的表述中,稳定(stable)这个词起到了关键作用——目标是下个月不需要扩大的最窄作用域,而不是想象中能达到的最窄作用域。

文档本身的示例就是正确的直觉:“用于代码评审的代码库,或用于反馈会诊的频道”。处理单个代码库的评审 Expert 不需要全局作用域。监控单个频道的会诊 Expert 不需要项目作用域。

两个问题可以解决大多数情况。在这里学到的知识在其他地方会是错的吗?如果是,请缩小作用域。您是否必须在其他三个地方重新教授同样的内容?如果是,这表明该知识并不是特定于该 Expert 的——请把这个想法留到步骤 3。

在此处顺便确定可见性,因为它随作用域一起移动:“记忆可以与组织共享,也可以保留在用户的 VFS 中,这取决于 Expert 的可见性。”

步骤 2:将记忆模型与信号的可靠性相匹配

每个 Expert 对应一个问题:该 Expert 接收到的反馈本身是否具有权威性?

如果人类输入了纠正,且该纠正完全正确,请使用简单记忆(simple memory)。例如您已经决定的偏好、常规规则、约定。它会“将明确、高质量的人类反馈直接写入整理后的知识文件中”,即时性就是其特点。

如果信号是混合的——反应、合并结果、推断、严肃程度不一的评论——请使用嘈杂记忆(noisy memory),让证据日志发挥作用。Code Review Memory 就是典型案例,原因正如文档所述:“评审评论、对智能体发现的反应、已解决的修改请求以及修改结果都带有不同的置信度。”

然后应用第二个官方过滤器,这关乎数量而非机制:“仅在信息可能改变未来的决定或关注领域时才保存信息。”记录一切的 Expert 会生成一个无人阅读的知识文件,而无人阅读 of 知识文件正是过时条目堆积的地方。

具体到评审路径,要清楚哪些内容正在被监控,以便在评审中深思熟虑:它“记录有用的人类评论、对智能体发现的反应、已解决的修改请求以及修改结果”。您对智能体发现的反应就是训练数据。请这样对待它。

步骤 3:阅读知识文件,并移除非特定于 Expert 的事实

培养两个习惯,其中第二个是结构性修复。

第一,切实去阅读它。记忆被写入“其自身 VFS 目录下的可读 Markdown”,在评审端,存储拆分非常明确:“原始痕迹日志(breadcrumb log)保留了从评审中收集的证据,而整理后的知识文件包含评审 Expert 消费的简明指南。”阅读整理后的文件以查看您的 Expert 相信什么;当您想知道原因时,阅读痕迹日志。制定一个计划——每月一次就足够了——因为后台 Expert 在捕获时没有交互式否决步骤,而这是唯一的评审环节。

第二,注意哪些内容不断出现在多个 Expert 的文件中。您的架构决策、您的领域词汇、哪个服务拥有什么、为什么某个被废弃的东西仍然存在。这些知识并不是某个特定角色通过自身工作学到的——它们是您的组织所掌握的知识,而按 Expert 划分作用域意味着每个 Expert 都要单独学习它,否则就会出错。

Augment 的作用域建议对于它所针对的知识是正确的,但它对于真正共享的知识没有解决方案。这属于一个不属于任何 Expert 的层。只需三个步骤即可设置 MemoryLake

步骤 1:创建 API 密钥

登录并从您的仪表板生成一个 API 密钥。它不局限于某个 Expert、团队或代码库,这一属性对于无论哪个 Expert 提问都成立的事实至关重要。

创建 MemoryLake API 密钥,使跨团队事实存在于任何单个 Expert 的作用域之外
创建 MemoryLake API 密钥,使跨团队事实存在于任何单个 Expert 的作用域之外

步骤 2:上传您的第一批记忆

放入您发现的在多个 Expert 文件中重复出现的内容:架构决策及其原因、领域术语、服务所有权、常规约束、您在评审中不断给出的答案。

将非特定于 Expert 的事实上传到 MemoryLake
将非特定于 Expert 的事实上传到 MemoryLake

将通过工作学到的材料留在原处。一个 Expert 记录的它在某个代码库中停止标记的误报,正是应该保留在该代码库作用域内的内容。

步骤 3:连接您的 AI 和智能体

将您的智能体指向该存储库。一个新的 Expert 将从您组织的事实开始,而不是从零开始,并且对共享事实的纠正只需进行一次,而不是每个 Expert 进行一次——这就是为团队设置共享 AI 记忆的意义所在。

通过 MCP 和 API 将 Augment 及其他智能体连接到 MemoryLake
通过 MCP 和 API 将 Augment 及其他智能体连接到 MemoryLake

这在实践中带来了什么改变

第一个改变是,缩小作用域不再以牺牲覆盖面为代价。目前,缩小 Expert 的作用域意味着它对您组织的了解变少。当共享事实来自其他地方时,狭窄的作用域仅意味着更干净的历史记录。

第二个改变是,模型的选择变得简单。权威反馈用简单模型,混合信号用嘈杂模型——而且两者都不必承载背景事实,而背景事实正是促使人们走向宽作用域和过度保存的原因。

第三个改变是,审查习惯变得易于执行。一个仅限于 Expert 真正学到内容的整理后文件足够简短,可以每月阅读一次,这就是审计您的 AI 记住了什么与仅仅“打算去审计”之间的区别。

Cosmos Expert 记忆的最佳实践

  • 默认其已开启。 所有模板 Expert 都启用了它,且 Advisor 默认会将其添加到自定义 Expert 中。
  • 使用最窄的稳定作用域。 用于代码评审的代码库,用于会诊的频道——这些都是 Augment 自己的示例。
  • 首选简单记忆。 仅在信号置信度确实存在差异时才切换到嘈杂记忆。
  • 仅保存可能改变未来决定的内容。 这是官方的数量过滤器,也是保持文件可读性的关键。
  • 注意您在评审中的反应。 评论、反应、已解决的请求和结果都会被捕获,且权重不同。
  • 不要指望后台工作中有否决步骤。 它只出现在交互式会话中;Code Review Memory 在后台运行。
  • 每月阅读一次整理后的文件,在感到意外时阅读痕迹日志。 一个展示结论,另一个展示证据。
  • 尊重所有权边界。 每个 Expert 团队维护自己的记忆,不编辑另一个团队的记忆。

结论

Augment 提供了比大多数工具暴露得更多的智能体记忆控制权:五个作用域、两个具有完全不同语义的写入模型、一个有文档记录的信号层级,以及您可以检查的可读文件。

按照文档推荐的方式使用这些控制项——默认采用窄作用域、简单记忆,并克制地保存内容——然后处理作用域无法解决的一种情况:每个 Expert 都需要的事实。这些不是某一个角色的学习成果,将它们保留在共享层中,才能让每个 Expert 的记忆保持应有的精简。

常见问题

Augment Experts 的记忆功能是默认开启的吗?

是的。“所有模板 Expert 都已启用记忆功能”,对于使用 Cosmos Advisor 构建的自定义 Expert,“除非您明确要求不启用,否则 Advisor 默认也会接入轻量级记忆”。

简单记忆和嘈杂记忆有什么区别?

时机和证据。简单记忆“将明确、高质量的人类反馈直接写入整理后的知识文件中”。嘈杂记忆“使用证据日志加上整理后的知识文件”,并且“仅在证据足够强时才提升为学习成果”。两者向读者展示的都是相同的整理后视图,因此您无法通过阅读输出来判断使用的是哪一种。

我应该使用哪种作用域?

最窄的稳定作用域。Augment 的指南是“使用与工作流匹配的最窄稳定作用域,例如用于代码评审的代码库,或用于反馈会诊的频道”。可用的选项包括代码库(repository)、全局(global)、频道(channel)、项目(project)和特定于用户(user-specific)。

我可以阻止 Expert 记住某些内容吗?

在交互式会话中可以:“当它记住某些内容时会提示您,以便您可以进行纠正或否决。”后台 Expert 在捕获时没有该提示——Code Review Memory 在拉取请求合并时收集信号——因此对于这些 Expert,控制手段是定期阅读整理后的知识文件。

我对智能体发现的反应算作反馈吗?

算,但权重较低。Code Review Memory “记录有用的人类评论、对智能体发现的反应、已解决的修改请求以及修改结果”,并且“明确的人类反馈比反应或推断出的结果具有更高的权重”,因此较弱的信号需要重复出现才能转化为记忆。

我应该使用记忆还是技能来记录团队约定?

技能用于明确的工作流,记忆用于学到的内容。Augment 两次阐明了这一点:“对于明确的工作流,使用技能或 Expert 指令;对于通过持续工作学到的上下文,使用记忆”,以及“技能提供明确、可重用的指令和工作流。记忆则是不断演进的、有证据支持的上下文”。对于无论何种工作流每个 Expert 都需要的事实,请参阅持久记忆究竟是什么

相关阅读