agent-substrate/substrate
Agent Substrate: the core system
Agent Substrate – AIエージェント用の高密度サンドボックスランタイム
何であるか – Agent SubstrateはKubernetesネイティブな実行プラットフォームであり、アクター(AIエージェント、ツールコールサービス、または長時間実行されるワークロードなど、状態を持つプロセス)を隔離されたサンドボックス内で実行します。物理的なポッドの小さなプールに多数のアクターを多重化することで、通常のコンテナよりも10倍高い密度を実現しつつ、500ミリ秒未満の「再開」遅延を維持します。
AIにとってなぜ重要か – 現代の自律型エージェントは、新しいリクエストを待つためにほとんど時間を費やしています。Substrateはこの特徴を活かし、アクターの全プロセス(RAMやファイルシステムを含む)を一時停止し、必要に応じて再開できるようにします。これにより、1つのワーカーポッドで数十のエージェントをホスト可能となり、大規模なエージェントファミリーの計算コストを大幅に削減し、中規模のKubernetesクラスタで数千ものサンドボックス化されたエージェントを実行することが可能になります。
コアコンセプト
| 項目 | 意味 |
|---|---|
| アクター | 自分自身の状態(メモリ、ファイル)を持つ個々のエージェントまたはサービスであり、起動、停止、移行が可能。 |
| WorkerPool | 実際にサンドボックスを実行するKubernetesポッドの集合。複数のアクターが共有する。 |
| Atespace | アクターのグループに対する名前空間のような隔離境界。 |
| ActorTemplate | 特定の種類のアクターを起動するためのコンテナイメージと設定を定義する。 |
| 一時停止/再開(テレポート) | アクターの完全な状態をスナップショットし、保存(例:PostgreSQL)してから、空きワーカー上で後で復元する。 |
主な機能(READMEに記載)
- 大規模な多重化 – 30倍以上の過剰割り当て;デモでは8つのポッドで約250の状態保持型アクターを実行。
- 1秒未満の起動 – 再開遅延は500ミリ秒未満、1秒あたり500回以上の一時停止/再開サイクルが可能。
- ゼロトラストの隔離 – カーネルレベルのサンドボックス化を実現するgVisorマイクロVMおよびcloud-hypervisorマイクロVMをサポート。
- 状態の永続化 – ハイバーネーション中もRAMおよびファイルシステムのスナップショットが保持され、「アクターのテレポート」を可能にする。
- フレームワーク非依存 – ADK、LangChain、Claude Code、Model Context Protocolなど、あらゆるエージェントスタックと互換性があり、標準のOCIコンテナを実行するため。
- Kubernetes統合 – ネイティブなPod、Podのオートスケーリング、カスタムコントローラー(WorkerPool CRD)を用いてスケジューリングとスケーリングを実現。
- CLI(
kubectl-ate) – アクターの作成、一覧表示、一時停止、再開、削除を簡単なコマンドで実行可能。 - 観測性とセキュリティ – ロギング、メトリクス、JWTベースの認証、脅威モデルのドキュメントを内蔵。
一般的な利用事例
- 大規模な自律エージェントファミリー – エージェント1つにつき1つのポッドを割り当てず、数千のチャットまたはツールコールエージェントを展開可能。
- 状態保持型ツールサービス – Claude Code、Antigravityなど、呼び出し間でファイルシステムを保持する必要があるサンドボックスコード実行環境を実行。
- RLベースのエージェントループの研究 – 1つのKubernetesクラスタ内で推論、ツール使用、トレーニングサイクルを統合し、スケジューラが負荷に応じてアクターをワーカー間で移動可能。
- セキュアなマルチテナント実行 – gVisorまたはマイクロVMの隔離を活用して、各エージェントのコードとデータを保護。
プロジェクトの状態
- 初期開発段階 – APIはまだ進化中であり、プロダクション環境では使用不可。
- サポートされるKubernetesバージョン – 最新の安定版および前回のマイナーリリース。
- ロードマップ –
docs/roadmap.mdに詳細あり;安定性の向上、より豊かなオートスケーリング、広範なサンドボックスサポートを含む。
クイックスタート(開発用)要約
# 前提条件: go, kubectl, docker(kindは自動インストール)
hack/create-kind-cluster.sh # ローカルのkindクラスタを起動
hack/install-ate-kind.sh --deploy-ate-system # Substrate制御プレーンをインストール
hack/install-ate-kind.sh --deploy-demo-counter # サンプルカウンターのアクターをデプロイ
go install ./cmd/kubectl-ate # CLIをインストール
kubectl ate create actor my-counter-1 -a ate-demo-counter --template counter
kubectl port-forward -n ate-system svc/atenet-router 8000:80
curl -X POST -H "ate-target-actor: ate-demo-counter/my-counter-1" http://localhost:8000/
同じフローは、READMEに記載のsetup-gcpツールを使用してGKEでも動作します。
エコシステムと統合
- Agent Executor (google/ax) – Substrate上で構築された分散エージェントランタイム。
- kagent – Substrateを使用して状態保持型AIエージェントを実行するCNCFサンドボックスプロジェクト。
- デモコレクション – カウンター、サンドボックス、Claude Codeの多重化、リクエストの一時保管、オートスケーリングされたワーカープールなど。
コミュニティと貢献
- Googleグループ:
ate-dev(発表および議論用)。 - 週次同期: 毎週木曜日 10時〜11時 PST(ビデオ通話および通話接続)。
- Slack: CNCFチャンネル
#substrate-usersおよび#substrate-dev。 - 貢献 –
CONTRIBUTING.mdを参照;プロジェクトは非常に初期段階のため、貢献はコアシステムおよびデモ作業と整合する必要がある。
もっと学ぶには
- アーキテクチャドキュメント –
docs/architecture.md - APIガイド –
docs/api-guide.md - CLIドキュメント –
cmd/kubectl-ate/README.md - YouTubeチャンネル – https://www.youtube.com/channel/UCN9PPqlTtVxlcpbQ-NWpfZQ(デモ動画)
結論 – Agent Substrateは、目的に特化したKubernetesベースのランタイムであり、小さなクラスタ上で多数の隔離され、状態保持型のAIエージェント(または同様のワークロード)を高速な一時停止/再開と強固なセキュリティ保証で実行可能にします。まだ実験段階ですが、大規模でコスト効率の高いエージェントインフラを構築するための具体的な基盤を提供しています。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト