将让Agent越来越智能、高效和人性化。随着人工智能技术的不断发展,Agent(智能代理)将具备以下特点:1. **智能水平提升**:Agent将具备更强的学习能力,能够通过大数据分析和机器学习不断优化自身算法,提高决策准确性和预测能力。2. **效率提高

摘要:引言 从本质上来说,AI Agent 仍然是一种工具。但与软件工程领域中的其他工具不同,我们对 AI Agent 怀有更高、也更复杂的期待。这种期待源于 AI 能力的加持——我们希望它不仅仅提升效率,而是真正解放生产力。 在这一愿景下,&a
引言 从本质上来说,AI Agent 仍然是一种工具。但与软件工程领域中的其他工具不同,我们对 AI Agent 怀有更高、也更复杂的期待。这种期待源于 AI 能力的加持——我们希望它不仅仅提升效率,而是真正解放生产力。 在这一愿景下,"长期记忆"成为关键能力之一。它的意义在于,让 Agent 不再只是被动执行指令,而是能够在持续交互中逐渐变得更智能、更贴近使用者,甚至越来越"懂我"。 在《AI Agent 的记忆系统:从必要性到工程实践》一文中,我们已经系统阐述了 Agent 记忆的分类及其作用。本文则进一步聚焦其中的长期记忆能力,尝试从工程实践的角度展开具体落地方案。 在正式展开之前,先简单回顾一下长期记忆与短期记忆的区别。 短期记忆:存储会话中产生的各类消息,包括用户输入、模型回复、工具调用及其结果等。这些消息直接参与模型推理,实时更新。当消息累积导致上下文窗口超出限制时,需要通过压缩、卸载、摘要等上下文工程策略进行处理。 长期记忆:Agent 在多次交互与会话之间持久化存储信息的系统。它相当于智能体的"个人档案"或"知识库",用于保留需要跨会话记忆的关键信息,如用户偏好、重要事实、从历史会话中积累的经验与知识等。其核心目标是实现个性化和持续学习。 Agent 长期记忆的工程实现,核心可以归结为两个基本问题: 如何维护长期记忆 —— 包括长期记忆的新增、更新与删除; 如何使用长期记忆 —— 即在实际推理与决策过程中,如何高效、准确地检索与注入相关记忆。 围绕这两个问题,我们需要首先明确长期记忆的存储载体。在当前主流的工程实践中,长期记忆通常依赖两类基础设施:VectorStore(向量数据库) 与 GraphStore(图数据库)。接下来,我们将从这两种载体的特性与适用场景出发,逐步展开长期记忆的工程化实现方式。 以下内容我们将结合mem0进行说明,github地址:https://github.com/mem0ai/mem0 一、长期记忆的载体 1.1 VectorStore:语义检索的基石 向量数据库是当前长期记忆最主流的存储载体。其核心思路是:将文本信息通过 Embedding 模型转换为高维向量,存储在专门的向量索引结构中。检索时,将查询语句同样转换为向量,通过余弦相似度或内积等度量方法,找出语义最相近的记忆条目。 这种方式的优势非常直接——语义相似即可命中。即便用户的表述与存储时的措辞完全不同,只要语义接近,向量检索就能找到对应的记忆。例如,Agent 存储了"用户不喜欢辣食",当下次对话中用户问到餐厅推荐时,即便没有提及"辣",Agent 也能从向量空间中召回这条偏好。 常见的 VectorStore 选型包括: 方案 特点 适用场景 Chroma 轻量级,易集成,支持本地持久化 本地开发、小规模部署 Qdrant 高性能,支持丰富的过滤条件 生产环境,记忆量较大 Pinecone 全托管,开箱即用 快速原型、云端部署 pgvector PostgreSQL 扩展,与关系数据融合 已有 PG 栈的团队 Faiss 极致性能,适合批量检索 离线分析、大规模召回 向量数据库的局限同样明显:它擅长处理孤立事实,但对于实体间关系的表达能力较弱。"张三是李四的上司"和"李四喜欢咖啡"对向量数据库而言没有本质差异,它无法自然地表达和利用实体之间的关联结构。这正是图数据库要解决的问题。 1.2 GraphStore:关系知识的天然载体 图数据库将知识以节点(Node)和边(Edge) 的形式组织,节点代表实体(人、地点、事件等),边代表实体间的关系。这种结构天然适合表达复杂的关联信息。 以 mem0 的 Graph Memory 实现为例,当 Agent 处理"Alice 在 GraphConf 2025 上认识了 Bob"这条信息时: 向量数据库:将这句话嵌入为一个向量,语义检索时可以找到它; 图数据库:提取出 Alice、Bob、GraphConf 2025 三个节点,以及 MET_AT 关系边,形成结构化的知识图谱。 后续当用户问"Alice 认识哪些人?"时,图数据库可以直接沿着边遍历,精确返回所有相关节点,而不依赖语义相似度的模糊召回。
阅读全文