← all evaluation pages
Capability eval · random-depth N 1–8 long run, EMA step 9500 · one real frame → 8.9 s

Changed Prompts and Loop Depth

Start from a real frame of an unseen episode and ask for a different action in the same scene. The rollout mostly does the action the episode really contains, not the one in the prompt. Looping the core blocks more times (N = 1 to 8) does not change this.

This is expected from how the model was trained: each clip is paired with its own caption, and nothing in the objective makes the model act on a verb the scene does not already suggest. The examples below are the clearest cases. Each one plays the real episode, the rollout with the original caption, and the rollout with the changed prompt at N = 1 and N = 8, all from the same first frame and noise seed 0.

The model does the original action

ignores the change

Turn away from the curtains

original
Turn to face the curtains with right.
changed
Turn to the left, away from the curtains.
Real episode
turns right, toward the curtains
Original caption · N = 1
moves toward the curtains
Changed prompt · N = 1
still ends facing the curtains
Changed prompt · N = 8
stays on the curtains, then turns left late

Asked to turn left and away, the robot heads into the curtains the way the real episode does. The judge gives the changed prompt 0 on all three seeds at N = 1, 2 and 4, while the same clips pass the original caption every time. N = 8 is the one depth where this case partly follows: the seed shown turns left in its last few seconds, after the arms have already gone to the curtains.

judge, mean of 3 seedsN = 1248
changed-prompt clips vs changed prompt0.000.000.000.33
changed-prompt clips vs original caption1.001.001.001.00
ignores the change

Put the hand guard aside

original
Move the held hand guard above the vegetable cutter with the right arm.
changed
Move the hand guard to the side of the counter, away from the slicer.
Real episode
guard goes onto the cutter
Original caption · N = 1
guard goes onto the cutter
Changed prompt · N = 1
guard stays by the cutter
Changed prompt · N = 8
guard goes onto the cutter again

Nothing is moved to the side of the counter at any depth. At N = 8 the arm places the guard over the cutter exactly as the original caption asks.

judge, mean of 3 seedsN = 1248
changed-prompt clips vs changed prompt0.000.000.000.33
changed-prompt clips vs original caption0.670.000.330.67
ignores the change

Shake the cup instead of stirring

original
Stir the coffee in the cup with the spoon held in the right hand.
changed
Shake the cup gently to mix the coffee.
Real episode
stirs with the spoon
Original caption · N = 1
stirs with the spoon
Changed prompt · N = 1
stirs with the spoon
Changed prompt · N = 8
stirs with the spoon

All four look the same: the spoon circles in the cup and the cup never shakes. The judge often passes the changed prompt here (0.67–1.0) because the coffee does get mixed, so this one is from watching the videos, not from the score.

judge, mean of 3 seedsN = 1248
changed-prompt clips vs changed prompt0.670.671.000.67
changed-prompt clips vs original caption0.671.000.671.00

When a changed prompt does work

follows the change

Back away from the table

original
Move forward to approach the guest.
changed
Move backward away from the table.
Real episode
drives toward the guest
Original caption · N = 1
drives toward the guest
Changed prompt · N = 1
drifts slightly back
Changed prompt · N = 8
pulls clearly away from the table

This changed prompt is one of only two that appear word for word in the training captions, and here the robot does back away. That fits the reading above: the model follows instructions it has seen paired with motion, and otherwise falls back on what the scene suggests. The judge cannot tell forward from backward in this scene (it passes these clips against both prompts), so the evidence is the video.

Across all 25 cases

Qwen3-VL-32B judges each clip against the prompt it was made with and, as a cross check, against the other prompt. A model that follows its prompt gives changed-prompt clips a clearly higher score against the changed prompt than against the original caption. That gap stays at or below zero at every depth.

loop depthoriginal-caption clips vs originaloriginal-caption clips vs changedchanged-prompt clips vs changedchanged-prompt clips vs originalgap
N = 10.870.670.590.67−0.08
N = 20.950.590.620.64−0.03
N = 40.820.640.640.69−0.05
N = 80.770.460.540.64−0.10

Mean judge score (yes = 1, partial = 0.5, no = 0) over 3 seeds, on the 13 cases where the judge passes the real footage with its own caption. gap = changed-prompt clips vs changed prompt minus vs original caption. Rewording the original caption without changing the action scores about the same as the original (0.85 at N = 1).

Does loop depth improve anything?

Each dimension on its own, over all 900 clips (25 cases × 3 prompts × 3 seeds × N = 1, 2, 4, 8). “real” is the same measure on the real episode. ★ marks a difference from N = 1 (same case, prompt and seed) outside a 95 % bootstrap interval over the 25 cases. Short answer: no dimension improves meaningfully. The two big weaknesses, jumps where the four chained windows meet and blur that grows along the chain, are the same at every depth.

dimension · measurerealN = 1N = 2N = 4N = 8
Prompt · judge, original caption (13 verifiable cases)–0.870.950.820.77
Prompt · changed-prompt clips, own minus original text–−0.08−0.03−0.05−0.10
Dynamics · jerk, flow change per unit motion (lower = smoother)0.590.510.520.520.52
Dynamics · warp error, change motion does not explain1.761.251.211.231.19 ★
Dynamics · jump at window joins (1 = invisible)1.03.94.03.94.0
Dynamics · motion direction vs the real episode (cosine)–0.03−0.010.010.04
Dynamics · VLM object dynamics, 1–55.04.614.654.71 ★4.62
Quality · sharpness vs the real first frame0.960.550.56 ★0.560.56
Quality · sharpness in the last window0.940.410.43 ★0.430.42
Quality · VLM visual quality, 1–55.04.724.754.78 ★4.74
Seconds per clip, one A100–31395484

Output resolution is 512 × 384 at every depth, so “quality” is measured as sharpness (Laplacian variance) relative to the real context frame. Flow from RAFT with camera motion removed. VLM = Qwen3-VL-32B on 16 frames without the instruction; its ratings are saturated (about 73 % of clips get 5), so the N = 4 gains of +0.06 to +0.09 are small. Code: ldvflux/cap_quality.py.

Where depth helps and where it hurts

Per case, every deeper clip is compared with the N = 1 clip of the same prompt and seed (judge score; wins–losses). The grouping was found by looking at the per-case numbers, so the first row is a lead, not a result.

groupN = 1 → 2N = 1 → 4N = 1 → 8
small contact actions on trained tasks (press, rotate, pour; 6 cases)0.44 → 0.56 · 8–2 · p = 0.110.44 → 0.52 · 8–40.44 → 0.50 · 8–5
unseen tasks (5 held-out cases)0.89 → 0.80 · 2–60.89 → 0.80 · 3–70.89 → 0.58 · 1–15 · p < 0.001
other rare actions (14 cases)0.50 → 0.50 · 11–110.50 → 0.47 · 7–110.50 → 0.48 · 7–10

The one robust effect is that N = 8 hurts the unseen tasks. In the supermarket case deeper loops move the arm less (motion 0.29 at N = 1, 0.15–0.17 at N ≥ 2; real 0.21), and at N = 8 the arm stays by the cart instead of reaching into the cabinet. Small contact actions (an oven button, a faucet handle, pouring) score a little higher at N = 2, but the N = 1 and deeper clips look alike in the frames and the judge is weak on button presses, so that needs more seeds before it counts.

deeper is worse

Retrieve the milk from the cold cabinet (unseen task)

prompt
Retrieve the small bottle of milk from the cold storage cabinet.
Real episode
N = 1
reaches into the cabinet · judge yes
N = 4
judge yes
N = 8
arm stays by the cart · judge no

Seed 0. Over all 9 clips of this case the judge score falls from 0.89 at N = 1 to 0.56, 0.56 and 0.22 at N = 2, 4 and 8.

Cases, prompts and judge answers: results/capeval/README.md (judge.json, keys <case>/alt2_N<d>_s<seed> and cross/…). The rollouts use 4 chained 33-frame windows at 15 fps from one real context frame of an episode that was never trained on; Euler 30 steps, CFG 4, shift 5.