PRIME-RL/SimpleVLA-RL
PRIME-RL/SimpleVLA-RL has 1,910 GitHub stars and 123 forks. GitHot measured 0 stars in 24 hours and +6 in 7 days. Last checked 2026-11-12 19:08 UTC. Last push 2026-01-06.
[ICLR 2026] SimpleVLA-RL: Scaling VLA Training via Reinforcement Learning
측정된 스타 증가
- in 24h
- 0
- in 7 days
- +6
- in 15 days
- 기록 수집 중
- in 1 month
- 기록 수집 중
서로 겹치는 기간의 순증가량이며 일별 합계가 아닙니다. 측정값이 없으면 비워 둡니다. 스타는 관심도를 나타내며 품질을 보장하지 않습니다.
README.md
OriginalSimpleVLA-RL is an efficient RL framework for VLA that improves long-horizon planning under data scarcity. It leverages reinforcement learning that can substantially outperforms SFT in simulation and real-world tasks, reveals a "pushcut" new-action phenomenon, and strengthens spatial/object/goal generalization.
🎉News
- [2026-01-01] Building upon $${\color{red}\textbf{SimpleVLA-RL}}$$, we have implemented $${\color{red}\textbf{real-world RL }}$$ on long-horizon dexterous tasksand witnessed a $${\color{red}\textbf{non-trivial}}$$ (~relatively 300%) performance improvement over the SFT model, along with surprising capabilities on auto-recovery. Blog coming soon.
https://github.com/user-attachments/assets/45fca289-39d4-4a42-8014-1ef7eff2d806
- [2025-10-01] SimpleVLA-RL now supports RoboTwin2.0 Benchmark. Feel free to experiment with it!
- [2025-09-12] Excited to release the SimpleVLA-RL paper! Check it out: Paper.
- [2025-05-27] We release the code of SimpleVLA-RL.
📌Highlights
Efficient and Effective VLA Reinforcement Learning Framework
- End-to-end VLA RL pipeline built on veRL with VLA-specific optimizations
- Multi-environment parallel rendering significantly accelerates VLA trajectory sampling
- Leverages veRL's state-of-the-art infrastructure: efficient distributed training (FSDP), hybrid communication patterns, and optimized memory management for fast training/inference
Model and Environment Support
- VLA Models: OpenVLA, OpenVLA-OFT
- Benchmarks: LIBERO, RoboTwin 1.0/2.0
- Modular architecture for easy integration of new VLA models, benchmarks and RL algorithms (Upcoming)
Minimal Reward Engineering and Exploration Strategies
- Binary (0/1) outcome rewards - no complex reward design needed
- Exploration strategies: dynamic sampling, adaptive clipping, temperature tuning
🔧Key Implementations
SimpleVLA-RL extends veRL with VLA-specific components across the following modules:
- Main entry point with ray initialization
RobRewardManagerfor reward distribution
verl/trainer/ppo/ray_trainer.py
- Main RL training loop: data loading, VLA rollout, model updates, evaluation, checkpointing
- RL algorithm-specific advantage computation
- Source of core functions called in
ray_trainer.py - VLA model/optimizer initialization,
generate_sequences,compute_entropy,update_actor
- Specific implementation of functions in
fsdp_workers.py - RL loss computation, policy updates,
compute_log_prob,compute_entropy
verl/workers/rollout/rob_rollout.py
- VLA rollout implementation: environment creation, multi-environment parallel rendering, VLA action generation, environment interaction, video saving, trajectory and 0/1 reward collection
verl/utils/dataset/rob_dataset.py
- Dataset construction for training/testing across benchmarks
- VLA model implementations (OpenVLA-OFT/OpenVLA from official code)
✨Getting Started
1. Set Up the Environment
See SETUP.md for detailed instructions on setting up the conda environment.
2. Prepare the SFT Model
An SFT (Supervised Fine-Tuning) VLA model is required for RL training. Below are the available options:
OpenVLA-OFT SFT Models
Download from the SimpleVLA-RL Collection. Available models include:libero-10 traj1/trajall SFTlibero-goal/object/spatial traj1 SFTRobotwin2.0 tasks traj1000 SFT
OpenVLA SFT Models
Download from here.Other Models
For other models, you may need to fine-tune them yourself.
3. Train with SimpleVLA-RL
Before running the training script, ensure the following configurations are properly set:
Set Your Weights and Biases (WandB) API Key
Replace theWANDB_API_KEYfield inSimpleVLA-RL/align.jsonwith your own WandB API key.Modify Key Variables
Update the following variables inexamples/run_openvla_oft_rl_libero/twin2.shas needed:WANDB_API_KEY: Your WandB API key.EXPERIMENT_NAME: The name of your experiment. You can choose any name.SFT_MODEL_PATH: Path to your SFT model.CKPT_PATH: Path where your checkpoints will be saved.DATASET_NAME: For detailed options, refer toexamples/run_openvla_oft_rl_libero/twin2.sh.ALIGN_PATH: Path to theSimpleVLA-RL/align.jsonfile.NUM_GPUS: Number of GPUs available per node (e.g.,8).NUM_NODES: Number of nodes used for RL training (e.g.,1).
[!NOTE]
- The script has been tested on the following configurations:
- Single-node setup:
NUM_NODES=1,NUM_GPUS=8(1 node with 8 NVIDIA A800 GPUs, each having 80GB memory).- Multi-node setup:
NUM_NODES=2,NUM_GPUS=8(2 nodes with 16 NVIDIA A800 GPUs, each having 80GB memory).- The driver version used is
470.161.03, and the CUDA version is12.4. (Not necessary)
Run RL Training
Use the following command to start RL training for OpenVLA-OFT on the LIBERO or RoboTwin2.0 benchmark:bash examples/run_openvla_oft_rl_libero.sh or bash examples/run_openvla_oft_rl_twin2.sh
4. Run Evaluation
To evaluate the performance of your model, enable evaluation mode by setting trainer.val_only=True in examples/run_openvla_oft_rl_libero/twin2.sh. Then, execute the same script:
bash examples/run_openvla_oft_rl_libero.sh
or
bash examples/run_openvla_oft_rl_twin2.sh
📃 Main Results
We evaluate SimpleVLA-RL on the LIBERO using OpenVLA-OFT. SimpleVLA-RL improves the performance of OpenVLA-OFT to 97.6 points on LIBERO-Long and sets a new state-of-the-art. Remarkably, using only one trajectory per task for cold-start SFT, SimpleVLA-RL raises the performance of OpenVLA-OFT from 17.3 to 91.7, yielding an improvement of 74.4 points (430.1%).
🌻Acknowledgement
We develop this preview version of the code based on veRL, OpenVLA-OFT, RoboTwin2.0, and PRIME. We acknowledge their significant contributions! For further details and updates, please refer to the official documentation and repositories of the respective projects.
📝Roadmap
Expanding Model Support
- Support advanced diffusion based RL: pi0 and pi0.5 with flow matching RL
- Support more VLA models: especially for lightweight ones (e.g. VLA-Adapter, SmolVLA)
Expanding Environment Support
- Support more benchmarks: e.g. SimplerEnv, BEHAVIOR, Calvin
- Support real-world RL.
Expanding Framework
- Additional online RL methods and Offline RL algorithms
- Modular environment and VLA interface for easy adaptation
- Further optimize the RL framework to achieve more efficient training
📨Contact
- Haozhan Li: [email protected]
- Ning Ding: [email protected]
🎈Citation
If you find SimpleVLA-RL helpful, please cite us:
@article{li2025simplevla,
title={SimpleVLA-RL: Scaling VLA Training via Reinforcement Learning},
author={Li, Haozhan and Zuo, Yuxin and Yu, Jiale and Zhang, Yuhao and Yang, Zhaohui and Zhang, Kaiyan and Zhu, Xuekai and Zhang, Yuchen and Chen, Tianxing and Cui, Ganqu and others},
journal={arXiv preprint arXiv:2509.09674},
year={2025}
}
🌟Star History
관련 프로젝트 살펴보기
sindresorhus/awesome
😎 온갖 흥미로운 주제에 관한 Awesome 목록 [참고: 기존 풀 리퀘스트를 따라잡을 여유가 생길 때까지 풀 리퀘스트가 일시적으로 비활성화되어 있습니다]
536,014 스타EbookFoundation/free-programming-books
:books: 무료로 이용할 수 있는 프로그래밍 도서
401,504 스타nilbuild/developer-roadmap
개발자의 커리어 성장을 돕는 인터랙티브 로드맵, 가이드 및 기타 교육 콘텐츠.
371,919 스타vinta/awesome-python
“Python으로 X를 하고 싶은데, 어떤 도구를 써야 할까?”에 답하는 결정판 목록.
334,366 스타