完整题目
GraphRAG在处理增量数据更新时,需要采用什么样的策略来保证知识图谱的实时性和准确性?
本文目录
先说明什么能“增量”
GraphRAG 并非固定只有“社区摘要 + 原始文本”两层。实际产物还可能包括文本单元、实体、关系、社区、社区报告和向量表示。增量更新的关键不是给每层贴标签,而是保存来源文档/文本单元到所有派生物的可追踪关系,使新增、修改、删除和权限变化都能传播。
Microsoft GraphRAG 提供 graphrag update,标准和 fast 方法都支持更新现有索引;配置中的 update_output_storage 保存原索引,输出表还用 period 辅助增量合并。这说明更新能力真实存在,但不代表任何数据都能只重算固定的一两跳,或保证与全量重建完全相同。
更新流水线
- 识别来源变化:用稳定文档 ID、版本和内容哈希区分新增、修改、撤回与权限变化。
- 定位派生物:通过 provenance 表找到受影响的文本单元、实体声明和关系证据。删除时撤销该来源的贡献;只有没有其他证据支持时,实体或关系才进入删除候选。
- 构建 staged generation:提取与消歧结果先进入新版本,社区和报告基于新图计算。局部更新还是全量重建由实际传播范围、质量漂移和成本决定。
- 验证并切换:检查引用完整性、孤儿记录、社区覆盖、删除/ACL 传播和固定查询质量,再原子切换 active generation。