AI资讯

AWS 发布用 S3 Vectors 为 NVIDIA NAT 构建 Agent 记忆的教程

AWS 发布用 S3 Vectors 为 NVIDIA NAT 构建 Agent 记忆的教程

来源AWS Machine Learning查看原文

速览

  • AWS 给出 S3 Vectors 作为 NAT 记忆后端的完整代码与部署方案
  • 自定义记忆后端只需实现 MemoryEditor 的三个方法
  • S3 Vectors 单索引上限 20 亿向量,按用量计费无空闲成本
  • auto_memory_agent 可自动捕获与检索记忆,无需 LLM 显式调用工具
  • 多 Agent 通过 agent_id、team_id 元数据过滤共享记忆
  • EKS 部署配合 IRSA 做最小权限的向量访问控制
  • 可用 nat eval 对比开启与关闭记忆的效果
  • 记忆效果数据为方向性预期,非实测基准

AWS Machine Learning 博客发布技术教程,介绍如何将 Amazon S3 Vectors 作为 NVIDIA NeMo Agent Toolkit(NAT)的持久化记忆后端,并部署在 Amazon EKS 上。文章给出完整实现路径:创建向量桶与索引、实现自定义 MemoryEditor 插件、通过 YAML 配置接入 auto_memory_agent 工作流,并以多 Agent 投资研究场景演示。S3 Vectors 单索引支持最多 20 亿向量,索引维度 1024 以匹配 Amazon Titan Text Embeddings V2,距离度量使用 cosine。NAT 目前内置 Mem0、MemMachine、Redis、Zep 四种记忆提供方,本文方案面向需要弹性向量存储与强写一致性的生产级多 Agent 系统。

关键事实

  • NAT 是 NVIDIA 的开源 Agent 框架,兼容 Strands Agents、LangChain、LlamaIndex、CrewAI 及自定义实现,本教程测试版本为 1.6
  • NAT 内置记忆提供方为 Mem0、MemMachine、Redis、Zep 四种,自定义后端需实现 MemoryEditor 接口的 add_items()、search()、remove_items() 三个方法
  • S3 Vectors 单索引支持最多 20 亿向量,无需容量规划,按存储、写入、查询计费,无空闲计算成本
  • 教程索引使用 1024 维 float32、cosine 距离度量,与 Amazon Titan Text Embeddings V2 输出维度对齐
  • 示例工作流使用 anthropic.claude-sonnet-4-20250514 模型,temperature 设为 0.3,区域为 us-west-2
  • 多 Agent 协作通过 metadata 中的 agent_id、team_id、is_shared 字段做过滤,实现同一索引内的记忆共享与隔离

本站视角

对国内做 Agent 的团队来说,这篇教程的价值不在代码本身,而在于它把「Agent 记忆」从概念推进到了可复制的工程范式。具体影响三类人:一是自建多 Agent 系统的团队,NAT 的 MemoryEditor 接口只有三个方法,意味着记忆后端是可替换的,不必被某一家向量数据库绑定,这对已经在用 Milvus、Qdrant 或国内向量服务的团队是直接可迁移的设计参考;二是用 AWS 的中小团队,S3 Vectors 按用量计费、无空闲计算成本、单索引 20 亿向量的定位,明显是针对「记忆数据长期累积但查询稀疏」这一特征做的成本优化,比常驻向量数据库集群更划算;三是关注 Agent 评估的人,文章用 nat eval 对比开/关记忆的 accuracy、groundedness、token_usage、latency 四项指标,这套方法论比单纯宣称「记忆让 Agent 更聪明」要扎实。 我们的判断是:这是一篇高质量的工程教程,但不是技术突破。S3 Vectors 的能力(语义检索、元数据过滤、强一致性)在向量数据库领域并不新鲜,AWS 的差异化在于把它和 S3 的存储经济性、IAM 权限体系、EKS 运维栈打包在一起。真正值得注意的是 NVIDIA NAT 的定位——它明确宣称框架无关,兼容 LangChain、LlamaIndex、CrewAI,这是在争夺 Agent 编排层的标准位置,而 AWS 愿意为其写官方教程,说明双方在这个层面有共同利益。 需要提醒读者的是原文的可疑之处:文章在「Evaluating memory impact」一节明确承认,groundedness 提升、token 下降、延迟小幅上升、重复工作减少这四点都是「directional expectations, not benchmarked measurements」,即基于架构特性的推断而非实测。这类表述在厂商博客中很常见,读者不应把它当作性能承诺。此外,文章没有给出任何具体的准确率提升数字、token 节省比例或延迟绝对值,也没有说明测试数据集规模,因此这套方案的实际收益仍需团队在自己的负载上验证。最后,教程默认使用 Amazon Titan Text Embeddings V2 和 Claude Sonnet 4,对国内团队而言这两项都有可用性限制,迁移时需要替换嵌入模型并重新对齐索引维度。

背景与影响

这是 AWS 关于 Agent 记忆工程的第二篇博客。上一篇《Building persistent memory for multi-agent AI systems with Amazon S3 Vectors》论证了记忆工程是生产级多 Agent 系统的基础能力,并提出 S3 Vectors 满足语义检索、丰富元数据、强一致性与弹性扩展四项架构要求。本篇从架构转向实现,把 S3 Vectors 接入 NVIDIA 的 NAT 框架。NAT 本身提供编排、性能剖析、评估与超参数优化四类能力,其记忆模块通过插件接口扩展,内置 Mem0、MemMachine、Redis、Zep。AWS 选择用自定义 provider 的方式接入 S3 Vectors,理由是内置方案难以覆盖需要弹性向量存储、强写一致性和低成本扩展到数十亿向量的场景。部署层面,文章把 EKS 定位为需要完全运维控制权的团队的选择,并指出若不想承担运维开销,可用 Amazon Bedrock AgentCore 作为全托管替代。这意味着 AWS 正在把 S3 Vectors 推向 Agent 记忆这一具体落地场景,同时与 NVIDIA 的开源 Agent 框架形成互补而非竞争关系。

本文由 AI 辅助整理自公开信源,事实部分以原文为准;「本站视角」一节为编辑部判断,欢迎指正。版权归原作者所有,如有异议请联系我们。

编辑与审校

AI大海啸编辑部

负责选题、审校与「本站视角」的判断。

编辑流程与 AI 使用说明