openenv/OpenEnv

An interface library for RL post training with environments.

解決する課題

強化学習 (RL) を用いたエージェントのトレーニングは、隔離された環境を作成、デプロイ、操作するための標準化された方法が不足しているため、しばしば停滞します。各タスク(ゲーム、コーディングサンドボックス、ブラウザ)には独自のインターフェースがあり、結果の比較やコードの再利用を困難にしています。OpenEnvは、それぞれが軽量なDockerイメージとしてパッケージ化された多様な環境に接続するためのシンプルで統一されたAPIを提供することで、この問題を解決します。これにより、研究者はインフラの構築ではなくトレーニングに集中できるようになります。

仕組み

OpenEnvは、reset()、step()、state()という3つのコアメソッドを持つGymnasiumスタイルのAPIを使用しており、WebSocket経由で同期および非同期の両方で利用可能です。各環境はDockerイメージであり、ローカル、クラウドサンドボックス、またはHugging Face Spacesで実行できます。このパッケージには、独自の環境を構築、検証、デプロイするためのコマンドラインツール(openenv init、validate、push)が含まれています。トレーニングにおいて、OpenEnvは主要なRLフレームワーク(TRL、Unsloth、SkyRLなど)と統合されており、ホワイトボックストゥール環境(トレーナーがループを実行)としても、ループ所有ハーネス(エージェントが独自のループを実行し、OpenEnvがトレーニングトレースをキャプチャ)としても機能します。また、本番モードではMCPを通じて環境ツールを公開し、Inspect AIを通じた組み込みの報酬構成と評価も提供します。

対象ユーザー

OpenEnvは、環境構築の煩わしさを繰り返すことなく、ゲーム、コーディング、ウェブブラウジング、シミュレーションといった多様なタスクでエージェントをトレーニングしたいRL研究者や実務者を対象としています。また、環境を迅速にパッケージ化してコミュニティと共有したい環境構築者にも最適です。

ハイライト

  • すべての環境で単一のAPI:WebSocket経由での reset()、step()、state()(同期/非同期対応)。
  • 40以上のすぐに使える環境(Echo、Coding、TextArena、OpenSpiel、BrowserGym、Harborなど)。
  • TRL、Unsloth、SkyRL、ART、Oumi、torchforge、Miles、その他のRLフレームワークと統合。
  • Harborを通じた本格的なコーディングエージェントのトレーニング。強化学習に必要な正確なトークンをキャプチャ。
  • MCPサポートにより、本番環境でエージェントに環境ツールを提供しつつ、トレーニングでは step() と報酬を使用し続けることが可能。
  • ルーブリックを用いた組み込みの報酬構成と、Inspect AIによる評価。

関連

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