企业工作涵盖随时间变化的AI 智能体必须先对其进行重建,然后再进行贡献。
为了向智能体提供这种必要的环境,我们的团队使用 NVIDIA NemoClaw 构建了 内存驱动的办公室主任。它维护着人类可读的知识层 (称为自我模型) :相关人员、项目、优先级和工作模式的智能体内存。定期作业会定期审查新活动、跟踪义务,并随着时间的推移整合用户决策。我们的经验表明,有用的智能体内存需要结构、选择性检索和治理,而不仅仅是存储。
本文将介绍使用 NVIDIA NemoClaw 构建的内存驱动型智能体如何提高实际企业工作流的工作效率。它还分享了您可以应用于自己的智能体的五个设计课程:
- 在日常工作中维护上下文,以提高任务质量
- 将证据、知识和行动分开,帮助智能体做出更明智的判断
- 设计内存驱动的智能体可以优先考虑用户意图而非短期紧急性
- 允许用户纠正智能体的决策以建立信任
- 借助 NVIDIA OpenShell 实现安全与授权边界
在日常工作中维护上下文
对话历史记录提供了短期的连续性,但它混合了当前的优先事项与过去的决定和临时请求。检索可以找到相关的源材质,但智能体仍然必须连接不同时间的信息。
思考项目状态问题。答案可能取决于先前的决定、后续消息中的更正、未解决的义务,以及是否知道两个不同的名称是指同一个项目。
要解决这些问题,您可以使用在结构化 Markdown 页面中维护这些关系的自我模型。它会整理有关人员、项目、优先事项、目标、概念和重复性工作模式的信息。其架构定义了索引、交叉参考、来源和生长限制。
自身模型存储衍生解释,而不是替换源证据。将两者分开有助于开发者确定错误答案是否来自证据、记忆维护、检索或模型的最终决策。
将证据、知识和行动分开
您可以使用内存驱动的办公室主任提供的三层调优功能:
证据 → 知识 → 治理 → 执行
Evidence 支持对自身模型进行更新。对于每项任务,智能体都会检索一组有边界的相关上下文。然后,智能体在 NVIDIA NemoClaw 示例中使用该上下文。该架构如图 1 所示。

此示例存储两种信息:
- 知识:人员、项目、优先事项和工作模式
- 判断:商品是否需要关注、排名以及用户是否忽略该商品
Markdown 智能体内存用于存储知识。SQLite 分类帐可存储义务、排名、更正和审计事件。这种设计保留了智能体的判断,无需将其写入源消息,如读取标志、标签或文件夹。
内存页面可能会显示协作者更喜欢 Slack。代理可以使用该上下文来推荐 Slack,但发送消息仍取决于凭据、工具权限、运行时策略和用户审批。
上下文可以为操作提供信息,但无法授权。
优先考虑用户意图而非短期紧迫感
收到的请求通常会自我描述为紧急,但紧急程度并不一定反映用户的优先级。因此,意图门会为与用户声明的优先级相关的义务保留最高级别。
在所提供的公开配方中,紧急费用政策证明仍然可见,但排名低于与声明的优先级相关联的较安静的请求。您的 NVIDIA NemoClaw 可以解释这种关系,而确定性代码会强制执行层大小、溢出行为和排名顺序。
允许用户纠正智能体
持久内存可以像保留正确的判断一样轻松地保留错误的判断。使用 recipe,您可以将义务移动到另一层或忽略它,之后智能体运行会保留该决定。每次更改都会记录在仅附加的审核追踪中。
重复的校正模式可以更新一个小的、可读的偏好策略。用户可以检查、编辑或删除该策略,而不是将偏好设置隐藏在模型状态中。
反馈回路保持可见:
智能体判断用户校正审核事件偏好更新
添加内存以提高智能体任务性能
将内存驱动的办公室主任添加到 NemoClaw 后,多个智能体任务得到了显著改进,如表 1 所示。代理内存基准测试和评估示例包含在示例存储库中。示例存储库比较了与自身模型执行多轮检索的代理检索增强生成 (RAG)基准。
| 指标 | 问题数量 | 代理式 RAG 基准 | 自模型 | 差异 |
|---|---|---|---|---|
| 总体准确性 | 186 | 82.8% | 90.9% | < 8.1 pp |
| 难题 | 31 | 67.7% | 87.1% | < 19.4 pp |
| 跟踪随时间推移而变化的事实 | 5 | 60.0% | 100.0% | < 40.0 pp |
| 时间点推理 | 6 | 33.3% | 66.7% | ~ 33.3 pp |
| 实体消歧义 | 15 | 66.7% | 86.7% | < 20.0 pp |
| 多源合成 | 73 | 87.7% | 94.5% | ~ 6.8 pp |
| 根据语料库准确回答 | 13 | 100.0% | 92.3% | -7.7 pp |
| 单跳查找 | 30 | 86.7% | 83.3% | -3.3 pp |
| 引文范围 | 186 | 92.5% | 97.8% | < 5.4 pp |
在运行时执行边界
这种分离通过 NVIDIA NemoClaw 和 NVIDIA OpenShell 安全运行时实现,适用于自主智能体。NemoClaw 将该示例与 NVIDIA OpenShell 集成并管理其生命周期,而 NVIDIA OpenShell 则在沙盒中运行智能体,并为文件系统、进程和网络访问提供治理和策略执行。对于受管理推理和 MCP 连接,凭据将保留在沙盒之外。
这一点很重要,因为内存和检索到的内容是模型的输入,而不是受信任的安全策略。如果智能体误解了该上下文,或者遵循恶意指令,它仍然在运营商定义的运行时边界内运行。它们限制了智能体的访问权限和故障的潜在影响。
开始构建智能体内存
要根据您自己的 NemoClaw 示例调整本文中介绍的内存设计,请在 NVIDIA/nemoclaw-community GitHub 存储库中查看开源的内存驱动型办公室主任 recipe及其设计方案。
recipe 将此示例打包为适用于 NemoClaw 的可部署的 Hermes 配置文件:
- 结构化内存架构
- 耐用型承付款分类帐
- 有限排名逻辑
- 用户校正和审核路径
- 定期内存维护
- 合成消息和内存页面
- 离线演练
- 一套单元测试
示例人员、组织、项目和信息均已发明。记录的模型决策可用于离线演练中的推理。然后,代码会应用排名、校正、持久性和验证行为。
当前 recipe 侧重于内存基础。它不会发送消息或修改源系统。此范围允许您检查设计,而无需关联工作场所账户。实时连接器需要单独处理凭据、隐私、保留和删除。
详细了解 NVIDIA NemoClaw 和 NVIDIA OpenShell。