The exact question wordings and option sets used to probe vision-language models on short synthetic (Blender/Infinigen) videos. Templates are extracted from the generator's source; examples are verbatim from 4,903 generated scenes (80,099 gate-passed questions of the 22 live types). Each question is one multiple-choice item, asked in its own request (no shared context).
Options are lettered A)…D) one per line, in the listed order. The model sees one of these:
Frames arm (24 frames, 480×270 PNG, sent as images after the text)
You are watching a short video, shown as {n} frames sampled uniformly in time (frame 1 is the start, frame {n} is the end).
Question: {question}
Options:
{options}
Reply with exactly one letter ({letters}). No other text.
Native-video arm
You are watching a short video.
Question: {question}
Options:
{options}
Reply with exactly one letter ({letters}). No other text.
Blind arm (no frames; measures text-only priors)
You will NOT be shown the video this question is about. Answer with your best guess anyway.
Question: {question}
Options:
{options}
Reply with exactly one letter ({letters}). No other text.
Format retry (appended once if the reply has no parseable letter)
Your previous reply was not a single option letter. Reply with ONE letter only.
Templates are shown as the Python f-strings in the generator. Placeholders are filled per scene:
{d}, {da}, {db}, {manifest[name]['descriptor']}: an object's descriptor, e.g. blue cylinder, red-and-purple striped cube. Only uniquely described objects are named. In two-object questions the order of a and b is randomized per question.{plural}, {category}: a shape category (ball, cube, cylinder, cone), pluralized for counts.{when}: at the start of the video, in the middle of the video, or at the end of the video.{side}: left or right, drawn per question.existence · contact · count · stops · direction_reversal · visible_at_end · camera_motion · approach · spins · depth_order · correspondence · occlusion_event · size_comparison · lands · exit_side · speed_comparison · mover_count · separation_change · temporal_order · entry_side · landing_order · occlusion_recovery
Question template (questions.py q_existence)
f'Is there a {category} anywhere in the video?'Options
['yes', 'no']
Option order: yes / no, always in this order.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: Is there a ball anywhere in the video? Options: A) yes B) no Reply with exactly one letter (A, B). No other text.
followed by the 24 frames as images.
Question template (questions.py q_contact)
f'Do the {da} and the {db} touch each other at any point in the video?'Options
['yes', 'no']
Option order: yes / no, always in this order.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: Do the green cube and the red cone touch each other at any point in the video? Options: A) yes B) no Reply with exactly one letter (A, B). No other text.
followed by the 24 frames as images.
Question template (questions.py q_count)
f'How many {plural} appear in the video?'Options
count_options(n, qid)
Option order: numeric: four distinct counts containing the answer, sorted ascending; the answer's rank is drawn ~uniformly per question (count_options).
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: How many cylinders appear in the video? Options: A) 1 B) 2 C) 3 D) 4 Reply with exactly one letter (A, B, C, D). No other text.
followed by the 24 frames as images.
Question template (questions.py q_stops)
f"The {manifest[name]['descriptor']} moves. Does it come to a stop before the video ends?"Options
['yes', 'no']
Option order: yes / no, always in this order.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: The red-and-orange striped cone moves. Does it come to a stop before the video ends? Options: A) yes B) no Reply with exactly one letter (A, B). No other text.
followed by the 24 frames as images.
Question template (questions.py q_direction_reversal)
f"Does the {manifest[name]['descriptor']} change its direction of travel during the video?"Options
['yes', 'no']
Option order: yes / no, always in this order.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: Does the red-and-orange striped cone change its direction of travel during the video? Options: A) yes B) no Reply with exactly one letter (A, B). No other text.
followed by the 24 frames as images.
Question template (questions.py q_visible_at_end)
f"Is the {manifest[name]['descriptor']} still visible in the final moments of the video?"Options
['yes', 'no']
Option order: yes / no, always in this order.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: Is the yellow ball still visible in the final moments of the video? Options: A) yes B) no Reply with exactly one letter (A, B). No other text.
followed by the 24 frames as images.
Question template (questions.py q_camera_motion)
'How does the camera move during the video?'
Options
list(CAMERA_OPTIONS)
Option order: fixed set, always in this order.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: How does the camera move during the video? Options: A) static (not moving) B) orbiting around the scene C) moving straight toward or away from the scene D) turning in place (panning) Reply with exactly one letter (A, B, C, D). No other text.
followed by the 24 frames as images.
Question template (questions.py q_approach)
f"Compared with the start of the video, where is the {manifest[name]['descriptor']} at the end?"Options
list(APPROACH_OPTIONS)
Option order: fixed set, always in this order.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: Compared with the start of the video, where is the orange ball at the end? Options: A) closer to the camera B) farther from the camera C) about the same distance D) it is never visible Reply with exactly one letter (A, B, C, D). No other text.
followed by the 24 frames as images.
Question template (questions.py q_spins)
f"Does the {manifest[name]['descriptor']} rotate (spin or tip over) during the video?"Options
['yes', 'no']
Option order: yes / no, always in this order.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: Does the blue-and-purple striped cone rotate (spin or tip over) during the video? Options: A) yes B) no Reply with exactly one letter (A, B). No other text.
followed by the 24 frames as images.
Question template (questions.py q_depth_order)
f'Which object is closer to the camera {when}: the {da} or the {db}?'Options
_shuffled([f'the {da}', f'the {db}', 'they are about the same distance away', 'neither is visible'], qid)Option order: fixed set, order shuffled deterministically per question id.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: Which object is closer to the camera in the middle of the video: the green cube or the red ball? Options: A) the green cube B) the red ball C) neither is visible D) they are about the same distance away Reply with exactly one letter (A, B, C, D). No other text.
followed by the 24 frames as images.
Question template (questions.py q_correspondence)
f'Look at the object that is furthest to the {side} at the very start of the video. Where is that same object at the end of the video?'Options
list(CORR_OPTIONS)
Option order: fixed set, always in this order.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: Look at the object that is furthest to the right at the very start of the video. Where is that same object at the end of the video? Options: A) in the left third of the frame B) in the middle third of the frame C) in the right third of the frame D) no longer visible Reply with exactly one letter (A, B, C, D). No other text.
followed by the 24 frames as images.
Question template (questions.py q_occlusion_event)
f'Consider the {da} and the {db}. During the video, which one passes in front of the other, hiding part of it?'Options
_shuffled([f'the {da}', f'the {db}', neither, both], qid)Option order: fixed set, order shuffled deterministically per question id.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: Consider the blue cube and the blue-and-green striped cube. During the video, which one passes in front of the other, hiding part of it? Options: A) the blue-and-green striped cube B) both: each passes in front of the other at different times C) neither: they never overlap on screen D) the blue cube Reply with exactly one letter (A, B, C, D). No other text.
followed by the 24 frames as images.
Question template (questions.py q_size_comparison)
f'Which is the bigger object: the {da} or the {db}?'Options
_shuffled([f'the {da}', f'the {db}', same, 'neither is visible'], qid)Option order: fixed set, order shuffled deterministically per question id.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: Which is the bigger object: the blue-and-yellow striped cube or the red cube? Options: A) the red cube B) they are about the same size C) the blue-and-yellow striped cube D) neither is visible Reply with exactly one letter (A, B, C, D). No other text.
followed by the 24 frames as images.
Question template (questions.py q_lands)
f"The {manifest[name]['descriptor']} is falling. Does it land on the ground before the video ends?"Options
['yes', 'no']
Option order: yes / no, always in this order.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: The yellow-and-orange striped cylinder is falling. Does it land on the ground before the video ends? Options: A) yes B) no Reply with exactly one letter (A, B). No other text.
followed by the 24 frames as images.
Question template (questions.py q_frame_edge)
f'The {d} leaves the picture during the video. Through which edge of the frame does it leave?'Options
list(EDGE_OPTIONS)
Option order: fixed set, always in this order.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: The green ball leaves the picture during the video. Through which edge of the frame does it leave? Options: A) the left edge B) the right edge C) the top edge D) the bottom edge Reply with exactly one letter (A, B, C, D). No other text.
followed by the 24 frames as images.
Question template (questions.py q_speed_comparison)
f'Which moves faster over the video: the {da} or the {db}?'Options
_shuffled([f'the {da}', f'the {db}', same, 'neither of them moves'], qid)Option order: fixed set, order shuffled deterministically per question id.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: Which moves faster over the video: the red cube or the blue ball? Options: A) they move at about the same speed B) the red cube C) neither of them moves D) the blue ball Reply with exactly one letter (A, B, C, D). No other text.
followed by the 24 frames as images.
Question template (questions.py q_mover_count)
'How many of the objects change position during the video? (An object that only turns in place without moving does not count.)'
Options
count_options(n, qid)
Option order: numeric: as count (count_options).
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: How many of the objects change position during the video? (An object that only turns in place without moving does not count.) Options: A) 0 B) 1 C) 2 D) 4 Reply with exactly one letter (A, B, C, D). No other text.
followed by the 24 frames as images.
Question template (questions.py q_separation_change)
f'Compared with the start of the video, how are the {da} and the {db} positioned relative to each other at the end?'Options
list(SEP_OPTIONS)
Option order: fixed set, always in this order.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: Compared with the start of the video, how are the blue cube and the red-and-green striped cylinder positioned relative to each other at the end? Options: A) closer together B) farther apart C) about the same distance apart D) they are never both visible Reply with exactly one letter (A, B, C, D). No other text.
followed by the 24 frames as images.
Question template (questions.py q_temporal_order)
f'Which starts moving first: the {da} or the {db}?'Options
_shuffled([f'the {da}', f'the {db}', same, 'neither of them moves'], qid)Option order: fixed set, order shuffled deterministically per question id.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: Which starts moving first: the yellow ball or the blue-and-purple striped ball? Options: A) the yellow ball B) the blue-and-purple striped ball C) neither of them moves D) they start moving at the same time Reply with exactly one letter (A, B, C, D). No other text.
followed by the 24 frames as images.
Question template (questions.py q_frame_edge)
f'The {d} is not visible at the start but appears later. Through which edge of the frame does it enter?'Options
list(EDGE_OPTIONS)
Option order: fixed set, always in this order.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: The red-and-purple striped cylinder is not visible at the start but appears later. Through which edge of the frame does it enter? Options: A) the left edge B) the right edge C) the top edge D) the bottom edge Reply with exactly one letter (A, B, C, D). No other text.
followed by the 24 frames as images.
Question template (questions.py q_landing_order)
f'Both the {da} and the {db} are falling. Which one lands on the ground first?'Options
_shuffled([f'the {da}', f'the {db}', same, neither], qid)Option order: fixed set, order shuffled deterministically per question id.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: Both the green-and-yellow striped cube and the purple cube are falling. Which one lands on the ground first? Options: A) they land at the same time B) neither lands before the video ends C) the green-and-yellow striped cube D) the purple cube Reply with exactly one letter (A, B, C, D). No other text.
followed by the 24 frames as images.
Question template (questions.py q_occlusion_recovery)
f"At some point the {manifest[name]['descriptor']} is completely hidden behind another object. Does it come back into view before the video ends?"Options
['yes', 'no']
Option order: yes / no, always in this order.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: At some point the green cone is completely hidden behind another object. Does it come back into view before the video ends? Options: A) yes B) no Reply with exactly one letter (A, B). No other text.
followed by the 24 frames as images.
Neutral-wording A/B arm (same options and order)
Does the {a} start moving before the {b}, after the {b}, or at the same time?Do the {a} and the {b} land at the same time, does one land first, or does neither land before the video ends?Is the {a} closer to the camera, farther from the camera, or about the same distance at the end as at the start?Do the {a} and the {b} ever overlap on screen, and if so which one is in front?lands rewording probe (same question id and answer letter)
Does the {d} come to rest on the ground at any point during the video?At the end of the video, is the {d} on the ground or still in the air? — options relabelled yes → on the ground, no → still in the airDoes the {d} reach the ground before the video ends?Retired: camera parallax certifies the wrong direction on screen (riA_10076: the certified 'right' is entirely camera motion; riA_10131: opposite to the object)
Question template (questions.py q_motion_direction)
f"In which direction on screen does the {manifest[name]['descriptor']} mainly move over the video?"Options
['left', 'right', 'up', 'down']
Option order: fixed set, always in this order.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: In which direction on screen does the yellow cylinder mainly move over the video? Options: A) left B) right C) up D) down Reply with exactly one letter (A, B, C, D). No other text.
followed by the 24 frames as images.
Retired: ambiguous for a human: diagonal layouts, and 'on screen' vs 'in the world' left/right/above/below read differently
Question template (questions.py q_relative_position)
f'Where is the {da} relative to the {db} on screen {when}?'Options
list(RELPOS_OPTIONS)
Option order: fixed set, always in this order.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: Where is the blue cylinder relative to the yellow cylinder on screen at the end of the video? Options: A) to the left of it B) to the right of it C) above it D) below it Reply with exactly one letter (A, B, C, D). No other text.
followed by the 24 frames as images.
Retired: unintuitive for a human to answer (which way the background slides)
Question template (questions.py q_scene_slide)
'The camera moves during the video. As it does, does the scene as a whole slide to the left or to the right across the screen?'
Options
['to the left', 'to the right']
Option order: fixed set, always in this order.
Real examples (verbatim; certified answer highlighted)
You are watching a short video, shown as 24 frames sampled uniformly in time (frame 1 is the start, frame 24 is the end). Question: The camera moves during the video. As it does, does the scene as a whole slide to the left or to the right across the screen? Options: A) to the left B) to the right Reply with exactly one letter (A, B). No other text.
followed by the 24 frames as images.