AI Sparkup

최신 AI 쉽게 깊게 따라잡기⚡

Graphiti – AI 에이전트를 위한 시간 인식 컨텍스트 그래프 엔진

Graphiti는 AI 에이전트의 메모리·컨텍스트를 시간 인식 그래프(temporal context graph)로 구축·쿼리하는 오픈소스 프레임워크다. 사실(fact)이 언제 참이었고 언제 바뀌었는지를 그래프 엣지에 저장해, 에이전트가 단순 채팅 기록이나 문서 청크가 아닌 구조화된 지식을 활용할 수 있게 한다. Zep의 에이전트 메모리 인프라 핵심 엔진으로 개발됐으며, arXiv 논문(2501.13956)으로도 발표됐다. GitHub ★25.6k.

컨텍스트 그래프란

기존 지식 그래프가 “A는 B이다”를 정적으로 저장하는 반면, 컨텍스트 그래프는 “A는 B였다(2026년 3월 기준)”처럼 유효 기간(validity window)을 갖는 사실을 저장한다. 현실 세계의 변화를 추적하고, 모든 파생 사실을 원본 데이터(에피소드)로 소급할 수 있다.

구성 요소저장 내용
엔티티(Entities)사람·제품·정책·개념 — 시간에 따라 요약이 진화
사실/관계(Facts/Edges)엔티티 삼중쌍(A→관계→B) + 시간적 유효 범위
에피소드(Episodes)원본 데이터 스트림 — 모든 파생 사실의 출처
커스텀 타입Pydantic 모델로 정의한 개발자 정의 온톨로지

Graphiti가 기존 RAG와 다른 점

  • 정적 청크 대신 관계와 시간 축을 함께 인덱싱한다
  • 새 데이터 입력 시 그래프 전체를 재계산하지 않고 증분 업데이트한다
  • 검색 시 의미 검색 + 키워드 검색 + 그래프 순회를 하이브리드 결합한다
  • 과거 상태를 기준으로 시점 쿼리가 가능하다 (“3월 기준으로 A의 역할은?”)

주요 활용 사례

에이전트 메모리: 매 인터랙션마다 컨텍스트 그래프가 업데이트되어, 에이전트가 사용자의 과거 선호·결정·변경 사항을 구조적으로 기억한다.

엔터프라이즈 데이터 통합: 비정형·정형 엔터프라이즈 데이터를 지속적으로 그래프에 통합해 최신 상태를 유지한다.

복잡한 멀티홉 질문: 단순 키워드 검색으로 답하기 어려운 다단계 관계 질문에 그래프 순회로 답한다.

Graphiti vs Zep

Graphiti는 오픈소스 엔진, Zep은 Graphiti를 기반으로 한 관리형 SaaS다.

항목Zep (관리형)Graphiti (오픈소스)
배포완전 관리형 / 고객 클라우드셀프호스팅
성능200ms 미만 검색, 프로덕션 최적화직접 구현 필요
거버넌스대시보드·API 로그·SDK 포함직접 구축
기업 지원SLA·보안 보증없음

MCP 서버

Claude, Cursor 등 MCP 클라이언트가 Graphiti 컨텍스트 그래프를 직접 사용할 수 있는 MCP 서버를 공식 제공한다.

설치

pip install graphiti-core
from graphiti_core import Graphiti

client = Graphiti("bolt://localhost:7687", "neo4j", "password")
await client.build_indices_and_constraints()

# 에피소드 추가
await client.add_episode(
    name="대화 1",
    episode_body="사용자: Adidas 신발 좋아해요",
    source=EpisodeType.message,
)

# 검색
results = await client.search("사용자 선호 신발 브랜드")

Neo4j 또는 FalkorDB가 그래프 데이터베이스로 필요하다.

관련 문서

  • graph-rag — 관계 인식 검색 RAG 패러다임
  • lightrag — 지식 그래프 기반 RAG 시스템
  • ai-agent-tips-memory — 에이전트 메모리 아키텍처 3단계
  • rag — 검색 증강 생성 기술 개요


AI Sparkup 구독하기

최신 게시물 요약과 더 심층적인 정보를 이메일로 받아 보세요! (무료)