scaleapi/agentenv-framework
Creating realistic RL environments requires collaboration between researchers, engineers, and domain experts across many dimensions: artifacts, environments tools, dynamism of the environment, reproducibility, and more. There is no open source framework for building these environments effectively. Until now.
AgentEnv Framework – クイック概要
概要 – AgentEnv Frameworkは、エージェンティック環境(agentenv-framework-protocolを話すコンテナ化されたサービス)を作成、デプロイ、評価するためのPython SDKおよびコマンドラインツール(agent-env)です。環境をDockerイメージとしてパッケージ化し、ゲートウェイの背後で実行し、LLMスタイルのエージェントを向け、エージェントの動作を自動的にスコアリングできます。
主な構成要素
- 環境 – 標準プロトコルを公開するコンテナ化されたサーバー(ローカルDocker、Vercelサンドボックス、またはカスタムマイクロVM)。
- エージェント – プロトコルを介してこれらの環境と対話する、独自のLLM指向コード(または外部サービス)。
- タスク/エピソード – エージェントと環境の間のターンを調整し、タイムアウト、ツール呼び出し、スコアリングを処理する定義されたシナリオ。
- バックエンド – ローカルDocker、Vercelサンドボックス、
smol_vmマイクロVM、および成果物用のオプションのクラウドストア(AWS、GCP、TensorLake、Tenki)。 - プラグイン – 新しい環境タイプ、プロバイダー、タスクステップ、またはストレージバックエンドのための拡張ポイント。
典型的なワークフロー
- 環境を定義する(Dockerfile +
agentenv-framework-protocolサーバー)。 - ビルドして登録する
agent-envで(バージョン付きイメージを作成)。 - タスクを作成する エピソードを説明する(ターン順序、プロンプト、スコアリング)。
- タスクを実行する
agent-env run <task>またはPython SDKを使用して:spec = EpisodeSpec.from_task(Task.get("my-task"), turn_timeout=900) episode = await spec.start() while (turn := await episode.next_turn()) is not None: async with turn.tools() as tools: ... # ツールを呼び出し、プロンプトを読み、応答を生成 await turn.end(response="完了") scores = await episode.result() - スコアを収集する – CLIで表示されるのと同じ数値が、強化学習または評価のために返されます。
インストール – PyPIでagentenv-frameworkとして利用可能。Python ≥ 3.11.4と、ローカルバックエンド用のDockerが必要です。CLIはuv tool install agentenv-framework(またはpip)でインストールし、特定のプロバイダー用の追加機能([vercel]、[smol]、[aws]など)を追加します。
なぜ重要か – 隔離されたサービスを起動し、LLMエージェントをスコアリングする配管を抽象化し、外部ツール、API、またはカスタムコードを呼び出す必要があるエージェントのベンチマークやトレーニングを容易にします。
リソース
- ドキュメント: https://www.agentenvframework.com/docs
- GitHub: https://github.com/scaleapi/agentenv-framework
- ライセンス: Apache-2.0
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト