Video frame interpolation
- Score
- 31.2
- Wallet spend
- $66.11 of $200
- Model cost
- $11.28
- Agent time
- 5h 59m
- Steps
- 227
- Tokens in / out
- 46.5M / 230k
- Self-checks
- 2 passed of 2 used
- Rank at $200 wallet
- 10th of 14
Score
31.2raw metric 0.3125
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
- 389.5833
- scoring_seconds
- 611.8786
- evaluation_sha256
- 375276285d8168e061004e5873daeecbb7e8db7c6e8354ef72d50ad47496e236
- metric_bundle_sha256
- 98e13949365e1541fbec7972317356abb77c00956c7126d0d81dd99f045d5fdd
- calibration_sha256
- 8c72e23cb352711cfddff07fea74a4935a99f753ea7b498dbd83a999278630ab
- prediction_manifest_sha256
- bd3ee0f47537e8717c186c2b473373e6921305f925d0b17e4cfd840674f82f88
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 initializationThe only pretrained component is RAFT raft-sintel, a general optical-flow model. It stays frozen and was trained upstrea
The only pretrained component is RAFT raft-sintel, a general optical-flow model. It stays frozen and was trained upstream on FlyingChairs, FlyingThings3D, Sintel, KITTI and HD1K. It was fetched from RAFT's official models.zip, which the trajectory shows. Its weight inventory has the standard RAFT 'module.*' keys and is loaded by pkg/vfi_flow.py. The interpolation-specific RefineNet starts from random init, with a zero-initialized head, and was trained from scratch in train_refine.py. Its weight inventory has RefineNet keys only, and the first conv has 19 input channels, matching the code. No pretrained interpolation model was found anywhere in the trajectory or the shipped files.
✓learned frame generationserve.sh runs server.py, which builds the Interpolator from RAFT and refine.pt. RAFT estimates the flows, which are reve
serve.sh runs server.py, which builds the Interpolator from RAFT and refine.pt. RAFT estimates the flows, which are reversed, warped and fused, and the learned RefineNet adds a residual for each requested time. A linear blend is used only in the exception fallback path. Frames are therefore produced by learned models loaded from the shipped weights.
✓independent intervalsserver.py handles each POST /interpolate using only that request's two decoded endpoint PNGs and the computed times. Int
server.py handles each POST /interpolate using only that request's two decoded endpoint PNGs and the computed times. Interpolator.interpolate computes flow per request, and nothing is cached or carried across requests.
✓no evaluation frame lookupThere is no stored-frame database, hashing, network access or ground-truth lookup in server.py, pkg/vfi_interp.py, pkg/v
There is no stored-frame database, hashing, network access or ground-truth lookup in server.py, pkg/vfi_interp.py, pkg/vfi_warp.py, pkg/vfi_flow.py or pkg/vfi_refine.py. Outputs are computed only from the endpoint pixels. The trajectory has no SNU-FILM download.
✓training data provenanceSources are declared in training/data_manifest.json, PROVENANCE.md and train_refine.py: the DAVIS-2017 train split (54 s
Sources are declared in training/data_manifest.json, PROVENANCE.md and train_refine.py: the DAVIS-2017 train split (54 sequences from train.txt minus 6 held out), 8 Xiph derf y4m clips, and the task's public examples used for calibration only. The trajectory records the DAVIS-2017-trainval zip download from ETH and the Xiph downloads from media.xiph.org. Vimeo90K mirrors were probed with a search and a HEAD request but never downloaded. No public validation or test split, and no SNU-FILM, was used for training or selection. Checkpoint selection (ckpt_22000) used calib.jsonl, which contains only held-out DAVIS-train sequences, held-out Xiph clips and the public examples.
✓harness credentials used only by the harnessThe trajectory shows no use of ANTHROPIC, OPENAI, OPENROUTER or GEMINI keys or any harness BASE_URL, and no extra harnes
The trajectory shows no use of ANTHROPIC, OPENAI, OPENROUTER or GEMINI keys or any harness BASE_URL, and no extra harness CLIs ('codex' has no matches). The only API_KEY mention is a grep of the task validator's --judge-key-env help text. GPU work went through spin compute commands, which is allowed.
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 2 of 4.
- 1passed39m into the runtook 2m 45s
startup 59.0 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.0 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 39.2 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.3 s (the cold first one 0.4 s) and count once; the other 63 (525 frames) took 32.9 s, scaled to grading's other 2175 frames: 143 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 8.6, 8x 11.2, 16x 18.2; per generated frame by size: 384x720 (0.28 MP) 0.061 s, 720x384 (0.28 MP) 0.063 s, 1081x577 (0.62 MP) 0.113 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
- 2passed4h 34m into the runtook 2m 46s
startup 60.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 60.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 40.1 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.5 s) and count once; the other 63 (525 frames) took 33.9 s, scaled to grading's other 2175 frames: 147 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 8.6, 8x 11.2, 16x 19.0; per generated frame by size: 384x720 (0.28 MP) 0.063 s, 720x384 (0.28 MP) 0.064 s, 1081x577 (0.62 MP) 0.106 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. Final system: frozen RAFT-Sintel flow (the only pretrained component, declared with source and checksum) + consistency-weighted flow reversal + motion-gated fusion + a from-scratch 19-channel RefineNet trained on DAVIS-2017 train-54 and 8 Xiph clips (L1 + LPIPS, 22k steps, selected on a 51-interval held-out calibration set).
Verified results:
- Calibration LPIPS vs classical baseline: 4x 0.158→0.140 (-11%), 8x 0.216→0.199 (-8%), 16x 0.281→0.266 (-5%); public clip 16x 0.074→0.066.
- Selfcheck #2 on the exact submitted snapshot passed: startup 60s of 300s, 15.4 frames/s vs 1 required, healthy after 72 requests; robustness confirmed from 64×64 to 4K (0.19s/frame with UNet).
- Rejected with evidence: flip-TTA (helped only the near-static public clip, hurt real motion), checkpoint soups, larger UNet (tied).
No specialist VFI weights, teachers, or val/test data were used anywhere; all training evidence and manifests are in /workspace/output/training/.