Robota-Embed: Unified VLA Embeddings for Robot In-Context Learning and Evolution
Organizations: NVIDIA · UCB · MIT · Oxford ·
Abstract
Retrieving useful context for a robot requires matching its task, execution stage, and the continuation that should follow. We introduce Robota-Embed, to our knowledge the first vision-language-action (VLA) embedding model to jointly encode all three modalities in both current-state queries and recorded future continuations. Predictive retrieval training aligns these endpoints, enabling historical continuations to serve as context at inference time. We construct a multi-source corpus of 1,695,684 cleaned training anchors and introduce Robota-Embed-Bench, with 4,000 queries and a shared 8,000-entry gallery. Robota-Embed achieves 47.33% clip-level and 81.77% episode-level R@1, exceeding action-free Gemini Embedding 2 by 22.09 and 33.47 percentage points. Controlled retrieval studies show that removing native action degrades retrieval more than removing vision. We study two complementary applications. Embed2ICL uses retrieved experience for training-free and training-based policy conditioning, increasing success from 47.0% to 56.3% in DROID-Sim and from 86.4% to 92.8% on the LIBERO difficult subset, while improving task progress on real robots. Embed2Evolve uses execution feedback to grow task-local memory and refine context use around a frozen GPT-6 Astra policy. Across five ManiSkill tasks, it achieves 68% success, compared with 24% for GPT-6 Astra Direct and 33% for a harness independently evolved with Omni-Embed-Nemotron-3B under the same protocol. Relative to the latter, it uses approximately 79.5% fewer policy tokens per test rollout, counting both successes and failures. These results show that a unified, action-aware retrieval space can support robot in-context learning and task-local context evolution.
Figures & tables
| Clip-level | Episode-level | |||||||
| Model | R@1 | R@5 | R@10 | MRR | R@1 | R@5 | R@10 | MRR |
| CLIP-style text–video embeddings | ||||||||
| CLIP ViT-L/14 | 1.2 | 5.8 | 9.8 | 4.06 | 3.2 | 7.7 | 11.6 | 5.98 |
| Perception Encoder B16 | 2.0 | 8.1 | 12.8 | 5.52 | 5.0 | 10.1 | 15.2 | 8.01 |
| InternVideo2 | 1.6 | 7.3 | 11.4 | 4.82 | 4.1 | 9.1 | 13.2 | 6.94 |
| Unified VL embeddings | ||||||||
| Reference condition | Cube Bowl | Can Mug | Banana Bin | Average | ||||
| No warm-up | 61 | 13 | 67 | 47.0 | ||||
| Random reference | 50 | ( ) | 7 | ( ) | 51 | ( ) | 36.0 | ( ) |
| Omni-Embed-Nemotron-3B | ||||||||
| Top-1 | 57 | ( ) | 5 | ( ) | 68 | ( ) | 43.3 | ( ) |
| + reranking | 62 | ( ) | 19 | ( ) | 72 | ( ) | 51.0 | ( ) |
| Robota-Embed Top-1 | 63 | ( ) | 16 | ( ) | 72 | ( ) | 50.3 | ( ) |
| Suite / ID | Abbreviated task | Official release | Embed2ICL | |
|---|---|---|---|---|
| Spatial / S4 | Black bowl plate | 46 | 49 | ( ) |
| Goal / G3 | Bowl top drawer | 42 | 50 | ( ) |
| Goal / G9 | Wine bottle rack | 45 | 47 | ( ) |
| LIBERO-10 / L4 | Two mugs plates | 43 | 44 | ( ) |
| LIBERO-10 / L6 | Mug–pudding arrangement | 40 | 42 | ( ) |
| Five-task average (%) | 86.4 | 92.8 | ( ) | |
| Task | No ICL | Embed2ICL | |
|---|---|---|---|
| Training-free: DreamZero | |||
| Banana Bowl | 21.67 | 40.00 | ( ) |
| Training-based: Fast-WAM | |||
| Pick Fruit | 75.00 | 79.17 | ( ) |
| Split Cup | 66.67 | 87.50 | ( ) |
| Task | GPT-6 Astra Direct | GPT-6 Astra + random history | Evolve + Omni-Embed- Nemotron-3B | Embed2Evolve |
|---|---|---|---|---|
| Poke Cube | 45 | 15 | 45 | 80 |
| Stack Cube | 10 | 20 | 20 | 60 |
| Lift Peg Upright | 30 | 40 | 55 | 65 |
| Pull Cube with Tool | 10 | 10 | 20 | 50 |
| Two-Robot Stack Cube | 25 | 15 | 25 | 85 |
| Average (%) | 24.0 | 20.0 | 33.0 | 68.0 |
Appendix figures & tables34 assets
Supplementary material from the paper’s appendix.
Appendix
| Source | Domain ID | Action dimensions | Rate (Hz) |
|---|---|---|---|
| EgoDex | 3 | 57 | 30 |
| DROID | 8 | 10 | 15 |
| LIBERO | 5 | 10 | 10 |
| RoboMIND–Franka-dual | 12 | 20 | 10 |
| Objective | Constraint or positive relation | Weight | Margin |
|---|---|---|---|
| Predictive retrieval alignment | |||
| Clip-level retrieval | Exact future-clip identity; bidirectional InfoNCE | 1.00 | – |
| Multimodal grounding and discrimination | |||
| Text auxiliary | Text-only query; matched task | 0.15 | – |
| Image auxiliary | Image-only query; matched interaction object | 0.20 | – |
| Action auxiliary | Disabled; future identity uses multimodal context | 0.00 | – |
| Source domain | Training rows |
|---|---|
| EgoDex [ 31 ] | 1,345,160 |
| DROID [ 32 ] | 26,563 |
| LIBERO [ 33 ] | 136,671 |
| RoboMIND–Franka-dual [ 34 ] | 187,290 |
| Total | 1,695,684 |
| Domain | R@1 | R@5 | R@10 | MRR | Median rank | Mean rank |
| Clip-level retrieval | ||||||
| EgoDex | 36.70 | 96.60 | 99.30 | 62.22 | 2 | 2.68 |
| DROID | 74.10 | 99.00 | 100.00 | 85.27 | 1 | 1.41 |
| LIBERO | 38.50 | 87.00 | 96.60 | 60.33 | 2 | 2.92 |
| RoboMIND-FD | 40.00 | 85.00 | 91.90 | 60.39 | 2 | 3.87 |
| Average | 47.33 | 91.90 | 96.95 | 67.05 | – | 2.72 |
| Clip-level | Episode-level | |||||||
| Domain | R@1 | R@5 | R@10 | MRR | R@1 | R@5 | R@10 | MRR |
| VLM2Vec-V2 | ||||||||
| EgoDex | 32.40 | 92.00 | 99.20 | 56.90 | 78.13 | 97.81 | 99.88 | 86.04 |
| DROID | 58.70 | 97.80 | 99.90 | 75.15 | 99.19 | 100.00 | 100.00 | 99.51 |
| LIBERO | 4.70 | 16.20 | 28.10 | 12.68 | 10.75 | 30.44 | 46.25 | 22.01 |
| RoboMIND-FD | 0.40 | 1.40 | 3.00 | 1.96 | 1.19 | 3.94 | 6.94 | 3.95 |
| Clip-level | Episode-level | |||||||
|---|---|---|---|---|---|---|---|---|
| Setting | R@1 | R@5 | R@10 | MRR | R@1 | R@5 | R@10 | MRR |
| Original | 47.33 | 91.90 | 96.95 | 67.05 | 81.77 | 94.91 | 98.06 | 86.96 |
| Candidate text masked | 12.78 | 33.65 | 43.10 | 23.06 | 23.17 | 36.83 | 46.69 | 30.32 |
| Same-instruction gallery | 47.62 | 92.45 | 97.25 | 67.46 | 82.53 | 95.23 | 98.20 | 87.55 |
| Candidates | R@1 | R@5 | ||||
|---|---|---|---|---|---|---|
| Domain | Mean | Median | Model | Random | Model | Random |
| EgoDex | 4.06 | 4 | 37.60 | 29.76 | 98.40 | 95.09 |
| DROID | 2.71 | 2 | 74.20 | 54.64 | 99.20 | 97.46 |
| LIBERO | 54.51 | 50 | 38.60 | 1.90 | 87.00 | 9.50 |
| RoboMIND-FD | 473.59 | 342 | 40.10 | 0.24 | 85.20 | 1.19 |
| All domains | 133.72 | 25 | 47.62 | 21.63 | 92.45 | 50.81 |
| Clip-level | Episode-level | |||||||
| Domain | R@1 | R@5 | R@10 | MRR | R@1 | R@5 | R@10 | MRR |
| Candidate text masked | ||||||||
| EgoDex | 4.00 | 14.30 | 21.40 | 9.73 | 9.00 | 16.81 | 24.75 | 13.62 |
| DROID | 4.40 | 13.30 | 21.20 | 9.69 | 6.50 | 16.81 | 25.25 | 12.57 |
| LIBERO | 13.40 | 36.40 | 49.30 | 25.03 | 23.19 | 39.56 | 53.87 | 32.09 |
| RoboMIND-FD | 29.30 | 70.60 | 80.50 | 47.77 | 54.00 | 74.12 | 82.88 | 63.01 |
| Setting | Clip R@1 | Episode R@1 |
|---|---|---|
| Cosmos3-Edge 4B (frozen readout) | 0.65 | 1.17 |
| Robota-Embed | 47.33 | 81.77 |
| Trainable scope | R@1 | MRR |
|---|---|---|
| Head only | 13.8 | 24.00 |
| Backbone + head | 78.7 | 88.00 |
| Objective (Eq. 2 ) | R@1 | MRR |
|---|---|---|
| 75.6 | 86.20 | |
| 77.0 | 87.10 | |
| 78.7 | 88.00 |
| Visual input | R@1 | MRR |
|---|---|---|
| w/o vision (retrained) | 76.8 | 86.69 |
| Full frame | 77.9 | 87.40 |
| SAM3 object zoom | 78.7 | 88.00 |
| Setting | Input | Clip R@1 | clip R@1 |
|---|---|---|---|
| Full VLA | VLA | 78.7 | — |
| No action | VL | 59.8 | |
| No vision | LA | 76.8 | |
| No language | VA | 20.2 |
| Query input | Clip R@1 | Episode R@1 | clip R@1 |
|---|---|---|---|
| Full VLA | 47.33 | 81.77 | — |
| VL (no action) | 20.08 | 37.36 | |
| LA (no vision) | 23.00 | 39.50 | |
| VA (no language) | 7.13 | 14.73 | |
| L (text only) | 16.23 | 31.09 | |
| V (image only) | 1.68 | 3.66 |
| Query setting | Input | R@1 | R@5 | R@10 | MRR | R@1 |
|---|---|---|---|---|---|---|
| Full query | VLA | 78.7 | 99.4 | 100.0 | 88.00 | |
| Action masked | VL | 50.7 | 90.3 | 94.9 | 67.60 | |
| Image masked | LA | 60.9 | 91.8 | 96.1 | 74.17 | |
| Text masked | VA | 1.9 | 7.2 | 12.0 | 5.41 |
| Gallery | Top-10 search (ms) | Encode + retrieve latency (ms) | Single-stream QPS | Est. GPU memory (GB) |
|---|---|---|---|---|
| 1M | 2.66 | 160.36 | 6.24 | 11.29 |
| 2M | 5.14 | 162.84 | 6.14 | 15.39 |
| 5M | 12.60 | 170.30 | 5.87 | 27.69 |
| 10M | 25.04 | 182.74 | 5.47 | 48.19 |
| 15M | 37.47 | 195.17 | 5.12 | 68.69 |
| Suite / ID | Official release | Side branch | Embed2ICL |
|---|---|---|---|
| Spatial / S4 | 46 | 46 ( ) | 49 ( ) |
| Goal / G3 | 42 | 44 ( ) | 50 ( ) |
| Goal / G9 | 45 | 44 ( ) | 47 ( ) |
| LIBERO-10 / L4 | 43 | 43 ( ) | 44 ( ) |
| LIBERO-10 / L6 | 40 | 43 ( ) | 42 ( ) |
| Five-task average (%) | 86.4 | 88.0 ( ) | 92.8 ( ) |
| Task | No ICL | Side branch | Embed2ICL |
|---|---|---|---|
| Pick Fruit | 75.00 | 77.08 ( ) | 79.17 ( ) |
| Split Cup | 66.67 | 75.00 ( ) | 87.50 ( ) |
| Integration | Random tokens | Retrieved tokens |
|---|---|---|
| Side branch | 85.6 | 88.0 |
| Embed2ICL | 88.0 | 92.8 |
| Component | Configuration |
|---|---|
| Policy | GPT-6 Astra, reasoning effort low |
| Simulator | ManiSkill 3.0.1; SAPIEN 3.0.3 |
| Current RGB | One image per camera per decision |
| Cameras | Four for single-arm tasks; five for TwoRobotStackCube |
| Control rate | 20 Hz; two ticks per primitive (0.1 s simulation time) |
| Decision budget | At most eight primitives per GPT decision |
| Preset | Cadence | History | |||
|---|---|---|---|---|---|
| A | 2 | 2 | 12 | 0.10 | 0.03 |
| B | 1 | 4 | 6 | 0.10 | 0.10 |
| C | 2 | 1 | 8 | 0.15 | 0.05 |
| Task | Round | Episodes | Anchors | Cadence | |||
|---|---|---|---|---|---|---|---|
| Poke Cube | 8 | 80 | 1,610 | 2 | 2 | 6 | .15/.05 |
| Stack Cube | 2 | 20 | 454 | 2 | 2 | 12 | .10/.03 |
| Lift Peg Upright | 6 | 60 | 1,116 | 2 | 1 | 6 | .20/.05 |
| Pull Cube with Tool | 8 | 80 | 1,667 | 2 | 3 | 4 | .15/.05 |
| Two-Robot Stack Cube | 5 | 50 | 1,126 | 2 | 3 | 6 | .10/.03 |
| Omni-Embed- Nemotron-3B | Robota-Embed | |||
|---|---|---|---|---|
| Task | Completed | Selected | Completed | Selected |
| Poke Cube | 8 | 6 | 8 | 8 |
| Stack Cube | 6 | 3 | 4 | 2 |
| Lift Peg Upright | 8 | 4 | 8 | 6 |
| Pull Cube with Tool | 3 | 1 | 8 | 8 |
| Two-Robot Stack Cube | 7 | 5 | 8 | 5 |
| Metric | Test population | Five-task aggregation |
|---|---|---|
| Task success | All 20 trials per task in all four conditions | Mean of task success rates. |
| Policy decisions and execution time | Matched initializations successful under Direct and Embed2Evolve | Mean of task-wise relative reductions; speedup averages Direct/Embed2Evolve time ratios. |
| Policy tokens | All 20 trials per task for Direct, evolution with Omni-Embed-Nemotron-3B, and Embed2Evolve, including failures | Relative reduction between equal-task per-rollout means. |
| Reference API cost | All 20 trials per task for Direct and Embed2Evolve, including failures | Relative reduction between equal-task per-rollout means at fixed input/output rates. |
| Task | Paired | Policy decisions | Execution time (s) | Control ticks | Tick change (%) |
|---|---|---|---|---|---|
| Poke Cube | 7 | 34.86 22.71 | 419.30 382.16 | 133.0 181.4 | |
| Stack Cube | 2 | 45.00 10.00 | 499.03 186.35 | 90.0 65.0 | |
| Lift Peg Upright | 5 | 57.20 12.40 | 556.06 234.46 | 152.0 149.6 | |
| Pull Cube with Tool | 1 | 80.00 26.00 | 962.27 489.55 | 347.0 337.0 | |
| Two-Robot Stack Cube | 4 | 87.25 33.00 | 1054.67 751.59 | 206.0 312.8 |
| Method | Input tokens | Output tokens | Total tokens | Ref. cost (USD) |
|---|---|---|---|---|
| Poke Cube | ||||
| Direct | 693,733.05 | 16,052.50 | 709,785.55 | 7.7400 |
| Embed2Evolve | 375,759.60 | 12,903.40 | 388,663.00 | 4.4028 |
| Stack Cube | ||||
| Direct | 935,086.30 | 18,401.05 | 953,487.35 | 10.2709 |
| Embed2Evolve | 656,130.60 | 19,000.10 | 675,130.70 | 7.5113 |
| Method | Modalities | Query candidate | Action role | Cross-source | Policy coupling | Lifetime |
| Deep Multimodal | 3D/L/A | 3D+L trajectory | Candidate key | No | Independent | Offline corpus |
| CLASP | L/S/A | L state+action | Candidate key | No | Independent | Offline corpus |
| VLA-R | V/L/A | scene V/L action token | Candidate key | No | Direct control | Action vocab. |
| ROSER | P | prototype window | None | No | Independent | Offline corpus |
| RAEA | V/L | V/L V/L record | Returned only | Yes | Coupled | Persistent bank |
| REGENT | S | state demo state | Returned+blend | No | Coupled | Task buffer |
Vision-Language-Action Models
Vision-language-action models turn visual observations and natural-language instructions into actions for robots and other embodied agents.
See all 1,190 papers