getzep/graphiti

Build Real-Time Knowledge Graphs for AI Agents

해결하는 문제

Graphiti는 자주 변화하는 데이터에 취약한 정적 지식 그래프와 전통적인 RAG(Retrieval-Augmented Generation)의 한계를 해결합니다. AI 에이전트가 사실이 시간이 지남에 따라 어떻게 변화하는지 추적할 수 있는 '컨텍스트 그래프'를 유지할 수 있게 하여, 현재 참인 정보와 과거에 참이었던 정보를 구분할 수 있도록 합니다. 새로운 데이터가 도착해도 전체 그래프를 다시 계산할 필요가 없습니다.

작동 방식

Graphiti는 구조화된 데이터와 비구조화된 데이터에서 시계열 지식 그래프를 구축합니다. "에피소드"(원시 소스 데이터)를 진실의 기준으로 삼아, 여기서 엔티티와 관계를 도출합니다. 각 사실은 유효 기간(시작 및 종료 시간)을 가지며, 새로운 정보가 모순될 경우 오래된 사실은 삭제되는 대신 무효화됩니다. 이 프레임워크는 Pydantic 모델로 정의된 사전 정의된 온톨로지와 데이터에서 자발적으로 형성되는 학습된 온톨로지 모두를 지원합니다. 검색은 의미적 임베딩, 키워드 검색(BM25), 그래프 탐색을 결합한 하이브리드 방식으로 처리됩니다.

대상 사용자

진화하는 현실 세계의 기업 데이터나 사용자 상호작용을 다루는 인터랙티브하고 컨텍스트 인식 AI 에이전트를 개발하는 개발자에게 적합합니다. 과거 정확성과 출처(Provenance)가 중요한 경우에 최적입니다.

주요 특징

  • 시계열 사실 관리: 사실의 유효성을 시간에 따라 추적하며, 과거 컨텍스트를 보존합니다.
  • 출처 추적: 모든 도출된 사실은 해당 사실을 생성한 특정 "에피소드"(원시 데이터)로 거슬러 올라갑니다.
  • 인크리멘탈 업데이트: 배치 재처리 없이 실시간으로 새로운 데이터를 통합할 수 있습니다.
  • 하이브리드 검색: 의미적, 키워드, 그래프 기반 검색을 결합하여 고정밀, 저지연 쿼리를 가능하게 합니다.
  • 플러그인형 백엔드: Neo4j, FalkorDB, Amazon Neptune 등 다양한 그래프 데이터베이스를 지원합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트