getzep/graphiti
Build Real-Time Knowledge Graphs for AI Agents
解決的問題
傳統的 RAG 方法通常依賴於靜態數據摘要和批處理,難以應對頻繁變化的資訊。Graphiti 透過追蹤事實隨時間的變化,而非僅僅儲存靜態文件塊,解決了 AI Agent 需要維持連貫且不斷演進的世界觀的需求。
工作原理
Graphiti 構建了一個由實體(節點)、事實/關係(邊)和事件(原始數據源)組成的時序上下文圖。與靜態圖不同,它使用時間有效性窗口來追蹤事實何時變為真,以及何時被取代。它支援增量數據更新,這意味著隨著新資訊的攝入,圖會即時演進,而無需進行完整的重新計算。它還使用混合檢索,結合了語義嵌入、關鍵字搜尋和圖遍歷。
適用對象
專為構建互動式、上下文感知型 AI 應用以及需要豐富結構化記憶和查詢歷史上下文能力的生產級 AI Agent 的開發者而設計。
亮點
- 時序事實管理: 追蹤事實隨時間變化的有效性,允許查詢當前的事實與過去的事實。
- 溯源: 每個派生事實都可以追溯到其原始數據(事件)。
- 混合檢索: 結合語義、關鍵字和基於圖的搜尋,實現高精度查詢。
- 增量構建: 無需批量重新計算即可立即整合新數據。
- 靈活的本體論: 支援開發者定義的模式(透過 Pydantic)以及從數據中學習到的結構。