Aller au contenu

Evaluation SimplerEnv

SimplerEnv est un environnement de simulation base sur ManiSkill utilisant le bras robotique WidowX pour des taches de manipulation sur table (saisie, placement, operations de tiroir, etc.). Il est largement utilise pour evaluer les modeles VLA entraines sur le dataset Open X-Embodiment (OXE).

Ce document fournit les instructions pour reproduire nos resultats experimentaux avec SimplerEnv.

Le processus d’evaluation se compose de deux parties principales :

  1. Configuration de l’environnement simpler_env et de ses dependances.
  2. Execution de l’evaluation en lancant les services dans les environnements starVLA et simpler_env.

Nous avons verifie que ce workflow fonctionne correctement sur les GPU NVIDIA A100 et RTX 4090.


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.


Pour configurer l’environnement, veuillez d’abord suivre le depot officiel SimplerEnv pour installer l’environnement de base simpler_env.

Ensuite, dans l’environnement simpler_env, installez les dependances suivantes :

Fenêtre de terminal
conda activate simpler_env
pip install tyro matplotlib mediapy websockets msgpack
pip install numpy==1.24.4 # Retrograder numpy pour la compatibilite avec l'environnement de simulation

Problemes courants : Lors du test de SimplerEnv sur NVIDIA A100, vous pouvez rencontrer l’erreur suivante : libvulkan.so.1: cannot open shared object file: No such file or directory Vous pouvez consulter ce lien pour corriger le probleme : Guide d’installation — Section Vulkan

Nous fournissons un script minimal de verification de l’environnement :

Fenêtre de terminal
python examples/SimplerEnv/test_your_simplerEnv.py

Si vous voyez le message “Env built successfully”, cela signifie que SimplerEnv est correctement installe et pret a l’utilisation.


Executez l’evaluation depuis la racine du depot starVLA en utilisant deux terminaux separes, un pour chaque environnement.

  • Environnement starVLA : execute le serveur d’inference de politique.
  • Environnement simpler_env : execute le code d’evaluation de la simulation.

Telechargez le checkpoint : Qwen3VL-GR00T-Bridge-RT-1

Etape 1. Demarrer le serveur (environnement starVLA)

Section intitulée « Etape 1. Demarrer le serveur (environnement starVLA) »

Dans le premier terminal, activez l’environnement conda starVLA et executez :

Fenêtre de terminal
bash examples/SimplerEnv/eval_files/run_policy_server.sh

Note : Ouvrez examples/SimplerEnv/eval_files/run_policy_server.sh, trouvez la variable your_ckpt et definissez-la sur le chemin reel de votre checkpoint, par exemple results/Checkpoints/Qwen3VL-GR00T-Bridge-RT-1/checkpoints/steps_50000_pytorch_model.pt.


Etape 2. Demarrer la simulation (environnement simpler_env)

Section intitulée « Etape 2. Demarrer la simulation (environnement simpler_env) »

Dans le second terminal, activez l’environnement conda simpler_env et executez :

Fenêtre de terminal
export MODEL_PATH=.../checkpoints/steps_50000_pytorch_model.pt
bash examples/SimplerEnv/start_simpler_env.sh ${MODEL_PATH}

Ce script lancera automatiquement les taches d’evaluation du robot WidowX, reproduisant les resultats de benchmark rapportes ci-dessus.

Note : Ouvrez examples/SimplerEnv/start_simpler_env.sh, trouvez la variable SimplerEnv_PATH et definissez-la sur le chemin de votre clone du depot SimplerEnv (par exemple /path/to/SimplerEnv).

Problemes courants : Si vous rencontrez NotImplementedError: Framework QwenGR00T is not implemented lors de l’execution du serveur de politique, cela signifie generalement que le Framework n’a pas ete correctement enregistre dans le chemin d’import Python. Executez d’abord le test de fonctionnement pour declencher l’enregistrement correct :

Fenêtre de terminal
python starVLA/model/framework/QwenGR00T.py

Si le test reussit, redemarrez le serveur de politique.


Etapes :

  1. Telechargez un dataset OXE au format LeRobot :

  2. Incluez modality.json dans chaque *lerobot/meta/modality.json :

    • modality bridge - Renommez en modality.json et placez-le dans bridge_orig_lerobot/meta/modality.json
    • modality fractal - Renommez en modality.json et placez-le dans fractal20220817_data_lerobot/meta/modality.json
  3. Ajoutez le chemin de votre dataset a config.yaml :

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

Nous fournissons un moyen simple de verifier votre dataloader. Assurez-vous de pouvoir charger des donnees par batch :

Fenêtre de terminal
python starVLA/dataloader/lerobot_datasets.py --config_yaml examples/SimplerEnv/train_files/starvla_cotrain_oxe.yaml

Avant l’execution, vous devez vous assurer que votre framework peut effectuer forward et predict_action en utilisant un exemple de donnees fictives.

Essayez la commande suivante :

Fenêtre de terminal
python starVLA/model/framework/QwenGR00T.py --config_yaml examples/SimplerEnv/train_files/starvla_cotrain_oxe.yaml

Une fois tout pret, utilisez notre script fourni pour lancer l’entrainement :

Fenêtre de terminal
bash ./examples/SimplerEnv/train_files/run_oxe_train.sh

Note : Assurez-vous que le script utilise explicitement le chemin de configuration valide. S’il n’est pas deja passe, ajoutez l’argument --config_yaml.