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 プロトコルを提供します。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト