← Compare all local Jev alternativesLocal Jev models · deploy guide

Deploy NanoJev locally

NanoJev is a nano, open replica of Jev — a 0.6B decision model on Qwen3 that takes states and questions and returns a full probability distribution in one pass, with zero output-token decoding. It ships the whole training pipeline, dataset and a local decision server, and fine-tunes on a single GPU.

What NanoJev is

NanoJev (by TianyuCodings) is an MIT-licensed, open-weight reconstruction of Jev's architecture built on Qwen3-0.6B with decision heads. It handles 2–255 candidates via set attention + softmax and returns choice / boolean / ordered-score distributions without generating any tokens. The repo includes the end-to-end training pipeline, the dataset, and a browser demo comparing Jev, NanoJev and untuned Qwen on Snake and a maze.

Relationship to official Jev

NanoJev is a research replica, not TypeSafe's Jev. It implements the System One request contract closely enough that the official SDK can point at a local NanoJev server with a base_url change — but it's trained on toy tasks (Maze, Snake, ViZDoom), and the authors are refreshingly honest: their own dev notes say "better one-step probability scores do not establish long-horizon game success" and call it "a bounded integration pilot, not a full-size completion benchmark." Treat it as a way to learn the architecture and prototype, not a production decision model.

Requirements

Clone, install, download weights

git clone https://github.com/TianyuCodings/NanoJev.git && cd NanoJev
python -m pip install -r requirements-toy.txt huggingface_hub

python - <<'PY'
from huggingface_hub import snapshot_download
snapshot_download("C-Tianyu/NanoJev", revision="unified-games-v1",
                  local_dir="checkpoints/NanoJev-unified")
snapshot_download("C-Tianyu/NanoJev-Data", repo_type="dataset",
                  revision="unified-games-v1", local_dir="data/NanoJev-unified")
PY

Serve the decision API

python scripts/serve_decisions.py \
  --checkpoint-dir checkpoints/NanoJev-unified \
  --web-root web --port 8765 --disable-native-triton

# → decisions at:  POST http://127.0.0.1:8765/api/evaluate

Local API endpoint

The server loads the model once and answers batched POSTs at /api/evaluate with state/question payloads, returning the full distribution per question. Because it mirrors the System One shape, you can point Jev-compatible client code at http://127.0.0.1:8765 instead of the hosted gateway.

Reported latency

No official latency figure is published. Architecturally it's a single parallel forward pass over a 0.6B model with no token decoding, so it's in the sub-100 ms class on a modern GPU — but benchmark it on your own hardware before quoting a number.

Calibration caveats

NanoJev is trained on a small set of toy tasks, so its distributions reflect that training, not general-purpose calibration. The authors themselves note atomic accuracy showed no improvement over always-true controls on full-map training. Do not wire a production threshold to it without validating on your own data — and prefer it for learning and prototyping.

Sources

Backbone Qwen3-0.6B retains its own upstream license.

See also: NanoJev vs Jev (full comparison) · Jev on Hugging Face · ← Compare all local Jev alternatives · Prefer hosted Jev (no GPU)

Other local models: Laya · OpenJev · DiffusionGemma-as-Jev

Need a production-grade decision model?

NanoJev is great for tinkering. For calibrated, pinned decisions with no ops, call the hosted model with a jv_live_ key.

▶ Try Jev freeGet an API key →
← Compare all local Jev alternatives
Run NanoJev locally — the 0.6B open Jev replica (install & serve) · Jev by TypeSafe AI