Enterprises get up to 2 months of usage free.
See termsContact sales

Research · Technical report

Praxis-1: From Video Pretraining to Robot Control

An open weight world action model that turns Runway’s video pretraining into control for real robots.

November 2026

by Runway

Code, weights and integrations: see the launch post.

#1 World Action ModelPraxis-1 ranks #1 among world action models and among all open source robot foundation models on NVIDIA’s RoboLab-120 leaderboard. It also achieves a competitive success rate on real-world Franka tasks against state-of-the-art policy models.
0%10%20%30%40%50%60%success (%)46.2%Praxis-142.9%FLUX 3 Action39.6%Atomic-WAM39.0%OASIS WAM36.8%Cosmos 3 Nano28.0%π0.5 (VLA)25.7%DreamZero7.3%GR00T N1.6 (VLA)
Everyday Tasks in Real-timePraxis-1 controls a bimanual YAM robot and a single Franka arm through everyday tasks that need contact and coordination: placing a mug upside down on a tray, putting an item in a box and closing the lid, clearing bottles into a bin and closing a drawer, and more.
Adapts to New RobotsPraxis-1 adapts quickly to new robots. From under 30 minutes of data, it succeeded in all 15 simulated trials on two layouts of Noble Machines’ robot. It also shows competitive results in Google RT-1 SimplerEnv against other specialized models. It can be fine-tuned on the low-cost SO-101 to solve a range of real-world tasks.

1.Introduction

Robotics deployments keep running into the same problem: real-world robot data is scarce, and collecting enough of it to train a generalist policy is expensive. Some labs respond with more teleoperation, others with more egocentric footage. We think the most scalable source is general video, the everyday footage people already record in huge volume. A model trained to predict that video learns how objects behave, how hands move and what a task looks like partway through. A robot can build on that knowledge.

With Praxis-1, we turn a 27B-parameter video foundation model into an open weight world model that predicts the future in short chunks. A small action expert reads the video model’s internal state as it imagines what comes next. Each time the robot acts, Praxis-1 predicts both what the scene will look like and the motion that will get it there.

Praxis-1 fine-tuned on DROID is the top world action model and the top open-source robot foundation model on the RoboLab-120 leaderboard. On a real Franka arm it achieves a competitive success rate against the previous state-of-the-art world action model.

Praxis-1 can adapt to various embodiments, from single arms to bimanual robots and mobile manipulators. We showcase everyday tasks such as placing a mug upside down on a tray, putting an item in a box and closing the lid, clearing bottles into a bin or closing a drawer. The model can also adapt to embodiments that it hasn't seen in training data. We detail this with Noble Machines, Google's RT-1 and SO-101 below.

2.Architecture

Praxis-1 has three parts. A video backbone predicts what the scene will look like next, and an action expert reads the predicted video features to work out the motion that produces it. Thin per-robot projections translate each robot’s poses and actions into a shared format, so one model can control different embodiments. On each call, the model takes an instruction, the latest camera frames and the robot’s current pose. It returns a predicted chunk of future video along with 1.6 seconds of actions: 24 action rows at 15 Hz. The robot executes the chunk, sends back what its cameras saw and calls again.

InstructionQwen3.5-2B (frozen)Camera canvasWan2.2 VAE (frozen)Noised actions+ chunk-start poseper-robot input projectionsVideo backbone · 26.9B (2.8B active) · encoder 14 blocks2×2 latent patches · chunk-causal attention012345678910111213Backbone decoder6 blocks · full gridnoised chunk onlyVideonext chunkAction expert · 16 layers · 314M · per-robot output projectionXSXSXSXSXSXSXSXSActionsnext chunk24 rowsdenseMoEtappedX cross · S self-attention8 taps: each cross-attention layer reads one backbone encoder block. Nothing flows back from the expert into the backbone.
Tap or hover a blockEach block shows its key facts here.
Figure 1 — The backbone and the action expertTap or hover a block for its role. Video and actions are both predicted one chunk at a time (24 action rows, 1.6 s at 15 Hz). Each robot has its own thin input and output projections; the backbone and the action expert are shared. Parts are described below.

2.1The video backbone

Praxis-1 is built on Runway's video foundation model: a diffusion transformer split into a condition encoder and a velocity decoder (a DDT layout, after Wang et al., 2025). It works in the latent space of a frozen Wan2.2 VAE and reads instructions through a frozen Qwen3.5-2B text encoder. 17 of its 20 feed-forward layers are mixture-of-experts (MoE); only the first two encoder blocks and the first decoder block stay dense.

Each MoE layer has one shared expert that every token uses, and 128 small routed experts, of which each token picks eight. The nine experts a token passes through add up to the width of one dense layer, so the compute per token stays about the same as a dense block while the layer holds 129 experts' worth of parameters. In total the backbone has 26.9B parameters, of which about 2.8B are active for any token. Experts are balanced as in DeepSeek-V3 (DeepSeek-AI, 2024): a routing bias that needs no auxiliary loss, plus a small sequence-level auxiliary loss.

The base model was trained to generate whole clips at once, with every frame able to see every other frame, including later ones. A robot can’t see the future, so during mid-training we change the attention to be chunk-causal: the model works through time in 1.6-second chunks of six latent frames, and each chunk can only see the chunks before it. Each chunk is denoised from its own noise level while attending to itself and to clean copies of the earlier chunks. In training, those earlier chunks come from real video rather than the model’s own predictions, a setup known as teacher forcing, which lets us train on four chunks at once in a single parallel pass. At inference, the model applies the same rules one chunk at a time. By default it reads one earlier chunk of real camera frames from the robot, so it sees the same kind of clean context it saw in training. The attention mask is shown below, alongside the action expert’s.

2.2The action expert

The expert is a dense 16-layer transformer of width 1024, with about 314M parameters. It is closest in spirit to DeVA (Zhang et al., 2026), which also keeps a separate action expert that reads several depths of the video model. Its layers alternate between cross-attention into the backbone and self-attention. Each cross-attention layer reads one of eight backbone encoder blocks, spread from early to late layers, while a shared normalization and a 3072→1024 projection bring the backbone features to the expert's width.

Per chunk the expert holds one absolute pose token, eight learned "future" tokens and six action tokens of four rows each. Its queries for chunk k see the clean backbone frames before k and the backbone's noised frames of chunk k itself. The expert therefore reads the future as the backbone imagines it. The backbone never reads the expert, but the action loss still trains the backbone through those cross-attention reads.

We also tried putting action tokens inside the backbone (a mixture-of-transformers layout). On our offline proxy, a short bimanual fine-tune scored on action error, this layout showed no clear difference from the separate expert (+0.01 cm) and cost more. Thus we kept the separate action expert and leave other architectures as future work.

keys (what is read) →queries ↓GN0N1N2N3C0C1C2A0A1A2A3G = global tokens (registers, anchor frame, instruction) · N = noised chunksC = clean copies of chunks · A = expert tokens of each chunk
Hover or tap a rowHighlighted cells are what that query can attend to.
Figure 2 — What the action expert attends toHover over a row to see what each token can attend to.

2.3Inputs and sampling

CamerasExterior + wrist, each resized to a 224×416 tile, side by side on a 224×832 canvas, 15 fps
Window93 frames at 15 fps in training: an anchor frame, a shorter first chunk and three full chunks
Action rowSet per embodiment, each with its own projections. Single-arm end-effector control (DROID Franka) is 10-D: xyz, 6-D rotation, gripper; bimanual YAM is 20-D (two arms); human hands on egocentric video use 21-joint 3-D poses. Position and rotation relative to the pose at the chunk start; position and gripper normalized with 1st–99th percentile bounds and clipped
Chunk24 rows = 1.6 s at 15 Hz (21 rows on the first call of a context window), executed in full
Robot stateAbsolute pose at the chunk start, z-scored; dropped out for 10% of training samples
Per-robot partsAction-in, pose-in and action-out projections. Backbone and expert are shared across robots
ObjectiveRectified flow on both streams. One video noise level per chunk, weighted toward high noise; one action noise level per chunk, uniform and drawn independently
Sampler2 joint Euler steps over video and actions, 1 context chunk, text-only guidance on the video. How we chose the guidance settings: Finding the optimal guidance
Size27.2B parameters in total, 54.4 GB in bf16; runs on one 80 GB GPU

3.Training stages

Praxis-1 learns how the world works before it learns to act. Training runs in four stages, each starting from the weights of the one before, and video prediction stays part of the objective throughout. When actions are introduced, the model learns them alongside video rather than in place of it. Each stage reaches its effective batch size through gradient accumulation on top of the GPU count.

01Video pretraining

The backbone starts as Runway's video foundation model, a single model pretrained on twelve generation tasks: text to image, video, audio or video with audio, and the same targets conditioned on up to three reference images, clips or sounds (for example, image-and-text to video). It trains on general video with full-sequence attention, on clips of up to 20 seconds.

02Embodied-video mid-training

The backbone switches to chunk-causal attention and trains on embodied video at 15 fps: footage of hands and robots doing things. Most is egocentric human video (cooking, cleaning, assembly, packing and more), alongside robot video, general video and a little gameplay. Training sequences are up to 20 seconds long, trained with teacher forcing: each chunk is predicted from clean copies of the chunks before it.

Egocentric human video58%General video20%Real-robot video18%Gameplay<1%
Figure 3 — Mid-training data mixShare of mid-training tokens by video type, for the checkpoint the release was fine-tuned from.
03Video & action joint mid-training

The action expert is attached with fresh weights and robot windows get action targets: single arms, pairs of arms and low-cost bimanual arms, each through its own projections. To protect the video model, the expert's learning-rate multiplier and the scale of the action gradient into the backbone ramp from zero to one over the first 1,500 updates.

Video backbone (shared)imagines the next chunkAction expert (shared)reads the backbone while it imaginesDROIDsingle armYAMtwo armsLow-cost armsbimanual kitsUMIhandheld gripperHuman hands21 jointsper-robot input (action, pose) and output layers, swapped per embodiment
Figure 4 — One action expert, swappable robot headsThe backbone and the action expert are shared across robots; each robot adds only its own thin input and output layers. Examples from the mid-training mix.

The loss is an equal-weight sum of the video and action velocity losses. The two noise levels are drawn independently, so the action noise level is never tied to how clean the video is. Muon optimizes most weight matrices, and AdamW handles the embeddings, heads, input and output projections and routers. Gradients are clipped at 1.0, and only the text encoder and VAE are frozen.

During this stage we still keep about 30% video-only tasks carried over from stage 2, so the video model keeps training on footage without action targets.

04Embodiment-specific FT

The last stage fine-tunes the whole mid-trained model for one target robot, and the other fine-tunes in this post (bimanual YAM and RT-1) follow the same recipe. The backbone and the action expert are loaded exactly as they were at the end of mid-training, and only the robot’s own input and output projections start from scratch. Everything except the frozen encoders is trained, with the video loss still on. The table gives the numbers for the example used throughout this post: a single-arm Franka, fine-tuned on DROID, a public dataset of real-world Franka demonstrations.

DataSuccessful DROID episodes only, about 277 hours, exterior + wrist cameras, sampled as 20-second clips
Batch128 windows per optimizer step on 128 H100s
Schedule50k optimizer steps, learning rate 5×10−5
Starting pointAn action mid-training checkpoint

4.Mid-training Compute Scaling

We expect more mid-training compute to give fine-tuning a stronger base model. We tested this on two robots: Franka, which is seen in our DROID mid-training data mix, and RT-1, a new embodiment never seen in any pretraining or mid-training stage. Each point is a checkpoint from the same mid-training run, placed by the total compute spent to reach it, video pretraining included. Because later checkpoints revisit the same mid-training data, this measures more training compute rather than more data.

In our experiments on two embodiments, more mid-training did lead to better fine-tunes. We fine-tuned five checkpoints from the video and action mid-training run on DROID with the same schedule. On RoboLab-120, with the same sampler settings for every point, the first four scored progressively higher, 25.5%, 35.2%, 39.2% and 41.2%, and the fifth leveled off at 41.2%.

RT-1 is absent from the mid-training data, which allows us to test the same question on an unseen robot. We fine-tuned five mid-training checkpoints on RT-1 with the same recipe. SimplerEnv success rose from 56.3% for the earliest checkpoint to 80.0% for the latest, though not at every step (Figure 6). We see a trend of closed-loop improvement on both the seen and unseen embodiments, but the exact relationship needs further study.

RoboLab-120 success (higher is better)

203040success (%)6789total training FLOPs (1e23, log)25.5%35.2%39.2%41.2%41.2%
Figure 5 — Fine-tune quality vs total training compute, DROID (seen embodiment)RoboLab-120 success (%). DROID is in the mid-training data. Each point is a DROID fine-tune from a mid-training checkpoint. Log-log axes; the dashed line is a fitted trend over five points, a guide rather than a law.

RT-1 SimplerEnv success (higher is better)

5060708090success (%)6789total training FLOPs (1e23, log)56.3%65.6%66.9%64.1%80.0%
Figure 6 — Fine-tune quality vs total training compute, RT-1 (unseen embodiment)SimplerEnv success (%), Google robot visual matching, four tasks, 864 episodes per point; each fine-tuned for 30k steps. Bars are 95% intervals. Log-log axes; dashed line is a fitted trend, a guide rather than a law.

5.Inference

Our model predicts actions chunk by chunk: the robot executes the whole chunk, sends back the frames it saw and calls again over a single WebSocket. Each policy call returns 24 action rows at 15 Hz, or 1.6 seconds of motion, denoised with the imagined video in two joint Euler steps. The first call of a context window returns 21 rows instead, because the first of its six latent frames covers only the current frame, not four. On a single H100 server, a call with the default chunked execution takes about 0.55–0.6 seconds round trip, about a third of the 1.6 seconds of motion it returns. By default, we run video classifier-free guidance (CFG) sequentially.

chunk 1 · 1.6 schunk 2 · 1.6 schunk 3 · 1.6 schunk 4 · 1.6 schunk 5 · 1.6 sCall 1first framespredicted: video + actionsfuturefuturefutureCall 2executedcontext (clean)predicted: video + actionsfuturefutureCall 3executedexecutedcontext (clean)predicted: video + actionsfuture
Figure 7 — How Praxis-1 predicts the next chunkEach call reads one clean context chunk (blue) and predicts the next 1.6 s of video and actions together (pink). The robot executes the chunk, and the frames it saw become the next context.

We have also explored real-time chunking (RTC): instead of waiting for a chunk to finish, the robot asks for its next chunk partway through the current one and keeps moving. The hard part is the junction. Blending the old and new plans made the arm oscillate, so the new plan instead continues from where the arm will actually be, using the model's own motion. On our bimanual station, this cut the time spent holding still about fivefold (from 32% to 5% in a session where each call took 0.8–0.9 seconds, and from 16% to 3% with a faster server at about 0.3 seconds per call). On a five-object pick-and-place into a bag, RTC reached a comparable success rate (24/30 vs 28/30 chunked) and finished faster (median 9.1 vs 15.2 seconds to success). RTC is opt-in in our release repo; chunked execution is the default. With RTC on, the server also precomputes the backbone while the robot is still executing, which cuts the round trip to about 0.4 seconds; the actions are bit-identical to RTC without it.

Released server, one H100, p50 per callRound tripServer time
Bimanual YAM, chunked (default)575 ms545 ms
Bimanual YAM, RTC (opt-in)385 ms128 ms
Single-arm Franka (DROID), chunked (default), video CFG 4552 ms522 ms
Single-arm Franka (DROID), RTC (opt-in), video CFG 4408 ms124 ms
Motion returned per call24 rows, 1.6 s at 15 Hz (21 rows on the first call)

6.Results

Every result in this section comes from the same Praxis-1 checkpoint, fine-tuned on DROID using the recipe in Training Stages. We evaluate it in simulation on RoboLab-120, and on a real Franka FR3 arm operated by Positronic.

#1world action model
#1open source robot foundation model

On NVIDIA’s RoboLab-120 leaderboard, as of publication.

RoboLab-120 is NVIDIA's simulation benchmark of 120 tabletop tasks for a DROID-style arm. Under the official protocol of 10 trials per task, Praxis-1 finetuned on DROID solved 555 of 1,200 episodes (46.2%), the highest of any world action model and of any open source robot foundation model on the leaderboard. FLUX 3 Action follows at 42.9%. Praxis-1 is also ahead of every open weight VLA on the board, including π0.5 and GR00T N1.6.

0%10%20%30%40%50%60%success (%)46.2%Praxis-142.9%FLUX 3 Action39.6%Atomic-WAM39.0%OASIS WAM36.8%Cosmos 3 Nano28.0%π0.5 (VLA)25.7%DreamZero7.3%GR00T N1.6 (VLA)
Figure 8 — RoboLab-120 success: world action models and open weight VLAsWorld action models (dark) and open weight VLAs (gray); 10 trials per task.

Successful episodes, one per task.

RoboLab-120 · success
Bananas In Bin Three Total“Make sure there are 3 (three) bananas in the gray bin.” Task score 10/10. Exterior + wrist. 1x speed.
RoboLab-120 · success
Stack Yellow On Red“Stack the yellow block on the red block” Task score 10/10. Exterior + wrist. 1x speed.
RoboLab-120 · success
Reorient White Mugs“Make sure all the white mugs are upright so that the opening is facing upwards.” Task score 10/10. Exterior + wrist. 1x speed.
RoboLab-120 · success
Rubiks Cube Behind Bowl“Put the rubiks cube behind the bowl” Task score 10/10. Exterior + wrist. 1x speed.
RoboLab-120 · success
Blocks In Bin“Sort all colored blocks into the bin” Task score 10/10. Exterior + wrist. 1x speed.
RoboLab-120 · success
Rubiks Cube Then Banana“Put the cube then the banana in the bowl” Task score 9/10. Exterior + wrist. 1x speed.
RoboLab-120 · success
Smaller Object Butter In Bin“Place the smaller object in the gray bin.” Task score 10/10. Exterior + wrist. 1x speed.
RoboLab-120 · success
Fruits Green Limes On Plate“Put all the green fruit on the plate” Task score 10/10. Exterior + wrist. 1x speed.
RoboLab-120 · success
Fruits On Plate3“Put three (3) fruits on the plate” Task score 10/10. Exterior + wrist. 1x speed.
RoboLab-120 · success
Marker In Mug“Put the whiteboard marker in the mug” Task score 7/10. Exterior + wrist. 1x speed.
RoboLab-120 · success
Unstack Rubiks Cube“Unstack the rubiks cube tower” Task score 10/10. Exterior + wrist. 1x speed.
RoboLab-120 · success
Stack White Mugs“Stack the white mugs on top of each other.” Task score 9/10. Exterior + wrist. 1x speed.
RoboLab-120 · success
Take Measuring Spoon Out“Take the white colored measuring spoon out of the red bowl and put it on the table.” Task score 10/10. Exterior + wrist. 1x speed.
RoboLab-120 · success
Condiments In Bin“Sort the sauce condiments into the gray bin” Task score 8/10. Exterior + wrist. 1x speed.
RoboLab-120 · success
Pink Spoon In Pot“Put the pink spaghetti spoon in the pot” Task score 7/10. Exterior + wrist. 1x speed.
RoboLab-120 · success
Keyboard Out Of Bin“Take the keyboard out of the bin and put it on the table” Task score 7/10. Exterior + wrist. 1x speed.
1–3 / 16

Four entries score above Praxis-1 on RoboLab-120. The top two are agents that drive a frontier model directly rather than trained policies: AMP1 (86.0%), listed as a zero-shot frontier-model agent, and SenseNova-RoboRSI (57.1%), which runs a frontier vision-language model as the policy. SenseNova-RoboRSI is far slower than Praxis-1: its authors report about 55 minutes of computation per episode for 8–76 seconds of commanded motion on a comparable tabletop benchmark (RoboDojo), and call the execution time impractical for deployment (arXiv 2610.22471). Praxis-1 computes each 1.6-second chunk of motion in about 0.55–0.6 seconds on one H100. The other two, Lakeside (51.0%) and BiMind v0.5 (49.2%), are closed models trained partly on simulation data, and BiMind v0.5 was fine-tuned on RoboLab data.

7.Everyday Tasks in Real-time

Topping a leaderboard is one thing; running on a real robot is another. Here Praxis-1 runs two real robots on everyday tasks: a bimanual YAM robot, whose two arms work together on tasks one arm cannot do alone, and a single Franka arm. Every clip below shows the policy in control, with no teleoperation, played at 1x.

The YAM fine-tunes follow the same recipe as DROID: they start from an action mid-training checkpoint and learn from roughly 1,400 to 2,600 hours of bimanual YAM recordings with three cameras.

7.1Two arms (YAM)

Collected on bimanual YAM stations at the Runway office, real speed; each clip is labeled with its instruction.

“Pick up the purple comb on the right then put the purple comb into the bag”1x speed.
Exterior View
Left Wrist
Right Wrist
0:00
“Pick up the red die, black pen and yellow sponge and place each one in an empty plate”1x speed.
Exterior View
Left Wrist
Right Wrist
0:00
“Place the white mug upside down on the yellow tray”1x speed.
Exterior View
Left Wrist
Right Wrist
0:00
“Pick the teddy bear and place it on the towel”1x speed.
Exterior View
Left Wrist
Right Wrist
0:00
“Pick up the lid and close the box”1x speed.
Exterior View
Left Wrist
Right Wrist
0:00
“Pick up the red pepper and place it in the mug”1x speed.
Exterior View
Left Wrist
Right Wrist
0:00
“Pick up the cutting board and place it in the yellow tray”1x speed.
Exterior View
Left Wrist
Right Wrist
0:00
“Pick up the plastic bottles and place them in the silver garbage”1x speed.
Exterior View
Left Wrist
Right Wrist
0:00

7.2Single arm (Franka, DROID)

Collected by Positronic on a Franka FR3 station, real speed; each clip is labeled with its instruction.

“Put the spoon in the mug”1x speed.
Exterior View
Wrist View
0:00
“Close the drawer”1x speed.
Exterior View
Wrist View
0:00
“Move the cup to the right”1x speed.
Exterior View
Wrist View
0:00
“Put the pen in the cup”1x speed.
Exterior View
Wrist View
0:00
“Put the marker on the table”1x speed.
Exterior View
Wrist View
0:00
“Put the fork on the plate”1x speed.
Exterior View
Wrist View
0:00
“Put the yellow block in the blue cup”1x speed.
Exterior View
Wrist View
0:00

7.3Compare to a frontier LLM agent

Frontier multimodal models can now drive robot arms zero-shot, through tool or code interfaces. GPT-6 Astra placed above every public entry on RoboDojo when it was first evaluated, with 22.5% success (Zhang et al., 2026), and reaches 76.0% on RoboTwin 2.0 (Zhou et al., 2026). These agents are general: they solve a wide range of tasks zero-shot, and today they lead the RoboLab-120 leaderboard, where the top two entries are LLM agents (86.0% and 57.1% success). Their drawbacks are latency and cost. On the AA-Robotics benchmark, Astra averaged 30 minutes and $16.36 per tabletop task, against 20 seconds for a person (Artificial Analysis, 2026), and Zhou et al. report that its inference latency hinders practical deployment.

To measure this gap ourselves, we ran Praxis-1 and GPT-6 Astra on the same YAM teleoperation station, through the same console, on the same three tasks. On average, Astra took 15.6x longer to finish a task and cost 51x more per completed task (Figures 11 and 12).

“Remove the cap from the pen” · same robot · both played at 8x real time
0:00
Figure 11 — Removing the pen cap: Praxis-1 vs GPT-6 AstraOverhead camera. The clock on each side is robot time. Praxis-1 (left) finishes in 0:13; GPT-6 Astra (right) takes 7:54.
TaskAverage time to finishAverage cost per completed task
Praxis-1AstraFaster with Praxis-1Praxis-1AstraCheaper with Praxis-1
Pen cap0:157:4831x$0.08$3.4743x
Sponge in bag0:222:467.4x$0.03$1.2049x
Die in bag0:112:0411.5x$0.01$0.9379x
All three0:164:1315.6x$0.04$1.8751x
Figure 12 — Time and cost per task, Praxis-1 vs GPT-6 AstraTime averages successful episodes, from when the policy takes control until the episode ends. Cost per completed task counts every episode, failures included: one H100 at $3.95/hour for Praxis-1, the API bill for Astra. Data collected November 9, 2026.

Frontier LLM agents are advancing quickly, and the two approaches are complementary: an agent can plan a new task, and a fast policy like Praxis-1 can carry out each step in real time. We are studying how to pair them as future work (see Where we go from here).

8.Adapts to New Robots

8.1Noble Machines, from 29 minutes of data

We fine-tuned Praxis-1 for Noble Machines’ robot on a single task, picking up pieces of wood and placing them in a container. The training data was 154 teleoperated episodes, about 29 minutes in total, with 26 minutes used for training and 3 held out for validation. After 4,000 fine-tuning steps (the last 1,000 with a decaying learning rate), about 3.6 hours on 16 GPUs, we tested the model in a simulation of Noble Machines’ robot and task. On the two layouts it was trained on, it succeeded in all 15 trials (10/10 and 5/5). On a harder warehouse task not in its training data, clearing a pile of three planks into two bins, it fully succeeded in 6 of 10 episodes and placed 25 of 30 planks. We haven’t yet run it on the physical robot, but the result is an early sign that a strong mid-trained base model can learn a new robot and task from a small amount of data.

“Pick up wood and place it in the tilt truck”Original layout. 1x speed.
Simulation
0:00
“Pick up the plank from the black tray and place it into the black bin”Three planks from a pile, a harder task not in the training data: all three placed in the bins. 1x speed.
Simulation
0:00
Figure 13 — Noble Machines, in simulationTwo successful simulated episodes, 1x speed: a layout from training (left) and the harder pile task (right), a 46-second episode with two bins and a 3-plank pile, where training had only single picks.

8.2Google RT-1

To further test how Praxis-1 approaches a robot it hasn't seen before, we fine-tuned on RT-1, Google's mobile manipulator, whose recordings never appeared in our mid-training mix. From the latest mid-training checkpoint, we fine-tuned for 30k steps (about 28 hours on 32 H100s) on the full RT-1 train split: about 78k episodes and 95 hours, head camera only. We scored the model on SimplerEnv's official visual-matching grid (864 episodes over four tasks), the benchmark most RT-1 policies report.

Praxis-1 fine-tuned on RT-1 reaches 80.0% averaged over the four tasks, above RT-1 itself (52.4%). Comparatively, FLUX 3 Action reaches 39.7% when we fine-tune it on the same RT-1 data from its base checkpoint with Black Forest Labs’ published DROID fine-tuning recipe.

0%20%40%60%80%100%success (%)Pick coke canMove nearOpen / close drawerPut apple in drawerMean (4 tasks)98.381.756.583.380.085.744.273.16.552.470.044.238.95.639.7
Figure 14 — SimplerEnv Google robot (visual matching), per taskPer-task success on the official visual-matching grid.
“Pick coke can”Simulation.
Head Camera
0:00
“Move orange near Red Bull”Simulation.
Head Camera
0:00
“Put apple in top drawer”Simulation.
Head Camera
0:00

8.3SO-101

SO-101 is a low-cost, open-source single arm built for hobbyists and researchers, and its community has uploaded thousands of small LeRobot datasets. We gathered 3,956 public SO-100/SO-101 datasets from 1,783 contributors, about 1,260 hours, mostly recorded at 30 fps and 640x480. Each has one to three scene cameras, and 2,438 of them (about 860 hours) also have a wrist camera.

Camera names in community datasets are unreliable: a camera called “phone” or “top” is often mounted on the wrist. So we labelled every camera from its video, and counted it as a wrist camera only when two checks agreed: motion (a fixed scene camera keeps most of its pixels still over 64 frames, a wrist camera does not) and appearance (a zero-shot CLIP model).

We held out 102 whole datasets (64 hours) from fine-tuning for validation, and fine-tuned Praxis-1 on the training episodes of the rest, about 1,070 hours from 3,814 datasets. Each sample uses one scene camera, plus the wrist camera when there is one; wrist datasets are also sampled with the scene camera alone, so one model runs with or without a wrist camera. The model predicts the arm’s five joints (as offsets from the current state) and the gripper at 15 Hz, in 1.6-second chunks. Instructions are the clip’s task or auto-captioned sub-steps that fall inside each training window. Each clip below shows the policy in control on a single instruction, played at 1x.

“Fold the towel in half”1x speed.
Scene View
0:00
“Grab the sponge then wipe the green plate with it”1x speed.
Scene View
0:00
“Put the pink eraser in the purple bowl then drop it”1x speed.
Scene View
0:00
“Put the teddy bear on the towel”1x speed.
Scene View
0:00

9.Finding the optimal guidance

Praxis-1 samples each action chunk with two denoising steps and applies classifier-free guidance to the instruction only: the unguided pass keeps the video history and the pose but swaps the instruction for a blank caption. The video guidance scale sets how strongly the predicted video follows the instruction, and a scale of 1 turns it off. The second knob is the flow shift, which warps the time grid of the two denoising steps. A larger shift leaves more of the denoising to the second step. Video and actions share one shift, which we tune for both together; giving each its own shift is left for future work.

We set both knobs with a step-wise search on a fixed set of simulated environments, starting from no video guidance at shift 8. Adding video guidance helped, and raising it together with the shift helped more, ending 4.0 points above the start; pushing either knob further scored lower. We ship video CFG 4 with shift 12.5 and two denoising steps. These guidance settings are embodiment-specific: they were tuned for the DROID Franka, and other robots need their own.

0.00.20.40.60.81.0(video CFG − 1) / (shift + 1)124812.51624joint shift (2 denoising steps, log)0.0−14.0+1.7−0.7+4.0+2.2−0.3
Figure 15 — How much video CFG steers the actions, by settingCircles are tested settings, labeled with the change in task success rate from the starting setting (no video guidance, shift 8), in percentage points; arrows show the search.

10.Offline evaluation

Alongside closed-loop benchmarks, we judge the model open loop in two ways: how accurate its actions are, and whether the future it imagines follows the instruction.

10.1Does the error come from the predicted video or the predicted actions?

We measure action error as the distance between the predicted and ground-truth absolute end-effector positions, on 32 held-out DROID windows. We use two conditioning modes to separate two sources of error: imagining the wrong future, and reading the wrong motion off the right one.

  • Deployment: the model samples its own video and actions together, as it does on the robot.
  • Oracle: we give the model the true future video, noised to the sampler's level, and sample only the actions, following the oracle test in mimic-video (Pai et al., 2025).

We observe that most of the remaining error comes from which future the video model imagines, not from the action expert, so improvements to future video prediction should pay off most. Given the real future, the error is about one-fifth as large. Note that deployment error is not a fully reliable metric: it combines future-video and future-action prediction, and several different futures can accomplish the same task. We discuss a better way to evaluate generated videos in the next section.

0 cm1 cm2 cm3 cm4 cm5 cm6 cm7 cmaction error (cm)1.14 cmOracle5.71 cmDeployment
Figure 16 — Oracle vs deployment action error, released checkpointMean end-effector error on held-out DROID windows; error bars are ±1 standard error. Lower is better.

10.2Can the model picture the task before doing it?

To understand how the model plans and imagines the future, we give it a single first frame of a 3D-built scene instead of a real episode (only the background comes from a real image, with objects of various colors, sizes and positions added), the instruction and the robot’s real starting pose. It then rolls itself out for 12.6 seconds, predicting video and actions together with no ground truth after the first frame. A vision-language judge watches each predicted video and counts it as following the instruction only if the right object is acted on, it goes to the right place and the action is correct. The scenes are built with look-alike objects, to test how robustly the model follows the prompt. Instruction following in imagination is a proxy for how well the model understands the task; how it relates to real-world success still needs further study.

Examples from the DROID prompt set: 12.6-second open-loop self-rollouts of Praxis-1 finetuned on DROID, starting from the first frame shown, with the judge’s verdict.

Praxis-1 finetuned on DROID from the first frame and instruction shown, with the judge’s verdict.
0:00
Praxis-1 finetuned on DROID from the first frame and instruction shown, with the judge’s verdict.
0:00

The same imagined-rollout method also evaluates the mid-training base model, which is not fine-tuned on any specific embodiment. These long-horizon examples come from that base model on a bimanual YAM station, shown for video quality rather than task success. Each starts from a single first frame of a 3D-built scene instead of a real episode, and the model imagines all three cameras for up to 20 seconds with no robot and no actions. We also change the instruction during each rollout to see if the model can react to it in its video prediction, as listed above each example.

Towel foldPrompts: Fold the towel. → Fold the towel. (9 s) → Move both arms back to their rest position (19 s)
Scene
Left Wrist
Right Wrist
0:00
Two bowlsPrompts: Put the yellow rubber duck in the green bowl → Put the red apple in the white bowl (8 s) → Put the carrot in the white bowl (14 s)
Scene
Left Wrist
Right Wrist
0:00
Relay (handover to basket)Prompts: Pick up the tennis ball with the right arm, hand it over to the left arm and put it in the wicker basket → Pick up the blue block with the right arm, hand it over to the left arm and put it in the wicker basket (9 s) → Move both arms back to their rest position (17 s)
Scene
Left Wrist
Right Wrist
0:00
Wipe the sauce spillPrompts: Pick up the white tissue and wipe the red sauce off the table with it → Put the tissue down next to the clean spot (11 s) → Move both arms back to their rest position (14 s)
Scene
Left Wrist
Right Wrist
0:00
Book into bookshelfPrompts: Pick up the yellow book and put it in the bookshelf standing upright, vertically next to the other books → Move both arms back to their rest position (8 s)
Scene
Left Wrist
Right Wrist
0:00
Dish rackPrompts: Grab a plate with the right arm → Pass the plate from the right arm to the left (5 s) → Insert the plate into the dish rack. (11 s) → Move both arms back to their rest position (17 s)
Scene
Left Wrist
Right Wrist
0:00
Drawer + phonePrompts: Open the drawer in the storage box. → Put the smartphone in the drawer (8 s) → Close the drawer of the storage box. (16 s)
Scene
Left Wrist
Right Wrist
0:00
Close box + stack boxesPrompts: Close the open cardboard box by folding its four flaps down → Pick up the closed cardboard box on the right and put it on top of the other cardboard box (11 s)
Scene
Left Wrist
Right Wrist
0:00
Spatula into suitcasePrompts: Open the lid of the blue suitcase → Pick up the black spatula and put it inside the open suitcase (5 s) → Move both arms back to their rest position (11 s)
Scene
Left Wrist
Right Wrist
0:00
Waste into binPrompts: Pick up the crushed plastic bottle and throw it into the gray trash bin → Pick up the empty chips bag and throw it into the gray trash bin (8 s) → Pick up the apple core and throw it into the gray trash bin (14 s)
Scene
Left Wrist
Right Wrist
0:00
T-shirt foldPrompts: Fold the T-shirt at the center of the table. → Fold the T-shirt at the center of the table. (8 s) → Move both arms back to their rest position (11 s)
Scene
Left Wrist
Right Wrist
0:00
1 / 11

10.3Can the model predict whether a task will succeed?

We want to understand if the model’s prediction of its own future also signals whether the task will succeed. In internal research on an earlier, unreleased version of the model fine-tuned for the Franka arm, we froze its weights and trained a small head on its representation of the next predicted chunk to estimate the chance that the episode succeeds from that point. Its only supervision was whole-episode outcomes, with no hand grading. On 272 real Franka episodes from sessions and policies it never saw, the score separated successes from failures after four chunks (about 6 seconds) with an AUROC of 0.77 (95% CI 0.70–0.83); elapsed time alone gets 0.64. Averaged per policy, it also ranked nine checkpoint and sampler combinations by their real success rate with a Spearman correlation of 0.79, though the interval is wide (0.19–1.00).

This is early evidence. The head doesn’t yet read the instruction, so it gives a clean pick-and-place the same score whether or not it was the right task. Still, the result points to the direction we care about most, which is a model that learns from its own video predictions by using its imagined future to score and then improve its actions. We are actively researching this direction toward a truly self-improving world action model.

0.50.60.70.80.91.0AUROC0.64Elapsed time0.71Task + time0.77Own-prediction score
Figure 17 — Predicting real-robot success from the model’s own predicted futureAUROC after four chunks on 272 held-out real Franka episodes (0.5 is chance). Error bar: 95% interval from resampling session and task groups. Earlier, unreleased version of the model; research result.

11.Quantization

Praxis-1 also holds up with its routed MoE experts rounded to 4-bit NVFP4. We fine-tuned the released checkpoint for 5k more steps with quantization-aware training, rounding the routed expert matrix multiplies to NVFP4 (E2M1 values in blocks of 16, E4M3 block scales and an FP32 global scale). We sampled 600 episodes from RoboLab-120 and ran them head-to-head on the two checkpoints: the NVFP4 model succeeds in 279/600 (46.5%) and the same fine-tuned checkpoint run in bf16, with the rounding switched off, in 287/600 (47.8%). The two are close. We repeated the test on the bimanual YAM, with a 5k-step quantization-aware fine-tune of a bimanual YAM checkpoint on a real station: on a five-object pick-and-place into a bag, the NVFP4 model succeeded in 26 of 30 rollouts (87%) against 28 of 30 (93%) for the bf16 checkpoint it was fine-tuned from, with grab quality 2.73 vs 2.40 (out of 3) and mean time to success 20.7 vs 20.9 seconds. None of these differences is significant at 30 rollouts per arm. We will release the NVFP4 checkpoints in our Hugging Face repository. Packing the routed experts in NVFP4 shrinks the policy weights from 54.4 GB to 17.5 GB.

DROID (single arm), RoboLab-120, 600 episodes

0%10%20%30%40%50%60%success (%)47.8%bf1646.5%NVFP4

Bimanual YAM, real robot, 30 rollouts per arm

0%10%20%30%40%50%60%70%80%90%100%success (%)93.3%bf1686.7%NVFP4
Figure 18 — bf16 vs NVFP4: Praxis-1 finetuned on DROID (RoboLab-120) and on the bimanual YAM (real robot)Left: same RoboLab-120 tasks and episodes. Right: five-object pick-and-place into a bag on a real bimanual YAM station. Bars show success; hover a bar for its 95% interval. Neither difference is significant.

12.Limitations of Praxis-1

  • Look-alike objects. The most common real-robot failure is reaching for an object that resembles the target, and the wrong choice is usually already visible in the imagined video. The arm then carries out the plan it imagined, so the error starts in which future the video model predicts rather than in the action expert. This is consistent with Section 10.1, where most action error comes from the imagined future.
  • Vague instructions. The policy does better when the instruction names the object’s attribute (color, size); vague instructions are noticeably harder. When the instruction alone does not single out the target, the model has to guess among the plausible objects in the scene, and in a scene with look-alike objects it can pick the wrong one.
  • Long tasks. Multi-step tasks work when each step gets its own instruction, but chaining several steps from a single prompt remains hard. The model has to keep track of which steps are already done and move on to the next one without being told. Pairing it with a language or vision-language model that breaks a task into steps is one of the directions in Section 13.

We are releasing three checkpoints on Hugging Face under the Apache 2.0 license: Praxis-1 fine-tuned on DROID, Praxis-1 fine-tuned on the bimanual YAM and the base mid-trained model. They come with the model code in our GitHub repository, a policy server, a MuJoCo simulation of the same setup and code for both full and LoRA fine-tuning. See more details in our launch post.

We’ll continuously invest in world action model (WAM) research, especially focusing on long-term reasoning, agentic planning and self-improvement loops.

We are excited to deploy our policy with partners on real tasks. If you’d like to work with us on this, get in touch.