JJev Cookbook
课程首页 中文文档 拓展阅读 GitHub ↗

拓展阅读 / NanoJev:小型决策模型

知识库收录材料 · 原始文件 ↗ · 来源、版本与许可

Predict Position: one rocket, three policies

Open the Predict Position replay.

The light development viewer shows Jev, NanoJev and Untuned Qwen playing the same moving-target scenario. Maze, Snake and Basic now use this same unified step-400 checkpoint in the development arcade. Watch the original game frames, action probabilities, actual rocket launch times and final outcomes on one shared physical clock. Playback starts paused at 0.5× speed; play, seek, step one tick or jump directly to any model's shot. The Play the NanoJev win button returns to the featured NanoJev-only success and starts playback.

Predict Position recorded comparison(见原始材料)

Download the comparison video.

In seed 9300720, NanoJev waits as the target moves and fires later:

PolicyActual launchEnd of episodeOutcome
JevTick 49 · 1.40 sTick 95 · 2.71 sMiss
NanoJevTick 177 · 5.06 sTick 208 · 5.94 sHit
Untuned QwenTick 49 · 1.40 sTick 95 · 2.71 sMiss

Times are elapsed game ticks divided by 35. The game consumes the one rocket at the actual launch tick. Selecting the shoot action may precede launch due to the native weapon animation. The shot buttons use observed ammunition decreases.

The case picker contains two selected NanoJev wins: Wait for the window (seed 9300720) and Turn into the shot (seed 9300738). Jev and Untuned Qwen miss in both. Each comparison resets all models to the same seed and uses its complete recorded trajectory. The score strip below still covers all 128 test episodes.

Complete test cohort

The score strip summarizes all 128 held-out Predict Position test episodes:

PolicyTargets eliminated
NanoJev27/128 · 21.1%
Jev11/128 · 8.6%
Untuned Qwen11/128 · 8.6%

All policies use the same structured observation interface, candidate actions, four-tick action cadence and epsilon-greedy controller (epsilon 0.1, seed 17). NanoJev uses the dev-selected mixed expert SFT checkpoint, hard_lr1e5 step 400. Untuned Qwen uses its original Qwen3-0.6B weights and vocabulary head.

Full mixed-task test and OOD results.

Reproduction

The exporter replays the saved decisions on CPU, verifies every environment transition against its source, captures real RGB frames and checks each lossless WebP atlas after decoding. Final frames freeze at each model's actual terminal tick. A frame unavailable at termination retains its original image_tick in the data and viewer.

bash
python scripts/build_predict_position_demo.py \
  --output web/dev \
  --receipt results/predict_position_demo_v1/build_manifest.json

python3 -m http.server 8093 --bind 127.0.0.1 --directory web

Open http://127.0.0.1:8093/dev/predict-position.html. Source paths default to the locally retained mixed-SFT experiment. Use a fresh output index and receipt when exporting. --validate-only verifies the complete source cohort and case selection without rendering.

scripts/check_predict_position_demo.mjs verifies playback, shot events, benchmark counts, original canvas pixels and mobile layout. The deterministic video exporter, scripts/capture_predict_position_demo.mjs, records the complete default case on the same shared timeline. Both accept local Chrome and Playwright paths; the video exporter additionally accepts FFmpeg.

The media receipt records source files, checkpoint identity, runtime and asset hashes. The current two-win selection receipt verifies that the retained frames and image pixels are unchanged. The separate development hosting bundle contains the viewer and recorded media.

快照未包含部分工程附件或配图;请通过上游链接或原始材料查看,收录范围见来源清单。

第十一章知识库收录材料 · 来源、版本与许可 · 第三方内容版权归各自作者;观点与数字请对照原始来源核验。