Recent advances in 3D reconstruction enable the extraction of temporally consistent 3D motion from RGB observations; however, current Vision-Language-Action (VLA) models still predominantly rely on 2D image-text priors. Therefore, they do not accurately represent the fundamental dynamics of the 3D world associated with physical actions. This over-reliance on static 2D visual cues limits the capacity of VLA models in achieving robust robot manipulation.
We introduce FlowVLA, a reconstruction-guided, pluggable 3D flow learning framework aimed at empowering VLA models with an inherent understanding of action-relevant dynamics. Instead of requiring explicit 3D sensor inputs or altering the inference-time architecture, our method utilizes temporally aligned 3D flow only during training, allowing the model to learn the dynamic evolution of the physical scene while preserving the computational efficiency of conventional 2D VLA backbones. To bridge scene-level dynamics with robotic manipulation, we propose a modular 3D flow learning framework defined by a dual-level flow supervision design: point-level flow guides the model to forecast the future displacements of task-critical 3D points, while TCP-level flow aggregates these motions to align with the robot's Tool-Center-Point (TCP) trajectories. This encourages the model to focus on semantically meaningful dynamic regions, effectively coupling scene-level motion with precise control signals.
Extensive evaluations across simulation and real-world experiments demonstrate that FlowVLA consistently improves manipulation performance, zero-shot robustness, and data efficiency. FlowVLA adds only lightweight auxiliary heads during training and discards them at inference; it therefore introduces no additional 3D sensor inputs, architectural modifications, or inference-time computation.
The pipeline of FlowVLA. Given RGB observations ot−L+1:t, a language instruction l and proprioceptive states st−L+1:t, the VLA backbone fθ produces action latents zt:t+k−1 that the action policy pθ decodes into actions at:t+k−1. FlowVLA asks the same latents to also explain how the 3D scene will move, through three components. (1) Reconstruction-guided 3D flow construction. A feed-forward dynamic reconstruction model (VDPM) recovers reference-anchored 3D point trajectories P0(t′, u) for every pixel u of the first frame, from RGB alone. A rigid transform Tbase←0 ∈ SE(3) expresses the points in the robot base frame, and the 3D flow ΔP0(t′, u) = P0(t′+1, u) − P0(t′, u) is computed between adjacent frames. The top-K points by average flow magnitude (K = 2048) form the motion-salient keypoint set 𝒰t, which filters out static background and reconstruction noise without any semantic masks or contact labels. (2) Point-level flow. Each action latent zt+j is broadcast to the K keypoints, fused with their 3D coordinates, and passed through a flow head that predicts every keypoint's future displacement ΔP̂0(j)(t, u); the Smooth-L1 loss ℒpoint grounds the latent in dense scene-level 3D motion. (3) TCP-level flow. A weighting head predicts softmax weights rt(j) ∈ ℝK over the keypoints, and the weighted sum of the predicted point flows Σu rt(j)(u) ΔP̂0(j)(t, u) must match the ground-truth tool-center-point displacement, giving ℒtcp — scene motion distilled into control-relevant motion. The final objective is ℒtotal = ℒaction + λpoint ℒpoint + λtcp ℒtcp. All flow heads and 3D geometric inputs are used only during training and discarded at inference, so the deployed policy is architecturally identical to the original VLA and runs through its original 2D pathway with zero inference-time overhead. The flow heads add only 0.34% trainable parameters and about 1.26× training time.
We attach FlowVLA to two VLAs with substantially different action-generation policies — Seer, a two-layer MLP-based policy that reconstructs future observations and predicts actions, and π0.5, a PaliGemma-based VLM with a flow-matching action policy (LoRA fine-tuned) — and evaluate on the four LIBERO suites (Spatial, Object, Goal, Long) and on LIBERO-Plus, which tests zero-shot robustness under seven perturbation types across 10,030 episodes. For Seer we follow the original LIBERO-Long protocol (top-3 checkpoints, 20 rollouts per task). 3D flow objectives are attached only during training; model architectures and inference pathways are unchanged.
| Method | Spatial (%) | Object (%) | Goal (%) | Long (%) | Avg. (%) |
|---|---|---|---|---|---|
| Diffusion Policy (RSS'23) | 78.3 | 92.5 | 68.3 | 50.5 | 72.4 |
| OpenVLA (CoRL'24) | 84.7 | 88.4 | 79.2 | 53.7 | 76.5 |
| π0 (RSS'25) | 96.8 | 98.8 | 95.8 | 85.2 | 94.2 |
| CoT-VLA (CVPR'25) | 87.5 | 91.6 | 87.6 | 69.0 | 83.9 |
| π0-FAST (RSS'25) | 96.4 | 96.8 | 88.6 | 60.2 | 85.5 |
| SpatialVLA (RSS'25) | 88.2 | 89.9 | 78.6 | 55.5 | 78.1 |
| Octo (RSS'24) | 78.9 | 85.7 | 84.6 | 51.1 | 75.1 |
| UniVLA (RSS'25) | 96.5 | 96.8 | 95.6 | 92.0 | 95.2 |
| Seer (ICLR'25) | 84.2 | 94.8 | 89.8 | 80.4 | 87.3 |
| Seer + FlowVLA (Ours) | 93.5 | 96.5 | 91.8 | 87.8 | 92.4 |
| π0.5 (CoRL'25) | 98.8 | 98.2 | 98.0 | 92.4 | 96.8 |
| π0.5 + FlowVLA (Ours) | 99.0 | 98.8 | 97.4 | 94.8 | 97.5 |
Results on the LIBERO benchmark. FlowVLA yields consistent improvements on both backbones, with the largest gains on LIBERO-Long (Seer: 80.4 → 87.8, +7.4%p; π0.5: 92.4 → 94.8), which requires sustained spatial-temporal reasoning over extended horizons.
| Method | Camera | Robot | Language | Light | Background | Noise | Layout | Avg. (%) |
|---|---|---|---|---|---|---|---|---|
| OpenVLA | 0.8 | 3.5 | 23.0 | 8.1 | 34.8 | 15.2 | 28.5 | 15.6 |
| WorldVLA | 0.1 | 27.9 | 41.6 | 43.7 | 17.1 | 10.9 | 38.0 | 25.0 |
| UniVLA | 1.8 | 46.2 | 69.6 | 69.0 | 81.0 | 21.2 | 31.9 | 42.9 |
| Seer | 22.1 | 47.7 | 86.3 | 12.3 | 2.0 | 22.9 | 50.0 | 36.1 |
| Seer + FlowVLA (Ours) | 24.6 | 54.6 | 87.0 | 25.1 | 8.1 | 25.5 | 57.2 | 41.1 |
| π0.5 | 21.4 | 39.1 | 68.4 | 86.7 | 83.3 | 36.1 | 84.6 | 57.5 |
| π0.5 + FlowVLA (Ours) | 24.1 | 39.9 | 68.8 | 90.4 | 87.1 | 37.7 | 84.7 | 59.2 |
Zero-shot evaluation on LIBERO-Plus. Policies trained on LIBERO are evaluated without fine-tuning under unseen perturbations. Gains are most noticeable for Camera, Robot, Light, Noise and Layout, indicating that reconstruction-derived 3D flow supervision guides the policy toward action-relevant 3D dynamics rather than superficial visual appearance, while the modest Language gain shows that the semantic priors from image-text pre-training are preserved.
LIBERO-Plus evaluates robustness under distribution shifts across seven perturbation categories and five difficulty levels.
| Method | Avg. (%) |
|---|---|
| FlowVLA (Ours) | 87.8 |
| − w/o coordinate alignment | 86.3 |
| − w/o reference-frame alignment | 85.2 |
| − w/o magnitude-based selection | 84.0 |
| − w/o TCP-level loss | 83.8 |
| − w/o point-level loss | 84.8 |
| None (Baseline) | 80.4 |
Component analysis on LIBERO-Long. Every component contributes; removing either flow level or the motion-salient point selection costs 3–4 points.
| Supervision signal | Avg. (%) |
|---|---|
| None (Baseline) | 80.4 |
| 2D optical flow (CoTracker) | 84.5 |
| Static 3D point cloud | 85.0 |
| Dynamic 3D flow (Ours) | 87.8 |
Effect of the supervision signal. Dynamic 3D flow outperforms 2D image-plane flow (motion in physical space) and static 3D geometry (state change rather than shape), under identical head capacity and training protocol.
| Reconstruction model | Avg. (%) |
|---|---|
| None (Baseline) | 80.4 |
| VGGT | 86.8 |
| SpatialTrackerV2 | 88.0 |
| VDPM (default) | 87.8 |
Reconstruction model. FlowVLA is not specific to VDPM; temporally consistent dynamic trackers give the cleanest flow targets.
FlowVLA consistently outperforms the baseline across all data regimes when trained with 10%, 25% and 50% of the demonstrations, suggesting that training-only 3D flow supervision provides a useful inductive bias under limited data. The computational overhead is small: the flow heads increase the total number of parameters by only 0.34% and add no inference-time computation; the only cost is a ~1.26× longer training time plus a one-off offline reconstruction step (about 4 wall-clock hours for LIBERO-Long with Seer, versus about 13 hours of policy training), whose outputs are cached and reused.
Our real-world setup consists of a UR5e arm with a Robotiq 2F-85 gripper and two RealSense D435i cameras (third-person and wrist view; the policy uses RGB only). We evaluate four long-horizon base tasks — Cup & Plush, Fruit, Stack Cups and Cabinet — and three 3D-aware tasks that require fine-grained spatial understanding beyond pick-and-place — Basketball, Hang Cup and Ring Insertion. All policies are trained with only 40 demonstrations per task and evaluated over 15 trials with position perturbations. Eye-to-hand calibration provides the camera-to-base transform used to express the 3D flow targets in the robot base frame.
Cup & Plush
Pick up the white cup and place it on top of the upside-down pink cup, then put the blue penguin plush toy in the white cup.
Fruit
Put the green apple in the pink bowl and put the orange in the green bowl.
Stack Cups
Stack the orange cup on top of the blue cup, then stack the yellow cup on top of the orange cup.
Cabinet
Open the drawer, take the orange cup out and put it on the table, then put the blue cup in the drawer and close the drawer.
Basketball
Pick up the red ball and place it in the basketball hoop.
Hang Cup
Pick up the white mug and hang it on the wooden mug rack.
Ring Insertion
Put the blue ring on the wooden stand, then put the pink ring on the wooden stand.
| Method | Base Tasks | 3D-aware Tasks | |||||
|---|---|---|---|---|---|---|---|
| Cup & Plush | Fruit | Stack Cups | Cabinet | Basketball | Hang Cup | Ring Insertion | |
| Seer | 60.0 | 66.7 | 73.3 | 60.0 | 60.0 | 46.7 | 66.7 |
| Seer + FlowVLA (Ours) | 73.3 | 73.3 | 93.3 | 73.3 | 80.0 | 86.7 | 73.3 |
Real-world results (success rate over 15 trials, %). FlowVLA improves every task; the gains are largest on the 3D-aware tasks — Basketball +20%p and Hang Cup 46.7 → 86.7 — and on Stack Cups FlowVLA fails only once in 15 trials.
We further evaluate zero-shot robustness under test-time variations that were never seen during training. For Basketball, we change the angle and height of the third-person camera (viewpoint variation); for Ring Insertion, we remove the 20 mm ring support so that the initial ring height changes (height variation).
Viewpoint variation
Height variation (20 mm)
| Method | Viewpoint | Height |
|---|---|---|
| Seer | 0.0 | 46.7 |
| Seer + FlowVLA | 46.7 | 73.3 |
Success rate (%) under test-time variations. The baseline fails completely under the viewpoint change.
| Method | Basketball | Hang Cup | Basketball, moving background |
|---|---|---|---|
| π0.5 | 10/15 | 9/15 | 5/15 |
| π0.5 + FlowVLA (Ours) | 13/15 | 14/15 | 8/15 |
FlowVLA also improves the strong π0.5 baseline on the 3D-aware tasks, and remains more robust when a moving background is introduced during deployment of the Basketball task (5/15 → 8/15), demonstrating improved robustness to dynamic scene changes beyond the static training environment.
With only 40 demonstrations per task, the baseline frequently stops execution prematurely, collides, or places objects at incorrect locations under variations of the initial object configuration; these failures become more severe in the 3D-aware tasks and under viewpoint and height variations. FlowVLA shows no premature stopping, grasps more accurately, and completes precise manipulation in most 3D-aware scenarios, except for extreme cases where the target object lies near the camera boundary. Left: Seer; right: Seer + FlowVLA (ours). Clips are keyframe previews from the paper's failure-case figures.
"Stack the orange cup on top of the blue cup, then stack the yellow cup on top of the orange cup."
Seer ❌
Collision → premature stop
Seer + FlowVLA (ours) ✅
Both cups stacked
"Open the drawer, take the orange cup out and put it on the table, then put the blue cup in the drawer and close the drawer."
Seer ❌
Collision → failed grasp
Seer + FlowVLA (ours) ✅
Drawer opened, cups swapped, drawer closed
"Pick up the red ball and place it in the basketball hoop."
Seer ❌
Collision → wrong place
Seer + FlowVLA (ours) ✅
Ball placed in the hoop
"Pick up the red ball and place it in the basketball hoop." — viewpoint variation: different angle and height of the third-person camera
Seer ❌
Collision → wrong place (0/15 under viewpoint variation)
Seer + FlowVLA (ours) ⚠️
Grasps correctly; misplaces the ball when the target lies near the camera boundary (46.7% overall vs. 0%)
"Put the blue ring on the wooden stand, then put the pink ring on the wooden stand."
Seer ❌
Inaccurate grasp → failed insertion
Seer + FlowVLA (ours) ✅
Both rings inserted
"Put the blue ring on the wooden stand, then put the pink ring on the wooden stand." — height variation: 20 mm ring support removed
Seer ❌
Missed grasp height → collisions
Seer + FlowVLA (ours) ✅
Adapts the grasp height (46.7 → 73.3%)
VDPM 3D point trajectories on the real-world Fruit task. Temporally consistent 3D motion is recovered from RGB alone; trajectories highlight object displacement and the interaction region around the end-effector. (All reconstructed points are shown; FlowVLA trains on only the top-K.)
VDPM 3D point trajectories on LIBERO-10 ("Put the black bowl in the bottom drawer of the cabinet and close it").
Magnitude-based point selection. The selected points consistently appear around regions undergoing physical motion — the TCP, a falling object and the basket being interacted with — while static backgrounds and noisy reconstruction regions are filtered out, without semantic masks, object annotations or contact labels.
Predicted TCP trajectories. Aggregating the predicted point flows reproduces the ground-truth end-effector trajectory (red: predicted, black: ground truth), supporting the scene-to-control distillation design.
TCP-level aggregation weights. Among the K magnitude-selected points (blue), the largest aggregation weights (green) concentrate on the TCP and the object–robot interaction region.
3D point composition (LIBERO-Spatial, 100 examples). Motion-based selection increases the proportion of object points (gripper, arm, manipulated objects) and TCP aggregation further suppresses background points: 29.1% object points among all 50k points → 84.8% after both stages.
If you find our work helpful, please cite us:
@inproceedings{go2026flowvla,
title = {FlowVLA: Enabling World Dynamics Understanding through Pluggable 3D Flow Learning},
author = {Go, Junhyeong and Jung, Mingyu and Im, Woobin and Ryu, Jongbin},
booktitle = {Proceedings of the 10th Conference on Robot Learning (CoRL)},
year = {2026}
}