论文 · Zep: A Temporal Knowledge Graph Architecture for Agent Memory
基础信息
- 作者:Preston Rasmussen, Pavlo Paliychuk, Travis Beauvais, Jack Ryan, Daniel Chalef
- 期刊/日期:arXiv preprint, 2025-01-20
- 核心贡献:Zep/Graphiti 将 agent memory 构建为动态双时间知识图谱,融合 episodic raw data、semantic entities/facts 和 community summaries,在 LongMemEval 上用约 1.6k context tokens 达到更高准确率和约 90% 延迟降低。
Q1. 研究动机
传统 RAG 多面向静态文档,而真实 enterprise agent 需要持续吸收对话、业务数据和世界状态更新。
完整历史无法放入上下文窗口,且静态检索难以表示事实随时间变化。作者希望用动态 temporal KG 支持长期 agent memory。
Q2. 核心问题
论文要解决的是:如何从持续对话中构建可更新、可追溯、能表达历史关系的 memory layer,并在长上下文问答中比 full-context 更高效。
关键问题是同时保留 raw episodes、抽取语义事实、处理时间有效期和矛盾失效。
Q3. 现有不足 & 本文改进
现有 RAG 面向静态 corpus;普通摘要压缩丢失细节;MemGPT 证明了 agent memory 需求,但 DMR benchmark 较短且以单事实检索为主。
Zep 的改进是 Graphiti:用 episode subgraph 保存 raw messages/text/JSON,semantic entity subgraph 保存实体和事实边,community subgraph 保存实体社区摘要;每条 fact edge 存 valid time 与 system time;新事实与旧事实矛盾且时间重叠时,系统用 LLM 判断并使旧边失效,同时保留历史。
Q4. 方法流程
输入是消息 episode 及 reference timestamp。系统先从当前消息和前 n=4 条消息中抽取实体,做 embedding/full-text 混合候选检索,再由 LLM 做实体解析和 summary 更新。接着抽取实体间事实,生成 fact embedding,并只在同一实体对之间做 edge deduplication。时间模块根据 reference timestamp 解析绝对/相对时间,给边写入 valid/invalid 与 created/expired 时间。检索时先用 cosine、BM25、BFS 找候选,再用 RRF/MMR/episode mentions/node distance/cross-encoder reranker 排序,最后构造 facts/entities context。
Q5. 实验设计与结论
| 实验 | 目的 | 关键结果与结论 |
|---|---|---|
| DMR(Table 1) | 与 MemGPT 主评测对比 | gpt-4-turbo 下 Zep 94.8%,MemGPT 93.4%,full-conversation 94.4%;gpt-4o-mini 下 Zep 98.2%,full-conversation 98.0%。提升很小,作者也指出 DMR 太短。 |
| DMR benchmark 分析 | 判断该 benchmark 是否足够评估长期记忆 | 每段对话最多约 60 messages,能放进现代上下文;问题多为单轮事实检索且存在模糊措辞,因此不足以代表 enterprise memory。 |
| LongMemEval(Table 2) | 在平均 115k tokens 的长会话上比较准确率、延迟和上下文长度 | gpt-4o-mini full-context 55.4%、31.3s、115k tokens;Zep 63.8%、3.20s、1.6k tokens。gpt-4o full-context 60.2%、28.9s;Zep 71.2%、2.58s。 |
| Question type breakdown(Table 3) | 分析哪些题型受益 | gpt-4o 上 single-session-preference 20.0%→56.7%,temporal-reasoning 45.1%→62.4%,multi-session 44.3%→57.9%,knowledge-update 78.2%→83.3%。 |
| 异常题型分析 | 找出 Zep 的退化场景 | single-session-assistant 下降:gpt-4o-mini 81.8%→75.0%,gpt-4o 94.6%→80.4%,作者认为需要进一步研究和工程改进。 |
Q6. 局限性
作者明确指出:DMR 小而简单,不能充分评估 memory;LongMemEval 中无法成功评估 MemGPT,因为其框架不支持直接 ingestion existing message histories;当前实验只覆盖 Graphiti search 功能的一部分;缺少能同时测试 conversation history 与 structured business data 的 benchmark;生产系统的成本、延迟、可扩展性仍需更多研究。
以下为分析归纳,非原文明确说明:Zep 依赖 LLM 做实体/事实抽取、时间解析和矛盾判断,抽取错误会进入图结构;社区增量更新是启发式,会逐渐偏离完整 label propagation;实验中 Zep 服务在 AWS us-west-2,而 baseline 本地,延迟比较虽对 Zep 不利但环境并不完全同构。
Q7. 学术价值
理论价值:把 agent memory 明确为 episodic + semantic + community 三层 temporal KG,并强调 valid time 与 system time 对动态事实的重要性。
方法价值:提供了可落地的 Graphiti pipeline:实体解析、事实抽取、双时间边失效、混合搜索、图 BFS、reranking 和 context construction。
应用价值:面向企业长期助手、客户会话记忆、业务状态问答,以及需要跨会话综合和 temporal reasoning 的 production agent。
Q8. 延伸研究方向
- 用 fine-tuned extraction/resolution 模型替代通用 LLM,降低成本与延迟。
- 引入 domain ontology,让实体和事实类型更稳定,减少开放式 KG 漂移。
- 设计 benchmark 同时覆盖对话历史、结构化业务数据和实时更新。
- 研究 community refresh 策略,平衡增量 label propagation 的低延迟与全量更新的准确性。
- 系统评估 Graphiti 的不同 search/reranker 组合,区分 cosine、BM25、BFS、cross-encoder 各自贡献。
Q9. 反直觉发现与方法失效分析
- Table 1 中 Zep 在 DMR 上 94.8% 只比 full-conversation 94.4% 高 0.4 点;gpt-4o-mini 下 98.2% 也只比 98.0% 高 0.2 点。作者据此反过来批评 DMR 已接近 full-context 饱和,不能证明长期 memory 能力。
- Table 2 显示 LongMemEval 上 Zep 用 1.6k tokens 反而比 115k full-context 更准、更快,说明“给模型更多上下文”不一定优于结构化压缩和检索。
- Table 3 的 single-session-assistant 明显退化:gpt-4o 从 94.6% 降到 80.4%,gpt-4o-mini 从 81.8% 降到 75.0%。作者承认这是例外,可能是这类问题依赖 assistant 原话细节,而 Zep 的事实/实体抽取和摘要更偏关系信息。
- 整体可信度:LongMemEval 结果有实际意义,尤其是 latency/token 证据;但与 MemGPT 的长评测缺失、系统为生产服务且作者来自 Zep AI,仍需要第三方复现和更细粒度消融。
WeChat Pay