yoheinakajima/activegraph
Event-sourced graph runtime for durable and stateful agents
해결하는 문제
Active Graph는 감사 가능성, 추적 가능성, 그리고 실행을 재개하거나 포크하는 능력이 필수적인 장기 실행 에이전트 시스템을 위해 설계되었습니다. 에이전트들이 서로 대화하는 챗봇 기반 에이전트 아키텍처에서 벗어나, 동작이 세계 상태의 변화에 반응하는 공유 작업 공간(그래프)으로 전환합니다. 이를 통해 모든 변경 사항이 추가 전용 이벤트 로그에 기록되어 시스템의 이력을 완전히 투명하고 재현 가능하게 만듭니다.
작동 원리
이 프레임워크는 이벤트 소싱 리액티브 그래프 런타임으로 작동합니다. 추가 전용 이벤트 로그를 진실의 원천으로 유지하며, 현재의 세계 상태는 해당 로그를 객체와 타입화된 관계의 그래프로 투영한 결과입니다.
주요 메커니즘은 다음과 같습니다:
- 리액티브 동작 (Reactive Behaviors): 특정 이벤트 유형이나 그래프 패턴(Cypher 서브셋 사용)을 구독하고 새로운 이벤트를 생성하는 코드(함수, 클래스 또는 LLM 기반).
- 관계 동작 (Relation-Behaviors): 객체 간의 에지에 직접 부착된 로직으로, 엔드포인트가 아닌 관계 자체에서 조정이 이루어지도록 합니다.
- 포크 및 차이점 분석 (Fork-and-Diff): 임의의 이벤트 지점에서 실행을 독립적인 포크로 분기하고, 설정을 수정하며, 공유된 접두사를 재실행하지 않고도 결과와 부모 실행 간의 구조적 차이를 비교하는 기능.
- 팩 (Packs): 특정 도메인에 맞게 조정된 객체 유형, 동작 및 도구의 번들.
대상 사용자
높은 수준의 관측 가능성, 결정론적 재실행, 그리고 포크 및 차이점 분석을 통한 가설 검증 능력이 필요한 복잡하고 자율적인 에이전트를 구축하는 개발자.
주요 특징
- 이벤트 소싱 (Event-Sourcing): 모든 변경 사항이 이벤트로 기록되어 완전한 감사 추적을 제공합니다.
- 결정론적 재실행 (Deterministic Replay): 이벤트 로그에서 실행을 재실행할 수 있으며, LLM 재실행 캐시를 사용하여 비용을 절감합니다.
- 재개 및 포크 가능 (Resumable and Forkable): 모든 실행은 임의의 지점에서 분기되어 다른 경로를 테스트할 수 있습니다.
- 관계 동작 (Relation-Behaviors): 그래프 에지에서 조정 로직을 수행하기 위한 고유한 기본 요소.
- 유연한 지속성 (Flexible Persistence): SQLite, Postgres 및 FalkorDB를 백엔드로 지원합니다.
- LLM 독립적 (LLM Agnostic): OpenAI 및 Anthropic과 같은 제공업체 간에 전환할 수 있는 통합된
LLMProvider프로토콜을 제공합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트