Training Reasoning Models in Simulation to Natively Use Real Robots
TL;DR
We trained an open 27B reasoning model to use real robots through reinforcement learning entirely in simulation, without demonstrations. The base model can barely use a robot; after training, it succeeds most of the time, both on simulation benchmarks and on a real robot, without sacrificing its general reasoning, coding and vision capabilities.
The model uses a robot the way a computer-use agent uses a computer: it observes the environment, reasons with a chain of thought, and outputs the arm’s next move, without needing a harness. Our training, Robot-Use RL, applies reinforcement learning to robot tasks in simulation, similar to how frontier models learned computer use. We find that what it learns in simulation carries over to a new robot, to the real world, and to instructions it has never seen.
On LIBERO, Robot-Use RL takes it from 1.6% to 74.4%, close to GPT-6 Astra and GPT-6.1 Sol at max effort. It also follows language instructions it was never trained on: in familiar scenes with a new task, it succeeds 57.4% of the time, and π0.5 only 0.75%. Trained only in simulation, it succeeds in 60% of our trials on a real dual-arm robot without any harness, up from 0% before training. And it keeps its general capabilities: across nine reasoning, coding and vision benchmarks, it shows no measurable loss.
We believe that Robot-Use RL in simulation is a simple recipe for real-world robot-use agents, with a lot of room to grow, and that with reasoning, these agents can generalize far beyond the tasks they were trained on. We hope these results can motivate the community to further explore Robot-Use RL as part of foundation model post-training. We release the model, the code and the full training infrastructure.
All results without a harness
LIBERO
Frontier VLMs, by effort
Instruction following
Same scene, different task
Robustness
Both trained on LIBERO only
Transfer
Tested where it was never trained
General capabilities
Nine benchmarks, before and after RL
1How it works
Our model uses a robot the way a computer-use agent uses a computer.
Computer‑use agentfor comparison
A screenshot
“The Save button is at the top right.”
Reasoning, in text
click(812, 431)
A click or a keystroke
Moves the cursor and clicks
Robot-use agent
Three camera views and the arm’s state
“The gripper is right above the eraser. Lower it until the fingers are on either side.”
A chain of thought
{"left_arm": {
"x": 0.0, "y": 1.0,
"z": -17.4, "roll": 0.0,
"pitch": 0.0, "yaw": 0.0},
…}The end-effector’s next pose, without harness or skills
Inverse kinematics turns the pose into joint angles; the arm’s controller moves there
Contextthe episode, round by round
A computer-use agent[1, 2] looks at a screenshot, reasons about what to do, and writes a click as text, which the operating system then carries out. Our model does the same with a robot[3], without needing a harness. In each round, it observes the camera frames and the arm’s state, reasons in a chain of thought, and writes the end-effector’s next pose as text. Inverse kinematics turns that pose into joint angles, and the arm’s controller moves the arm there (Figure 1).
Nothing else sits in between: there are no perception tools, grasp or motion planners[4], or skill library[5, 6], so the model itself has to find the objects in the camera frames, work out how to reach and manipulate them, and notice when a move has not gone as planned. Earlier rounds stay in its context, so it remembers what it has seen and done and can build each move on the ones before it. It learns all of this from task success alone, with reinforcement learning on robot tasks in simulation, which we call Robot-Use RL.
2Robot-Use Reinforcement Learning
Learning only from whether each task succeeds, our model goes from 1.6% to 74.4% on LIBERO[7], close to GPT-6 Astra[8] and GPT-6.1 Sol[9] at max effort.
RL makes progress even from a near-zero start. On Goal, Spatial and Object, our base model, Qwen3.8-27B[10], succeeds in only about 2% of rollouts, so almost every rollout ends with no reward; even so, the training success rate on these three suites rises to about 70% within 148 steps. We leave LIBERO-Long out at this stage, both because the base model almost never succeeds on it, which would give RL almost no signal, and because holding it out gives us a clean test of transfer.
The skills learned on these three suites also transfer strongly to tasks the model has never trained on. At step 148, before any training on LIBERO-Long, the model already solves 39.0% of it, up from 0.4% for the base model, and its success rate on LIBERO as a whole is 64.0%; we return to this transfer in section 4. Training on all four suites from step 149 then raises the success rate to 69.5% at step 184 and 74.4% at step 225 (Figure 2), each about 5 points above the last.
Evaluation
Ours vs. frontier VLMs
LIBERO success rate (%)
Training
Training curve
Success rate of training rollouts
These results show that a base model with a very low initial success rate can still be trained to a high success rate with RL alone, from 1.6% to 74.4% in this case. The capability it acquires is also general rather than specific to LIBERO’s training tasks: in the following sections, we show that it stays robust when LIBERO’s scenes and tasks are perturbed and follows instructions it was never trained on (section 3), and that it transfers to a new benchmark, a new robot and the real world (section 4).
3Robustness and instruction following
Trained only on LIBERO, our model generalizes beyond its training tasks: it stays robust when they are perturbed, and it follows instructions it has never seen.
3.1Robustness on LIBERO-Plus and LIBERO-Pro
π0.5[11] beats our model on LIBERO, where it is supervised fine-tuned on demonstrations of every task, but collapses when a task’s goal or object layout changes. Both policies are trained only on LIBERO. We then test them on LIBERO-Plus[12] and LIBERO-Pro[13], which perturb LIBERO’s tasks in ways neither policy has seen. LIBERO-Plus mainly perturbs the observation, such as the camera, the lighting, the background and sensor noise, and the two policies lose a similar amount on it: 11.2 points for π0.5 and 12.2 for our model. LIBERO-Pro also changes the goals and the object layouts. Our model again loses about 12 points there, but π0.5 loses 43.6, so its 22.5-point lead on LIBERO turns into an 8.8-point deficit (Figure 3).
New conditions
Ours vs. π0.5
3.2New instructions and new layouts
Our model’s lead on LIBERO-Pro comes from the perturbations that change what the robot has to do. The task perturbation keeps a training scene and its initial state but gives an instruction for a different task. π0.5 falls from 96.9% on LIBERO to 0.75%, a drop of 96.2 points, while our model falls from 74.4% to 57.4%, a drop of 17.0 (Figure 4). π0.5 tends to carry out the task it was trained on in that scene, while our model does what the new instruction asks. The position perturbation tests the same ability from the other side: it keeps the instruction but swaps the objects’ positions, so following the instruction now takes a different motion. π0.5 drops 76.1 points, to 20.8%, and our model 16.9, to 57.5%.
LIBERO
As trained
LIBERO-Pro
New task
LIBERO-Pro
New layout
π0.5 still leads on the other two perturbations, which reword the instruction or restyle the objects but leave the original task in place (Table A3). So π0.5 holds up when the motion it was shown is still correct and fails when the motion has to change, whereas our model loses between 1 and 17 points on each perturbation but keeps following the instruction. We read this as the difference between imitating demonstrations and reasoning about the task: our model keeps the base model’s ability to read an instruction and a scene, and RL teaches it to act on what it reads.
4Transfer to a new benchmark, a new robot and the real world
Trained only in simulation, our model succeeds zero-shot on new tasks and on a new robot in a new simulator, and in 60% of our trials on a real robot in the real world, where the base model never succeeds.
New tasks
LIBERO-Long
Same simulator, Franka arm
BaseZero-shot
RL on LIBERO-Goal, Spatial, ObjectNever trained on LIBERO-Long
New robot, new env, new benchmark
RoboDojo general_pickup
Another simulator, dual-arm ARX
BaseZero-shot
RL on LIBERO onlyNever trained on RoboDojo or the ARX
New robot, sim to real
Real world
Real robot, dual-arm YAM
BaseZero-shot
RL on LIBERO and RoboDojoIn simulation only, never on a real robot
4.1Zero-shot transfer to new tasks, robots and benchmarks
Without training on LIBERO-Long episodes, our model reaches 39.0% on LIBERO-Long, where the base model succeeds in 0.4% of episodes (Figure 5). With so few successes, training on LIBERO-Long from the start would have given RL almost no reward to learn from. Transfer from the other three suites changes this: when LIBERO-Long joins training at step 149, the model’s successes on it give RL a signal to train on.
The skills also carry over when both the simulator and the robot change. RoboDojo[14] is a different environment, and its tasks use a dual-arm ARX instead of LIBERO’s single-arm Franka. Trained only on LIBERO, our model succeeds in 39.9% of RoboDojo’s general_pickup episodes, nearly four times the base model’s 10.7%; on align_blocks it reaches 17.0%, against 13.0% (Figure 5). What the model learns on LIBERO is therefore not tied to LIBERO’s simulator or to its arm.
New tasks
Zero-shot transfer to LIBERO-Long
New robot
Zero-shot transfer to RoboDojo
We also evaluate our model zero-shot on RoboLab-120[15], a third simulation benchmark, in which a Franka arm with a Robotiq gripper performs 120 tabletop tasks at three levels of difficulty, with ten episodes per task. Our model has trained with RL only on LIBERO and RoboDojo (section 4.2), and RoboLab’s tasks and scenes are new to it. It succeeds in 37.3% of RoboLab-120’s 1,200 episodes, while the base model succeeds in 5.4% (Figure 6). This is on par with Cosmos3-Nano-Policy[16] at 36.8% and above π0.5[11] at 28.0%, DreamZero[17] at 25.7% and GR00T N1.6[18] at 7.2%, four generalist robot policies on the RoboLab leaderboard[19].
New benchmark
Zero-shot transfer to RoboLab-120
Success rate (%)
4.2Sim to real
Starting from the final LIBERO checkpoint, we then continue training with RL in RoboDojo, still entirely in simulation. On most RoboDojo tasks the base model almost never succeeds, which leaves RL little to learn from. After training on LIBERO, the model improves across RoboDojo, and on general_pickup and align_blocks its overall success rate reaches around 25%, which gives RL the strongest signal. RL works here as it does on LIBERO, on a different simulator and a dual-arm robot: in 115 steps, the training success rate on the two tasks rises from about 25% to about 70% (Figure 7). The last checkpoint of this run is our final model, which we run on the real robot; evaluated in RoboDojo, it succeeds in 71.2% of general_pickup episodes and 78.8% of align_blocks episodes, up from 39.9% and 17.0% before the run (Figure 7).
Training
RL on RoboDojo (subset)
Success rate of training rollouts (%)
Evaluation
Before and after RL
Success rate (%)
With no real-robot data at all, our model then succeeds in 60% of our trials on a real dual-arm YAM robot, where the base model succeeds in none. Even the final LIBERO checkpoint, which has seen neither these tasks nor this robot, succeeds in 23% of the trials (Figures 8 and 9).
Sim to real
Real robot, by task
Success rate (%); labels give trials succeeded
Every trial
Real robot, by trial
Click a cell to watch it; hover for rounds and context used
Align blocks
General pickup
SuccessFailure
4.3Reasoning tasks
Beyond picking up objects and aligning blocks, we also give our model real-robot tasks that need knowledge and reasoning (Figure 10). Given a picture of The Starry Night, it draws a simple line version of the painting on a whiteboard. To test whether a solution is alkaline, it picks phenolphthalein over iodine and ethanol, because phenolphthalein turns pink in alkaline solution; once added, it turns the solution pink. These tasks require world knowledge and reasoning ability, which stem from the foundation model. For tasks like these, the prompt describes the robot and the task in detail.
5Stays a general model
RL on robot tasks leaves its other skills in place: no measurable loss across nine benchmarks.
We compare our model with the base model on the same questions, paired. Over nine benchmarks, every 95% interval includes zero (Figure 11, Table A5), in line with the finding that RL on a new task erodes a model’s other skills less than supervised fine-tuning does[20].
General capabilities
Change after RL
Points, with paired 95% intervals; scores before and after RL beside each name
Our model, which reaches 74.4% on LIBERO and 75.0% on RoboDojo’s general_pickup and align_blocks, still scores 98.5 on AIME 2026[21], 89.7 on GPQA Diamond[22] and 88.4 on LiveCodeBench[23], and stays within two points of the base model on every vision benchmark: the same model now reasons, writes code, answers questions about images and uses a robot.
6Reasoning effort and inference speed
Although our model is trained at xhigh effort only, the effort setting in the chat template still controls how long it reasons. No RL rollout ever runs at a lower setting, yet at low effort our model thinks 0.86k tokens per round instead of 3.23k (Figure 12), so RL at a single effort has not fixed the length of its reasoning. Its success falls with that length. On the same checkpoint, its LIBERO success rate is 21.9% at low effort against 74.4% at xhigh: with less than a third of the thinking, it keeps less than a third of its success. Most of what it can do on LIBERO therefore comes from reasoning at length before each move.
Because our model reasons this long before every move, how fast it decodes decides how fast it can act. With NVFP4 weights[24] and a DFlash2 drafter[25], our model decodes 52 tokens/s on an M5 Max in Inco’s Splash engine[26], and, with our megakernel[27], 221 tokens/s on a single RTX 5090 and 747 tokens/s on a single GB300 (Figure 12). At 747 tokens/s, a round of xhigh thinking takes about 4.3 s and a round at low effort about 1.1 s, so the effort setting also trades success for speed. We use Inco’s original DFlash2 checkpoint, with an average acceptance length of 3.2 tokens. We believe that a drafter tuned specifically for our model would have a longer acceptance length, which would make decoding faster. The model that uses the robot can therefore run locally, on a single consumer GPU or a laptop.
Thinking
Reasoning length by effort
Thinking tokens per round
Accuracy
Success by effort
LIBERO success rate (%)
Speed
Inference on one device
Decoding speed (tokens/s)
7Limitations
- We have not been able to scale up our training. Mainly because of limited GPU resources, we stopped after training on two RoboDojo tasks, and the training went smoothly. Training so far also covers only two simulators and a small set of tasks, and it starts from a 27B base model. We believe that scaling up, by training in more diverse simulations and on more diverse tasks and by starting from a stronger foundation model, could lead to much stronger robot-use performance.
- We did not use supervised fine-tuning (SFT), for two reasons. First, we lacked high-quality in-distribution data and were concerned that SFT would harm the model’s general capabilities[20]. Second, we think that robotics data, even when available, should be added at the pretraining and mid-training stages rather than used for SFT on a model that has already been post-trained. This is why we chose to train directly with RL, and with RL alone.
- Our model is still slow at carrying out tasks, because it reasons at length before every move. We apply no length penalty during RL and place no constraint on the length of its chain of thought. Inference itself is fast, at 747 tokens/s on a single GB300, but a round of this thinking still takes about 4.3 s on average (Figure 12), and in a few cases the chain of thought can reach 32k tokens, so that even with inference this fast, a single move takes more than half a minute. Shortening the reasoning without giving up success, for example by rewarding shorter chains of thought during RL, is left to future work.
- Our base model, Qwen3.8-27B, is relatively small, and with its limited capabilities it often lacks knowledge about the embodiment it controls, so this information has to be provided in the prompt. As a result, the task success rate can depend considerably on whether the model can form a clear understanding of the embodiment and the environment from the prompt, and the model reaches its best performance when the prompt gives it enough of the information it needs. For harder tasks, such as those in our demos, our model succeeds only after we describe the embodiment and the task to it in detail in the prompt. Its performance therefore depends heavily on the prompt, but this also demonstrates, to some extent, its ability to follow detailed language instructions.
- Our current model is not yet able to plan action chunks reliably, so we have it output the end-effector’s next pose; inverse kinematics and a controller then move the arm to that pose and stop it there. Accuracy therefore depends partly on the controller: a poorly implemented one can make the arm jump at some positions and miss the target pose, and an inefficient one uses up the task’s step budget and leaves fewer moves, which matters mainly in simulated evaluation. This design also increases the number of rounds a task needs: since each round moves the arm to a single pose, a complex motion that the model could otherwise complete in one round with one action chunk now has to be split into several rounds. We hope future work can improve this.
References
- 1OpenAI (2025). Computer-Using Agent.
- 2Anthropic (2024). Introducing computer use, a new Claude 3.5 Sonnet, and Claude 3.5 Haiku.
- 3Isola (2026). Robot-Use Agents.
- 4Yang et al. (2026). ORA: Open Robot-Use Agents.
- 5Zhang et al. (2026). Harness VLA: Steering Frozen VLAs into Reliable Manipulation Primitives via Memory-Guided Agents.
- 6Lu et al. (2026). ASPIRE: Agentic /Skills Discovery for Robotics.
- 7Liu et al. (2023). LIBERO: Benchmarking Knowledge Transfer for Lifelong Robot Learning.
- 8OpenAI (2026). GPT-6 Astra: A new generation of intelligence.
- 9OpenAI (2026). Introducing GPT-6.1 Sol.
- 10Qwen Team (2026). Qwen3.8-27B.
- 11Black et al. (2025). π0.5: a Vision-Language-Action Model with Open-World Generalization.
- 12Fei et al. (2026). LIBERO-Plus: A Progressive Robustness Benchmark for Visual-Language-Action Models.
- 13Zhou et al. (2025). LIBERO-PRO: Towards Robust and Fair Evaluation of Vision-Language-Action Models Beyond Memorization.
- 14Chen et al. (2026). RoboDojo: A Unified Sim-and-Real Benchmark for Comprehensive Evaluation of Generalist Robot Manipulation Policies.
- 15Yang et al. (2026). RoboLab: A High-Fidelity Simulation Benchmark for Analysis of Task Generalist Policies.
- 16NVIDIA (2026). Cosmos 3: Omnimodal World Models for Physical AI.
- 17Ye et al. (2026). World Action Models are Zero-shot Policies.
- 18NVIDIA GEAR Team (2025). GR00T N1.6: An Improved Open Foundation Model for Generalist Humanoid Robots.
- 19NVIDIA (2026). RoboLab Leaderboard.
- 20Shenfeld et al. (2026). RL’s Razor: Why Online Reinforcement Learning Forgets Less.
- 21MAA (2026). American Invitational Mathematics Examination (AIME).
- 22Rein et al. (2024). GPQA: A Graduate-Level Google-Proof Q&A Benchmark.
- 23Jain et al. (2025). LiveCodeBench: Holistic and Contamination Free Evaluation of Large Language Models for Code.
- 24Alvarez et al. (2025). Introducing NVFP4 for Efficient and Accurate Low-Precision Inference.
- 25Inco AI (2026). DFlash 2: Keep Drafting Parallel.
- 26Inco AI (2026). Splash: A Local Engine Built Around the Model.
- 27NVIDIA (2026). Kernel Design Agents (KDA).
- 28NVIDIA (2024). NVIDIA Model Optimizer.
- 29Shao et al. (2024). DeepSeekMath: Pushing the Limits of Mathematical Reasoning in Open Language Models.
- 30Yu et al. (2025). DAPO: An Open-Source LLM Reinforcement Learning System at Scale.
- 31Marek and Ryabinin (2026). Score Centering Stabilizes Off-policy Reinforcement Learning.
- 32Williams (1992). Simple Statistical Gradient-Following Algorithms for Connectionist Reinforcement Learning.
- 33Schulman et al. (2017). Proximal Policy Optimization Algorithms.
- 34Loshchilov and Hutter (2019). Decoupled Weight Decay Regularization.
- 35Sheng et al. (2025). HybridFlow: A Flexible and Efficient RLHF Framework.
- 36Liu et al. (2025). LMCache: An Efficient KV Cache Layer for Enterprise-Scale LLM Inference.
- 37Zhao et al. (2023). PyTorch FSDP: Experiences on Scaling Fully Sharded Data Parallel.
- 38Jacobs et al. (2024). System Optimizations for Enabling Training of Extreme Long Sequence Transformer Models.
- 39Shah et al. (2024). FlashAttention-3: Fast and Accurate Attention with Asynchrony and Low-precision.
- 40Zadouri et al. (2026). FlashAttention-4: Algorithm and Kernel Pipelining Co-Design for Asymmetric Hardware Scaling.
- 41Chen et al. (2016). Training Deep Nets with Sublinear Memory Cost.
- 42Mittal et al. (2025). Isaac Lab: A GPU-Accelerated Simulation Framework for Multi-Modal Robot Learning.
- 43Pyatkin et al. (2025). Generalizing Verifiable Instruction Following.
- 44xAI (2024). Grok-1.5 Vision Preview.
- 45Gemini Robotics Team et al. (2025). Gemini Robotics: Bringing AI into the Physical World.
- 46Yue et al. (2024). MMMU: A Massive Multi-discipline Multimodal Understanding and Reasoning Benchmark for Expert AGI.
- 47Yue et al. (2025). MMMU-Pro: A More Robust Multi-discipline Multimodal Understanding Benchmark.
- 48ModelScope Team (2024). EvalScope: Evaluation Framework for Large Models.
- 49Kwon et al. (2023). Efficient Memory Management for Large Language Model Serving with PagedAttention.
- 50Anthropic (2026). Introducing Claude Fable 5.2 and Claude Mythos 5.2.
- 51Bai et al. (2024). DigiRL: Training In-The-Wild Device-Control Agents with Autonomous Reinforcement Learning.
- 52Black et al. (2025). π0: A Vision-Language-Action Flow Model for General Robot Control.
- 53Carion et al. (2026). SAM 3: Segment Anything with Concepts.
- 54Chu et al. (2025). SFT Memorizes, RL Generalizes: A Comparative Study of Foundation Model Post-training.
- 55Chu et al. (2026). OpenRUA: Robot-Use Agents Are Zero-Shot Visuomotor Policies.
- 56Fan et al. (2026). CaPtain: A Pipeline for Post-Training Code-as-Policy Robot Agents.
- 57Fang et al. (2026). When Vision Overrides Language: Evaluating and Mitigating Counterfactual Failures in VLAs.
- 58Guo et al. (2025). DeepSeek-R1 Incentivizes Reasoning in LLMs through Reinforcement Learning.
- 59Hou and Zhao (2026). LangGap: Diagnosing and Closing the Language Gap in Vision-Language-Action Models.
- 60Huang et al. (2026). Scaling Online Exploration for Robot Agents.
- 61Khazatsky et al. (2024). DROID: A Large-Scale In-The-Wild Robot Manipulation Dataset.
- 62Kim et al. (2026). LIBERO-Para: A Diagnostic Benchmark and Metrics for Paraphrase Robustness in VLA Models.
- 63Kim et al. (2025). OpenVLA: An Open-Source Vision-Language-Action Model.
- 64Leet et al. (2026). The Bitter Lesson Comes to Robotics.
- 65Liu et al. (2026). RoboICL: Embodied In-Context Learning with GPT-6 Astra.
- 66Liu et al. (2025). What Can RL Bring to VLA Generalization? An Empirical Study.
- 67Liu et al. (2026). AgenticRoboRL: Bringing Coding-Agent Post-Training to Agentic Robotics.
- 68OpenAI (2025). Operator System Card.
- 69Physical Intelligence (2025). openpi.
- 70Pikus et al. (2026). Pretraining Knows What, Simulation Teaches How: Compositional Generalization for Agentic Robotics.
- 71Qi et al. (2025). WebRL: Training LLM Web Agents via Self-Evolving Online Curriculum Reinforcement Learning.
- 72Qin et al. (2025). UI-TARS: Pioneering Automated GUI Interaction with Native Agents.
- 73RoboDojo Team (2026). RoboDojo Sim Leaderboard, Agent Track.
- 74SenseNova et al. (2026). Has GPT-6-Astra Achieved Embodied Intelligence?
- 75Si et al. (2026). Fewer Tokens, Better Action: GPT-6 Astra Robot Agents with 14% Higher Success Rate but 65% Fewer Tokens.
- 76Wang et al. (2025). UI-TARS-2 Technical Report: Advancing GUI Agent with Multi-Turn Reinforcement Learning.
- 77Xie et al. (2024). OSWorld: Benchmarking Multimodal Agents for Open-Ended Tasks in Real Computer Environments.
- 78Yan et al. (2026). Flex-π: A Multi-Stream World-Action Model with Compute Flexibility.
- 79Yang et al. (2026). Astranomy: An Empirical Study of GPT-6 Astra as a Native Robot Policy.
- 80Yuan et al. (2026). Democratizing Robot-Use Agents: A Unified Harness with Open Models.
- 81Zhang et al. (2026). Restoring Linguistic Grounding in VLA Models via Train-Free Attention Recalibration.
- 82Zhang et al. (2026). An Unexpected Robot Policy: Early Evaluations of GPT-6 Astra on RoboDojo and Beyond.
- 83Zhou et al. (2024). WebArena: A Realistic Web Environment for Building Autonomous Agents.
- 84Zitkovich et al. (2023). RT-2: Vision-Language-Action Models Transfer Web Knowledge to Robotic Control.
Appendix
Training setup, breakdowns by suite, effort and perturbation, and the general benchmarks in full.
Training details
| Setting | Value |
|---|---|
| Base model | Qwen3.8-27B[10] |
| RL algorithm | GRPO[29] with DAPO’s group filter[30] and Score Centering[31]; a REINFORCE[32] policy loss in bypass mode, without PPO clipping[33] |
| Batch | 128 groups of 8 rollouts per step, counted after the group filter |
| Optimization | AdamW[34] with a learning rate of 10−6 and one update per step; the loss is averaged over the generated tokens of a batch (token-mean), without a KL penalty or an entropy bonus |
| Sampling | Temperature 1.0 over the full distribution |
| Curriculum | LIBERO-Goal, -Spatial and -Object for steps 1–148; all four LIBERO suites for steps 149–225; RoboDojo’s general_pickup and align_blocks for steps 226–340 |
| Max sequence length | 256k tokens on LIBERO, 160k on RoboDojo |
| Reasoning effort | xhigh throughout training |
| Framework | veRL[35], fully asynchronous |
| Rollout | veRL + LMCache[36]. H100: TP4; 64 rollouts per engine at a 160k cap and 32 at a 256k cap; 95%+ prefix-cache hits. GB300: TP2, without LMCache |
| Training | H100: FSDP8 × SP8[37, 38], 32,512 tokens per GPU, FlashAttention-3[39], activation offloading. GB300: FSDP4 × SP4, 69,632 tokens per GPU, FlashAttention-4[40]. Gradient checkpointing[41] throughout; one FSDP group per node, InfiniBand between nodes |
| Simulators | LIBERO: rendered on CPU on the rollout nodes. RoboDojo: Isaac[42] containers on separate GPU nodes |
Our training infrastructure, PEAR (a Post-training Engine for Agentic Robotics), is built upon veRL[35] and LMCache[36]. We trained our model on H100, H200 and GB300 GPUs, so we optimized PEAR for each of them. On H100 GPUs, we serve rollouts with TP4 and train the policy with FSDP8 × SP8, combining FSDP[37] with sequence parallelism[38] (SP) so that each GPU holds 32,512 tokens. On GB300 GPUs, we serve rollouts with TP2 and train the policy with FSDP4 × SP4, 69,632 tokens per GPU. Each node forms one FSDP group, and nodes communicate over InfiniBand. To fit such long sequences in memory, we use gradient checkpointing[41] throughout; on the H100, we also offload activations and use FlashAttention-3[39], and on the GB300, FlashAttention-4[40]. Each RL step uses 128 groups of 8 rollouts. LIBERO renders on the CPUs of the rollout nodes, while RoboDojo runs in Isaac[42] containers on separate GPU nodes. In total, the training took about 50,000 H100-equivalent GPU-hours.
During RL on LIBERO and RoboDojo, an episode averages 94k tokens, 1.8k of prompt and 92k of response, over 19.7 rounds, and contains 39 to 59 images. Episodes get shorter as training goes on, from 119k tokens over 19.9 rounds at the start to 82k over 18.5 rounds at the end. On H100 nodes, LMCache offloads the prefix KV cache to CPU memory, and we set the number of concurrent rollouts so that the prefix-cache hit rate stays at about 95% or above: each engine runs 64 rollouts concurrently when sequences are capped at 160k tokens, and 32 when they are capped at 256k. On GB300 nodes, we serve without LMCache, because their host memory is too small to serve as an offload tier. An H100 node with 8 GPUs and a GB300 node with 4 GPUs each generate about 2,000–3,000 tokens/s during rollout. Because of some bugs, we did not enable multi-token prediction (MTP) for rollouts, but we will support it later.
RL runs fully asynchronously on veRL[35], and we correct for the resulting mismatch between the rollout and training policies with Score Centering[31] alone, without truncated importance sampling.
LIBERO by suite and effort
LIBERO success rate (%) by suite
| Model | Effort | Spatial | Object | Goal | Long | Average |
|---|---|---|---|---|---|---|
| VLMs | ||||||
| Qwen3.8-27B | xhigh | 1.2 | 1.8 | 2.8 | 0.4 | 1.6 |
| GPT-6.1 Sol | max | 78.8 | 83.4 | 76.8 | 65.8 | 76.2 |
| GPT-6 Astra | max | 82.6 | 82.2 | 80.2 | 77.4 | 80.6 |
| GPT-6.1 Sol | medium | 22.8 | 69.2 | 58.2 | 42.2 | 48.1 |
| GPT-6 Astra | medium | 26.0 | 67.0 | 59.4 | 44.6 | 49.3 |
| VLA | ||||||
| π0.5 | – | 98.8 | 98.2 | 98.0 | 92.4 | 96.9 |
| Ours, trained on LIBERO | ||||||
| LIBERO only | xhigh | 85.8 | 97.0 | 61.4 | 53.2 | 74.4 |
| LIBERO only | low | 30.4 | 35.9 | 18.9 | 2.5 | 21.9 |
Robustness by suite and by perturbation
Trained on vs. never trained on
By suite
Success rate (%), full sets
| Model | Task | Position | Semantic | Object | Mean |
|---|---|---|---|---|---|
| π0.5 trained on LIBERO | 0.75 | 20.8 | 95.8 | 96.0 | 53.3 |
| Ours (LIBERO only) xhigh effort | 57.4 | 57.5 | 73.3 | 60.2 | 62.1 |
Never trained on
LIBERO-Plus by perturbation
Success rate (%), 10,030 episodes
RoboLab-120 by task difficulty
| Model | All | Simple | Moderate | Complex | Score |
|---|---|---|---|---|---|
| Our base model | |||||
| Qwen3.8-27B | 5.4 | 5.2 | 7.7 | 1.2 | 12.1 |
| Generalist robot policies | |||||
| Cosmos3-Nano-Policy | 36.8 | 40.6 | 35.4 | 25.3 | 51.9 |
| π0.5 | 28.0 | 29.7 | 31.5 | 13.5 | 43.4 |
| DreamZero | 25.7 | 26.1 | 30.0 | 14.1 | 39.8 |
| GR00T N1.6 | 7.2 | 8.8 | 7.9 | 0.0 | 17.1 |
| Ours | |||||
| LIBERO only | 22.1 | 28.6 | 19.5 | 3.5 | 35.0 |
| LIBERO + RoboDojo | 37.3 | 44.6 | 35.8 | 13.2 | 51.3 |
General benchmarks, with 95% intervals
| Benchmark | Qwen3.8-27B | Ours | Change | 95% CI |
|---|---|---|---|---|
| AIME 2026[21] math | 98.3 | 98.5 | +0.2 | [−1.7, +2.9] |
| GPQA Diamond[22] science | 89.6 | 89.7 | +0.1 | [−1.0, +1.2] |
| IFBench[43] instruction following | 73.0 | 72.7 | −0.3 | [−4.0, +3.3] |
| LiveCodeBench v6[23] coding | 88.0 | 88.4 | +0.4 | [−2.1, +2.9] |
| RealWorldQA[44] visual QA | 84.1 | 83.7 | −0.4 | [−2.4, +1.6] |
| ERQA[45] embodied reasoning | 68.5 | 66.5 | −2.0 | [−6.2, +2.2] |
| MMMU (val)[46] multimodal | 80.7 | 81.0 | +0.3 | [−1.3, +2.0] |
| MMMU-Pro standard[47] multimodal | 77.3 | 77.6 | +0.3 | [−1.1, +1.7] |
| MMMU-Pro vision[47] multimodal | 75.4 | 75.4 | +0.1 | [−1.4, +1.5] |
| Mean change | −0.15 |
BibTeX
@misc{pear2026,
title = {Training Reasoning Models in Simulation to Natively Use Real Robots},
author = {Jiaming Tang and Zhuoyang Zhang and Junxian Guo and Fangzhou Zhao and
Yilong Zhao and Zekai Li and Xingyang Li and Yuyang Zhao and Song Bian and
Zhijian Liu and Song Han},
year = {2026},
url = {https://mit-han-lab.github.io/pear-blog/}
}