statelyai/agent

Create state-machine-powered LLM agents using XState

何を解決するか

LLMから制御フローの論理を移動させることで、AIエージェントが無効な操作を取ることを防ぎます。これにより、エージェントは予測可能で、検査可能、再開可能な状態を保ちます。一方、LLMは現在の状態によって定義された合法なイベントのセットから選択するのみです。

動作方法

Stately Agentはモデルのリクエストと意思決定をXStateに統合します。状態マシンは合法な遷移とガードを定義し、LLMはイベントを提案し、マシンがそのイベントが許可されているかを判断します。このシステムはマシンの論理と実行環境(ホスト)を分離しているため、同じエージェントマシンをローカルでテスト用のスクリプト実行者で実行したり、Vercel AI SDKなどのプロバイダーを使って本番環境で実行したりしても、マシンの定義を変更する必要がありません。

対象ユーザー

エージェントの振る舞いに厳密な制御が必要で、決定論的なワークフローと、エージェントの状態を簡単にテスト、可視化、永続化できる能力を必要とする開発者。

特徴

  • 決定論的な制御フロー: 状態マシンが論理を所有するため、無効な操作は不可能です。
  • モデル非依存: マシンは直接モデルにアクセスしないので、開発者はLLMプロバイダーまたは実行者を簡単に切り替えることができます。
  • 組み込みパターン: ReAct、リフレクション、計画・実行、RAGなどの一般的なエージェントアーキテクチャの実行可能な例が含まれています。
  • ネイティブなXState統合: XStateのスナップショット、バージョニング、エージェント状態の移行機能を活用しています。

関連

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