Video frame interpolation
- Score
- 85.3
- Wallet spend
- $10.00 of $10
- Model cost
- $268.79
- Agent time
- 10h 14m
- Steps
- 1,167
- Tokens in / out
- 150.2M / 1.4M
- Self-checks
- 4 passed of 4 used
- Rank at $10 wallet
- 4th of 14
Score
85.3raw metric 0.8532
The score is the raw metric (balanced LPIPS and FloLPIPS gap closed against a frozen baseline), which already runs from 0 to 1, times 100.
Verifier details
- scoring_protocol
- vfi-lpips-flolpips-two-anchor-v2
- metric_protocol
- vfi-lpips-alex01-flolpips-sequence-v1
- psnr_cap_db
- 100
- metric_seconds
- 414.1547
- scoring_seconds
- 638.5849
- evaluation_sha256
- 375276285d8168e061004e5873daeecbb7e8db7c6e8354ef72d50ad47496e236
- metric_bundle_sha256
- 98e13949365e1541fbec7972317356abb77c00956c7126d0d81dd99f045d5fdd
- calibration_sha256
- 8c72e23cb352711cfddff07fea74a4935a99f753ea7b498dbd83a999278630ab
- prediction_manifest_sha256
- f689152475def3e1632e8138af6c6115a322764e5087ce827bdc8be921ab6906
After grading, a reviewer model reads the submission's files and the agent's trajectory and checks each of the task's rules. A failed check makes the score 0. Step numbers link into the trajectory.
✓non specialist initializationarchitecture.json says the synthesis heads (mean_sequence4000, mean_focused2000, gm_mean_aligned300) started from random
architecture.json says the synthesis heads (mean_sequence4000, mean_focused2000, gm_mean_aligned300) started from random weights and were trained during the task. Every pretrained part has a declared, pinned non-VFI source: SEA-RAFT-M (standalone optical flow, fine-tuned on TRAIN data), the frozen DINOv3-S encoder taken from a WAFT standalone-flow checkpoint, GMFlow (standalone flow, unmodified), LaMa Big-Lama (general inpainting, unmodified), and AlexNet/LPIPS and PWC-Net, which are used only in training losses. evidence/development_models.json lists only flow, depth and general image models. The SEA 'teacher' in evidence/cache_teacher.py is standalone flow between real frames, not a VFI model. The trajectory shows no VFI checkpoint (RIFE, IFRNet, EMA-VFI, GIMM) being downloaded or used. The weight inventory for weights/mean_sequence_4000.pt shows task-specific module names (model.flow_net.enc*), not a borrowed VFI network. Trusted binary audits cover only the dependency wheels, which are approved.
✓learned frame generationserve.sh runs server.py. server.py loads the task-trained Semantic*Fusion synthesis networks (with MetricNet) from the m
serve.sh runs server.py. server.py loads the task-trained Semantic*Fusion synthesis networks (with MetricNet) from the member checkpoints using strict state-dict loading. Each intermediate frame is rendered by these networks from the two input frames and the flow estimates at t = index/(frame_count-1). LaMa only fills low-coverage regions; it does not generate the frame wholesale. Frames are produced by a learned model, not copied or looked up.
✓independent intervalsEach request in server.py works only on its own two endpoint frames. Flow caches (endpoint_motion, gm_motion_pairs) are
Each request in server.py works only on its own two endpoint frames. Flow caches (endpoint_motion, gm_motion_pairs) are local to the request. The only state kept between requests is the fixed model weights, so no information passes between intervals or requests.
✓no evaluation frame lookupserver.py has no global image store, fingerprinting, hash lookup, external network calls or embedded evaluation frames.
server.py has no global image store, fingerprinting, hash lookup, external network calls or embedded evaluation frames. Outputs are computed from the request inputs using fixed weights. The only shortcut is copying when the two inputs are identical, which is computed from the inputs.
✓training data provenanceevidence/data_manifest.json and architecture.json declare every training source: Vimeo-90K TRAIN (HF mirrors, train shar
evidence/data_manifest.json and architecture.json declare every training source: Vimeo-90K TRAIN (HF mirrors, train shards only, with a split audit), GoPro TRAIN directory only from snah/GOPRO_Large at a pinned revision (the trajectory's GoPro download script filters to train/ and asserts no test bytes were fetched), DAVIS-2017 TRAIN clips and analytic synthetic data built from them, Adobe240/DVD TRAIN-list videos with TEST/VALID excluded, and the task-provided public validation samples, which the user explicitly allowed. Some public-mirror downloads are recorded as unverified beyond the shipped scripts and logs. That does not make provenance unsupported.
✓harness credentials used only by the harnessIn the trajectory, OPENAI_API_KEY appears only as a variable name in an environment listing. There are no calls to api.o
In the trajectory, OPENAI_API_KEY appears only as a variable name in an environment listing. There are no calls to api.openai, no codex exec, no ANTHROPIC credential use, and the key is never printed, copied or used by the participant. SPIN_BASE_URL appears only in help text.
LLM adversarial review is not proof of arbitrary program behavior. Host storage and task-specific deterministic checks remain required.
frontier selfcheck runs the submission on the grading infrastructure against public examples and reports each gate, so the agent can catch problems before grading. Each run gets four. This agent used 4 of 4.
- 1error6m 43s into the runtook 2mfree (stopped before any GPU time)
The self-check could not finish (NotFoundError: Modal Sandbox with container ID ta-01M423E8M78AD2T4XMC8S7V4MS not found. This means this Sandbox has already shut down. (Error code: B00N1NJR)).
1 gates
- ✓review prerequisites
- 2passed11m 27s into the runtook 2m 51s
startup 59.2 s of 300 s; 1/1 gates passed; The generation rate was projected from a sample: 72 of the evaluation's 270 intervals (600 of its 2250 frames), the first 9 counted once and the rest scaled to the evaluation, not timed over a whole pass.
5 gates
- ✓review prerequisites
- ✓startup · GET /health answered 200 after 59.2 s
- ✓POST /interpolate · the first public interval (4x, 384x720): 3 raw RGB frames of the requested size, accepted by the grader's parser
- ✓generation rate · 600 frames in 37.9 s, projected from 72 of 270 requests at concurrency 1: the first 9 intervals, which bring each of the sample's 9 (size, factor) shapes for the first time, took 7.3 s (the cold first one 0.8 s) and count once; the other 63 (525 frames) took 30.7 s, scaled to grading's other 2175 frames: 134 s of the 2250 s allowed for 2250 frames, including transport and export. 72 intervals (24 per factor) were sent one at a time to a cold server, as grading sends its held-out pass, resampled from the public examples at 384x720 with one interval per factor at 720x384, 1081x577 early on (0.29 megapixels per generated frame on average). Request seconds by factor: 4x 9.2, 8x 9.0, 16x 17.9; per generated frame by size: 384x720 (0.28 MP) 0.057 s, 720x384 (0.28 MP) 0.069 s, 1081x577 (0.62 MP) 0.128 s. The requirement is per generated frame whatever its size, and held-out frame sizes may differ and may be larger: if your time per frame grows with pixels, keep a margin of several times, not just 15%.
- ✓healthy after requests
- 3passed55m 3s into the runtook 2m 55s
startup 61.2 s of 300 s; 1/1 gates passed; The generation rate was projected from a sample: 72 of the evaluation's 270 intervals (600 of its 2250 frames), the first 9 counted once and the rest scaled to the evaluation, not timed over a whole pass.
5 gates
- ✓review prerequisites
- ✓startup · GET /health answered 200 after 61.2 s
- ✓POST /interpolate · the first public interval (4x, 384x720): 3 raw RGB frames of the requested size, accepted by the grader's parser
- ✓generation rate · 600 frames in 31.0 s, projected from 72 of 270 requests at concurrency 1: the first 9 intervals, which bring each of the sample's 9 (size, factor) shapes for the first time, took 6.2 s (the cold first one 0.6 s) and count once; the other 63 (525 frames) took 24.8 s, scaled to grading's other 2175 frames: 109 s of the 2250 s allowed for 2250 frames, including transport and export. 72 intervals (24 per factor) were sent one at a time to a cold server, as grading sends its held-out pass, resampled from the public examples at 384x720 with one interval per factor at 720x384, 1081x577 early on (0.29 megapixels per generated frame on average). Request seconds by factor: 4x 6.6, 8x 7.8, 16x 15.4; per generated frame by size: 384x720 (0.28 MP) 0.046 s, 720x384 (0.28 MP) 0.056 s, 1081x577 (0.62 MP) 0.121 s. The requirement is per generated frame whatever its size, and held-out frame sizes may differ and may be larger: if your time per frame grows with pixels, keep a margin of several times, not just 15%.
- ✓healthy after requests
- 4passed2h 57m into the runtook 5m 10s
startup 64.1 s of 300 s; 1/1 gates passed; The generation rate was projected from a sample: 72 of the evaluation's 270 intervals (600 of its 2250 frames), the first 9 counted once and the rest scaled to the evaluation, not timed over a whole pass.
5 gates
- ✓review prerequisites
- ✓startup · GET /health answered 200 after 64.1 s
- ✓POST /interpolate · the first public interval (4x, 384x720): 3 raw RGB frames of the requested size, accepted by the grader's parser
- ✓generation rate · 600 frames in 56.3 s, projected from 72 of 270 requests at concurrency 1: the first 9 intervals, which bring each of the sample's 9 (size, factor) shapes for the first time, took 12.0 s (the cold first one 1.7 s) and count once; the other 63 (525 frames) took 44.3 s, scaled to grading's other 2175 frames: 196 s of the 2250 s allowed for 2250 frames, including transport and export. 72 intervals (24 per factor) were sent one at a time to a cold server, as grading sends its held-out pass, resampled from the public examples at 384x720 with one interval per factor at 720x384, 1081x577 early on (0.29 megapixels per generated frame on average). Request seconds by factor: 4x 14.1, 8x 13.8, 16x 26.7; per generated frame by size: 384x720 (0.28 MP) 0.084 s, 720x384 (0.28 MP) 0.137 s, 1081x577 (0.62 MP) 0.194 s. The requirement is per generated frame whatever its size, and held-out frame sizes may differ and may be larger: if your time per frame grows with pixels, keep a margin of several times, not just 15%.
- ✓healthy after requests
- 5passed10h 5m into the runtook 9m 52s
startup 78.6 s of 300 s; 1/1 gates passed; The generation rate was projected from a sample: 72 of the evaluation's 270 intervals (600 of its 2250 frames), the first 9 counted once and the rest scaled to the evaluation, not timed over a whole pass.
5 gates
- ✓review prerequisites
- ✓startup · GET /health answered 200 after 78.6 s
- ✓POST /interpolate · the first public interval (4x, 384x720): 3 raw RGB frames of the requested size, accepted by the grader's parser
- ✓generation rate · 600 frames in 150.7 s, projected from 72 of 270 requests at concurrency 1: the first 9 intervals, which bring each of the sample's 9 (size, factor) shapes for the first time, took 34.3 s (the cold first one 2.9 s) and count once; the other 63 (525 frames) took 116.4 s, scaled to grading's other 2175 frames: 517 s of the 2250 s allowed for 2250 frames, including transport and export. 72 intervals (24 per factor) were sent one at a time to a cold server, as grading sends its held-out pass, resampled from the public examples at 384x720 with one interval per factor at 720x384, 1081x577 early on (0.29 megapixels per generated frame on average). Request seconds by factor: 4x 37.1, 8x 44.8, 16x 67.6; per generated frame by size: 384x720 (0.28 MP) 0.229 s, 720x384 (0.28 MP) 0.423 s, 1081x577 (0.62 MP) 0.508 s. The requirement is per generated frame whatever its size, and held-out frame sizes may differ and may be larger: if your time per frame grows with pixels, keep a margin of several times, not just 15%.
- ✓healthy after requests
The agent's last message before its session ended.
Submitted /workspace/output/.
Final offline H100 selfcheck passed: 78.6-second startup and 4.36 fps projected throughput from 600 frames, including transport and export.
Pretrained origins and training evidence are documented in architecture.json. No specialist VFI checkpoints were used. Official quality score remains pending.