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)。
  • プラグイン – 新しい環境タイプ、プロバイダー、タスクステップ、またはストレージバックエンドのための拡張ポイント。

典型的なワークフロー

  1. 環境を定義する(Dockerfile + agentenv-framework-protocolサーバー)。
  2. ビルドして登録する agent-envで(バージョン付きイメージを作成)。
  3. タスクを作成する エピソードを説明する(ターン順序、プロンプト、スコアリング)。
  4. タスクを実行する 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()
    
  5. スコアを収集する – CLIで表示されるのと同じ数値が、強化学習または評価のために返されます。

インストール – PyPIでagentenv-frameworkとして利用可能。Python ≥ 3.11.4と、ローカルバックエンド用のDockerが必要です。CLIはuv tool install agentenv-framework(またはpip)でインストールし、特定のプロバイダー用の追加機能([vercel]、[smol]、[aws]など)を追加します。

なぜ重要か – 隔離されたサービスを起動し、LLMエージェントをスコアリングする配管を抽象化し、外部ツール、API、またはカスタムコードを呼び出す必要があるエージェントのベンチマークやトレーニングを容易にします。

リソース

関連

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