AgentEnv:スケーラブルなエージェント環境プラットフォーム
AgentEnv(AENV)は、FirecrackerマイクロVMとOCIイメージを使用して大規模にエージェント環境を実行するためのオープンソースプラットフォームであり、Kimi K3の強化学習トレーニングを支援します。スナップショットベースの高速起動(50ms未満)、インクリメンタルスナップショット、メモリバルーニング、高いI/Oパフォーマンスを特徴とし、CLIおよびE2B互換APIを提供します。
AgentEnv(AENV)は、大規模なエージェント環境を実行するためのオープンソースプラットフォームであり、Kimi K3のエージェント強化学習トレーニングを支えるために設計されました。本プラットフォームは、FirecrackerマイクロVMとOCI互換イメージを活用し、overlaybdによるオンデマンドロードにより、マシン間での大規模な環境展開を実現します。ローカルディスクはバウンドキャッシュとして機能し、ホットデータを保持してコールドデータを追い出すため、イメージがディスク容量を超えても、クラスター全体で高速な起動が可能で、各ホストのプリウォーミングは不要です。
AENVの核となるのはスナップショット機構です。スナップショットベースの環境は、起動または復元が50ミリ秒未満、一時停止が100ミリ秒未満で完了します。アイドル状態の環境はCPUとメモリを迅速に解放し、新しい作業が到着したら即座に復帰できるため、アイドルコストを大幅に削減します。メモリとファイルシステムのインクリメンタルスナップショットは、ディスクへの書き込みが多い状況でも100ミリ秒未満で完了します。実行中の環境は、並列エージェントワークフローのために複数の独立したサンドボックスにフォークできます。スナップショットはS3互換オブジェクトストレージや共有分散ファイルシステムに永続化でき、データ損失を防ぎます。
I/Oパフォーマンス面では、ublkを介した高性能I/Oを提供し、ストレージとメモリスナップショットデータでホストページキャッシュを共有します。メモリバルーニングにより、リクレーム可能なゲストメモリをホストに返却し、環境が長時間実行され多様化しても高いオーバーコミットを維持します。
プラットフォームの前提条件として、Linuxカーネル6.8以上と、FirecrackerマイクロVM実行のための/dev/kvmアクセスが必要です。クイックスタートでは、Ubuntu 24.04向けのインストールスクリプトとDockerの2つの方法が用意されています。インストールスクリプトはサーバーとaenv CLIの両方をインストールし、サーバーをsystemdサービスとして起動します。Docker方式では、docker-setup.shスクリプトで環境を準備し、サーバーコンテナをプルして実行します。
aenv CLIを使用すると、テンプレートのプル、サンドボックスのライフサイクル管理(起動、一時停止、再開、削除)、タイムアウト設定などが行えます。例えば、「aenv pull ubuntu:22.04 --name ubuntu」でテンプレートをプルし、「aenv start ubuntu」でサンドボックスを起動してインタラクティブシェルに接続できます。CLIはテーブルとJSONの両方の出力形式をサポートしています。
AENVはE2B互換のHTTP APIを公開しており、E2B_API_URLをAENVサーバーに向けるだけで、標準のE2B Python / TypeScript SDKをコード変更なしで使用できます。デプロイメントに関しては、Docker ComposeやKubernetesクラスター、ソースからのビルドをサポートしています。
本プロジェクトはMITライセンスの下で公開されており、GitHubでは1100以上のスターと92のフォークを獲得しており、活発に開発が進められています。