graphiti

graphiti: 它是什么,解决了什么问题,以及为什么它正受到关注

它解决了什么问题

Graphiti 为 AI agent 提供了一种构建 "temporal context graphs"(时序上下文图谱)的方法,解决了静态知识图谱和扁平化 RAG (Retrieval-Augmented Generation) 系统无法处理演变数据的问题。它允许 agent 追踪事实如何随时间变化,维护什么是真理以及何时为真理的历史记录,并避免在有新信息到达时重新计算整个图谱的需求。

它是如何工作的

Graphiti 会从结构化和非结构化数据中自主构建实体、关系和事实的图谱。它使用 "episodes" 作为溯源的原始数据源。图谱中的每个事实都被分配了一个有效期窗口(何时变为真理以及何时被取代),从而实现双时序追踪(bi-temporal tracking)。该系统支持预定义的本体论(通过 Pydantic models 定义)和学习型本体论(结构从数据中涌现)。检索是通过结合语义嵌入、关键词搜索 (BM25) 和图遍历的混合方法来处理的。

它是为谁设计的

它专为构建交互式、上下文感知型 AI agent 的开发者设计,这些 agent 在处理现实世界中频繁变化的数据并需要精确的历史查询时非常有用。

亮点

  • Temporal Fact Management: 追踪事实的有效期窗口,在不删除旧信息的情况下使其失效。
  • Provenance: 每个衍生事实都可以追溯到原始的 "episodes" 数据。
  • Incremental Construction: 新数据实时集成,无需进行批处理重新计算。
  • Hybrid Retrieval: 结合语义、关键词和基于图的搜索,以实现低延迟、高精度上下文。
  • Flexible Backends: 支持多种图数据库,包括 Neo4j, FalkorDB, 和 Amazon Neptune。

Sources