何时使用此技能
设计短期、长期和基于图谱的记忆架构
涉及短期、长期和基于图谱的记忆架构设计时使用此技能。
记忆系统设计
记忆为智能体提供了持久化层,使其能跨会话保持连续性并对累积知识进行推理。简单智能体完全依赖上下文窗口作为记忆,会话结束后丢失所有状态。高级智能体采用分层记忆架构,在即时上下文需求与长期知识保留之间取得平衡。从向量存储到知识图谱再到时序知识图谱的演进,代表了对结构化记忆投入的递增,以改善检索和推理能力。
适用场景
以下情况激活此技能:
- 构建需要跨会话持久化的智能体
- 需要跨对话维护实体一致性
- 实现基于累积知识的推理
- 设计能从历史交互中学习的系统
- 创建随时间增长的知识库
- 构建追踪状态变化的时序感知系统
核心概念
记忆存在于从即时上下文到永久存储的连续谱上。一端是上下文窗口中的工作记忆,提供零延迟访问但会话结束后消失。另一端是永久存储,无限期持久化但需要检索才能进入上下文。
简单向量存储缺乏关系结构和时序结构。知识图谱保留关系以支持推理。时序知识图谱添加有效期以支持时间感知查询。实现选择取决于查询复杂度、基础设施约束和准确性要求。
详细主题
记忆架构基础
上下文-记忆连续谱 记忆存在于从即时上下文到永久存储的连续谱上。一端是上下文窗口中的工作记忆,提供零延迟访问但会话结束后消失。另一端是永久存储,无限期持久化但需要检索才能进入上下文。有效架构在此谱上使用多层结构。
该谱包括工作记忆(上下文窗口,零延迟,易失)、短期记忆(会话内持久,可搜索,易失)、长期记忆(跨会话持久,结构化,半永久)和永久记忆(归档,可查询,永久)。每层具有不同的延迟、容量和持久性特征。
简单向量存储为何不够 Vector RAG 通过将查询和文档嵌入共享嵌入空间来提供语义检索。相似度搜索检索语义最相似的文档。这对文档检索效果良好,但缺乏智能体记忆所需的结构。
向量存储丢失关系信息。如果智能体学到"客户 X 在日期 Z 购买了产品 Y",向量存储在直接询问时能检索此事实,但无法回答"购买了产品 Y 的客户还买了什么?",因为关系结构未被保留。
向量存储也难以处理时序有效性。事实会随时间变化,但向量存储除了通过显式元数据和过滤外,没有机制区分"当前事实"和"过时事实"。
向基于图谱的记忆演进 知识图谱保留实体间的关系。图编码的是实体 A 与实体 B 具有关系 R,而非孤立的文档块。这支持遍历关系的查询,而非仅基于相似度的查询。
时序知识图谱为事实添加有效期。每个事实有"生效时间"和可选的"失效时间"时间戳。这支持时间旅行查询,重建特定时间点的知识状态。
基准性能对比 Deep Memory Retrieval (DMR) 基准提供了各记忆架构的具体性能数据:
| Memory System | DMR Accuracy | Retrieval Latency | Notes |
|---|---|---|---|
| Zep (Temporal KG) | 94.8% | 2.58s | Best accuracy, fast retrieval |
| MemGPT | 93.4% | Variable | Good general performance |
| GraphRAG | ~75-85% | Variable | 20-35% gains over baseline RAG |
| Vector RAG | ~60-70% | Fast | Loses relationship structure |
| Recursive Summarization | 35.3% | Low | Severe information loss |
Zep 相比全上下文基线(GPT-5.2 下 2.58s vs 28.9s)检索延迟降低 90%。此效率来自仅检索相关子图而非整个上下文历史。
GraphRAG 在复杂推理任务中相比基线 RAG 准确率提升约 20-35%,通过社区摘要将幻觉降低最多 30%。
记忆分层架构
第1层:工作记忆 工作记忆即上下文窗口本身。提供对当前处理信息的即时访问,但容量有限且会话结束后消失。
工作记忆使用模式包括:草稿计算(智能体追踪中间结果)、对话历史(保留当前任务的对话)、当前任务状态(追踪活跃目标的进展)、活跃检索文档(持有当前使用的信息)。
优化工作记忆的方法:仅保留活跃信息、在已完成工作移出注意力前进行摘要、将关键信息放在注意力优先位置。
第2层:短期记忆 短期记忆在当前会话内持久化但不跨会话。提供搜索和检索能力,无需永久存储的延迟。
常见实现包括:会话作用域数据库(持续到会话结束)、指定会话目录的文件系统存储、按会话 ID 键控的内存缓存。
短期记忆用途包括:跨轮次追踪对话状态而不塞满上下文、存储后续可能需要的工具调用中间结果、维护任务清单和进度追踪、会话内缓存已检索的信息。
第3层:长期记忆 长期记忆跨会话无限期持久化。使智能体能从历史交互中学习并随时间积累知识。
长期记忆实现从简单的键值存储到复杂的图数据库不等。选择取决于需建模的关系复杂度、所需查询模式和可接受的基础设施复杂度。
长期记忆用途包括:跨会话学习用户偏好、构建随时间增长的领域知识库、维护带关系历史的实体注册表、存储可复用的成功模式。
第4层:实体记忆 实体记忆专门追踪实体(人物、地点、概念、对象)信息以维护一致性。这创建了一个基础知识图谱,使实体在多次交互中被识别。
实体记忆维护实体身份(追踪一次对话中的"John Doe"与另一次中的是同一人)、维护实体属性(随时间存储发现的实体事实)、维护实体关系(追踪发现过程中实体间的关系)。
第5层:时序知识图谱 时序知识图谱为实体记忆扩展显式有效期。事实不再仅是真或假,而是在特定时间范围内为真。
这支持"用户在日期 X 的地址是什么?"这类查询,通过检索该日期范围内有效的事实。当过时信息与新数据矛盾时防止上下文冲突。支持关于实体随时间变化的时序推理。
记忆实现模式
模式1:文件系统即记忆 文件系统本身可作为记忆层。此模式简单、无需额外基础设施,支持与基于文件系统的上下文相同的即时加载。
实现使用文件系统层级进行组织。使用传达含义的命名约定。以结构化格式(JSON、YAML)存储事实。在文件名或元数据中使用时间戳进行时序追踪。
优点:简单、透明、可移植。 缺点:无语义搜索、无关系追踪、需手动组织。
模式2:带元数据的 Vector RAG 增强丰富元数据的向量存储提供带过滤能力的语义搜索。
实现将事实或文档嵌入并与元数据一起存储,包括实体标签、时序有效性、来源归因和置信度分数。查询时将元数据过滤与语义搜索结合。
模式3:知识图谱 知识图谱显式建模实体和关系。实现定义实体类型和关系类型,使用图数据库或属性图存储,维护常用查询模式的索引。
模式4:时序知识图谱 时序知识图谱为事实添加有效期,支持时间旅行查询并防止过时信息导致的上下文冲突。
记忆检索模式
语义检索 使用嵌入相似度搜索检索与当前查询语义相似的记忆。
基于实体的检索 通过遍历图关系检索与特定实体相关的所有记忆。
时序检索 使用有效期过滤检索特定时间或时间范围内有效的记忆。
记忆整合
记忆随时间积累,需要整合以防止无限增长并移除过时信息。
整合触发条件 在记忆大量积累后、检索返回过多过时结果时、按计划定期、或收到显式整合请求时触发整合。
整合流程 识别过时事实、合并相关事实、更新有效期、归档或删除废弃事实、重建索引。
实践指导
与上下文集成
记忆必须与上下文系统集成才能发挥作用。使用即时记忆加载在需要时检索相关记忆。使用策略性注入将记忆放在注意力优先位置。
记忆系统选型
根据需求选择记忆架构:
- 简单持久化需求:文件系统记忆
- 语义搜索需求:带元数据的 Vector RAG
- 关系推理需求:知识图谱
- 时序有效性需求:时序知识图谱
示例
示例1:实体追踪
# Track entity across conversations
def remember_entity(entity_id, properties):
memory.store({
"type": "entity",
"id": entity_id,
"properties": properties,
"last_updated": now()
})
def get_entity(entity_id):
return memory.retrieve_entity(entity_id)
示例2:时序查询
# What was the user's address on January 15, 2024?
def query_address_at_time(user_id, query_time):
return temporal_graph.query("""
MATCH (user)-[r:LIVES_AT]->(address)
WHERE user.id = $user_id
AND r.valid_from <= $query_time
AND (r.valid_until IS NULL OR r.valid_until > $query_time)
RETURN address
""", {"user_id": user_id, "query_time": query_time})
准则
- 记忆架构应匹配查询需求
- 实现记忆访问的渐进式披露
- 使用时序有效性防止过时信息冲突
- 定期整合记忆防止无限增长
- 优雅处理记忆检索失败
- 考虑持久记忆的隐私影响
- 为关键记忆实现备份和恢复
- 监控记忆增长和性能随时间的变化
集成
此技能基于 context-fundamentals 构建。关联技能:
- multi-agent-patterns - 跨智能体共享记忆
- context-optimization - 基于记忆的上下文加载
- evaluation - 评估记忆质量
参考
内部参考:
- Implementation Reference - 详细实现模式
本集合中的相关技能:
- context-fundamentals - 上下文基础
- multi-agent-patterns - 跨智能体记忆
外部资源:
- Graph database documentation (Neo4j, etc.)
- Vector store documentation (Pinecone, Weaviate, etc.)
- Research on knowledge graphs and reasoning
技能元数据
创建日期:2025-12-20 最后更新:2025-12-20 作者:Agent Skills for Context Engineering Contributors 版本:1.0.0
限制
- 仅在任务明确匹配上述范围时使用此技能。
- 输出不能替代针对具体环境的验证、测试或专家评审。
- 若缺少必要输入、权限、安全边界或成功标准,应停下来请求澄清。