コンテンツにスキップ

SimplerEnv評価

SimplerEnvは、ManiSkillベースのシミュレーション環境で、WidowXロボットアームを使用したテーブルトップ操作タスク(把持、配置、引き出し操作など)を行います。Open X-Embodiment(OXE)データセットでトレーニングされたVLAモデルの評価に広く使用されています。

このドキュメントでは、SimplerEnvでの実験結果を再現するための手順を提供します。

評価プロセスは以下の2つの主要な部分で構成されています:

  1. simpler_env 環境と依存関係のセットアップ。
  2. starVLAsimpler_env の両方の環境でサービスを起動して評価を実行。

このワークフローは NVIDIA A100RTX 4090 GPUの両方で正常に動作することを確認しています。


MethodStepsPut Spoon on TowelPut Carrot on PlateStack Green Block on Yellow BlockPut Eggplant in Yellow BasketAverage
RT-1-X-0.04.20.00.01.1
Octo-Base-15.812.50.041.717.5
Octo-Small-41.78.20.056.726.7
OpenVLA-4.20.00.012.54.2
CogACT-71.750.815.067.551.3
SpatialVLA-16.725.029.2100.042.7
π₀-29.10.016.662.527.1
π₀-FAST-29.121.910.866.648.3
GR00T N1.5-75.354.357.061.361.9
Magma-37.531.012.760.535.8
StarVLA-FAST (Qwen3-VL)15K18.831.34.271.931.6
StarVLA-OFT (Qwen3-VL)65K90.338.529.7100.064.6
StarVLA-π (Qwen3-VL)40K78.146.930.288.560.9
StarVLA-GR00T (Qwen3-VL)20K83.059.418.8100.065.3
StarVLA-OFT (Cosmos-Predict2-2B)30K66.862.625.390.261.2
StarVLA-π (Cosmos-Predict2-2B)30K81.455.225.173.058.7
StarVLA-GR00T (Cosmos-Predict2-2B)30K80.465.420.080.661.6
MethodPick Coke CanMove NearOpen/Close DrawerOpen Top Drawer and Place AppleAverage
RT-185.744.273.06.552.4
RT-1-X56.731.759.721.342.4
RT-2-X78.777.925.03.746.3
OpenVLA18.056.363.00.034.3
CogACT91.385.071.850.974.8
SpatialVLA86.077.957.4-75.1
π₀72.765.338.3-58.8
π₀-FAST75.367.542.9-61.9
GR00T N1.5*51.754.027.87.435.2
Magma83.765.456.06.452.9
StarVLA-OFT95.375.068.866.176.0
MethodPick Coke CanMove NearOpen/Close DrawerOpen Top Drawer and Place AppleAverage
RT-189.850.032.32.643.7
RT-1-X49.032.329.410.130.2
RT-2-X82.379.235.320.654.4
OpenVLA60.867.728.80.039.3
CogACT89.680.828.346.661.3
SpatialVLA88.082.541.8-70.7
π₀75.263.725.6-54.8
π₀-FAST77.668.231.3-59.0
GR00T N1.569.368.735.84.044.5
Magma68.865.753.418.551.6
StarVLA-OFT91.375.155.059.470.2

Note: All StarVLA Google Robot results use Qwen3-VL-4B as backbone. Numbers marked with * denote our reimplementation.


環境をセットアップするには、まず公式のSimplerEnvリポジトリに従って、ベースの simpler_env 環境をインストールしてください。

その後、simpler_env 環境内で以下の依存関係をインストールしてください:

Terminal window
conda activate simpler_env
pip install tyro matplotlib mediapy websockets msgpack
pip install numpy==1.24.4 # シミュレーション環境との互換性のためにnumpyをダウングレード

よくある問題: NVIDIA A100でSimlerEnvをテストする際、以下のエラーが発生する場合があります: libvulkan.so.1: cannot open shared object file: No such file or directory 修正方法はこちらを参照してください: Installation Guide — Vulkan Section

最小限の環境確認スクリプトを提供しています:

Terminal window
python examples/SimplerEnv/test_your_simplerEnv.py

「Env built successfully」メッセージが表示されれば、SimplerEnvが正しくインストールされ、使用可能な状態です。


starVLAリポジトリのルートから2つの別々のターミナルを使用して評価を実行します。

  • starVLA環境: ポリシー推論サーバーを実行します。
  • simpler_env環境: シミュレーション評価コードを実行します。

ステップ0. チェックポイントのダウンロード

Section titled “ステップ0. チェックポイントのダウンロード”

チェックポイントをダウンロードします: Qwen3VL-GR00T-Bridge-RT-1

ステップ1. サーバーの起動(starVLA環境)

Section titled “ステップ1. サーバーの起動(starVLA環境)”

最初のターミナルで starVLA conda環境をアクティベートして実行します:

Terminal window
bash examples/SimplerEnv/eval_files/run_policy_server.sh

注意: examples/SimplerEnv/eval_files/run_policy_server.sh を開き、your_ckpt 変数を実際のチェックポイントパスに設定してください。例: results/Checkpoints/Qwen3VL-GR00T-Bridge-RT-1/checkpoints/steps_50000_pytorch_model.pt


ステップ2. シミュレーションの起動(simpler_env環境)

Section titled “ステップ2. シミュレーションの起動(simpler_env環境)”

2番目のターミナルで simpler_env conda環境をアクティベートして実行します:

Terminal window
export MODEL_PATH=.../checkpoints/steps_50000_pytorch_model.pt
bash examples/SimplerEnv/start_simpler_env.sh ${MODEL_PATH}

このスクリプトはWidowXロボットの評価タスクを自動的に起動し、上記のベンチマーク結果を再現します。

注意: examples/SimplerEnv/start_simpler_env.sh を開き、SimplerEnv_PATH 変数をSimlerEnvリポジトリのクローンパスに設定してください(例: /path/to/SimplerEnv)。

よくある問題: ポリシーサーバー実行時に NotImplementedError: Framework QwenGR00T is not implemented が発生した場合、Frameworkがまだ正しくPythonのインポートパスに登録されていない可能性があります。まずスモークテストを実行して正しい登録をトリガーしてください:

Terminal window
python starVLA/model/framework/QwenGR00T.py

スモークテストが成功したら、ポリシーサーバーを再起動してください。


手順:

  1. LeRobot形式のOXEデータセットをダウンロード:

  2. *lerobot/meta/modality.jsonmodality.json を配置:

    • bridge modality - modality.json にリネームして bridge_orig_lerobot/meta/modality.json として配置
    • fractal modality - modality.json にリネームして fractal20220817_data_lerobot/meta/modality.json として配置
  3. データセットパスを config.yaml に追加:

    datasets:
    vla_data:
    dataset_py: lerobot_datasets
    data_root_dir: playground/Datasets/OXE_LEROBOT_DATASET
    data_mix: bridge_rt_1

データローダーの確認方法を提供しています。バッチデータが読み込めることを確認してください:

Terminal window
python starVLA/dataloader/lerobot_datasets.py --config_yaml examples/SimplerEnv/train_files/starvla_cotrain_oxe.yaml

実行前に、Frameworkがフェイクデータの例で forwardpredict_action を実行できることを確認してください。

以下のコマンドを試してください:

Terminal window
python starVLA/model/framework/QwenGR00T.py --config_yaml examples/SimplerEnv/train_files/starvla_cotrain_oxe.yaml

すべての準備が整ったら、提供されたスクリプトを使用してトレーニングを開始します:

Terminal window
bash ./examples/SimplerEnv/train_files/run_oxe_train.sh

注意: スクリプトが検証済みの設定パスを明示的に使用していることを確認してください。まだ渡されていない場合は、--config_yaml 引数を追加してください。