smaramwbc/statewave
Open-source memory runtime for AI agents — reproducible, provenance-tagged context bundles instead of query-time retrieval. Apache-2.0, self-hosted on Postgres + pgvector, Python + TypeScript SDKs.
解決する課題
Statewaveは、セッション間でのコンテキストの喪失を防ぐ耐久性があり構造化されたメモリランタイムをAIエージェントに提供します。脆弱で非構造的なプロンプト詰め込みや単純なベクトルデータベースの検索を、エージェントが好み、意思決定、履歴を異なる会話間で記憶できる決定論的なシステムに置き換えます。
動作方法
Statewaveは「コンパイルしてから使用する」アプローチでアプリケーションと並行して動作するインフラとして機能します:
- インジェスト:生のイベント(エピソード)が追加のみ可能な形式で記録されます。
- コンパイル:これらのエピソードは、信頼度スコアと出典を伴う型付きで要約されたメモリに処理されます。
- リトリーブ:システムは必要に応じてランク付けされた、トークン制限付きのコンテキストバンドルを構成します。
- ガバナンス:対象のタイムラインの検査や、対象ごとのデータ削除が可能になります。
このプロセスは同一性(idempotent)であり、同じ対象に対して同じ時点での同じクエリを実行すると常に同じ結果が得られるため、クエリ時検索で一般的に見られるサンプリングノイズを排除します。
対象ユーザー
複数のセッションにわたってユーザー固有のデータやアーキテクチャ的決定を記憶できるようにしたいAIエージェント(例:カスタマーサポートや長期間実行されるコーディングエージェント)を開発する開発者。
特徴
- 出典追跡:コンテンツハッシュされたレシートにより、すべてのメモリが元のソースエピソードに追跡可能。
- 決定論的コンテキスト:対象およびタスクごとに一貫性のあるトークン制限付きバンドルを提供。
- プラグイン可能コンパイラ:ローカルヒューリスティックコンパイラ(正規表現)とLiteLLMを介したLLMベースコンパイラの両方をサポート。
- セルフホスト:Postgresとpgvector上で動作し、ストレージの所有権を確保しベンダー依存を回避。
- マルチテナント対応:クエリスコープでのデータ隔離とリージョンピンニングによるデータ所在制御をサポート。
- フレームワーク非依存:LangChain、CrewAI、AutoGenを含む任意のAIスタックとREST APIまたはSDK経由で統合可能。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト