OneJev, a Multimodal System One Decision Model

English · 简体中文 · 日本語

Hugging Face GitHub Website License

Python PyTorch Transformers

We propose OneJev, a multimodal System One decision model. Give it a screenshot, a photo, a video or plain text along with a few typed questions, and it returns a calibrated probability for every option of every question in a single forward pass. It speaks TypeSafe's System One API, extended with images and video, and comes in four sizes, all trained on the same 99,193 questions drawn from real agent runs, videos and images.

Models

Model Folder Base Weights
OneJev-0.8B 0.8B/ Qwen3.5-0.8B 2.2 GB
OneJev-4B 4B/ Qwen3.5-4B 10.4 GB
OneJev-9B 9B/ Qwen3.5-9B 18.8 GB
OneJev-27B 27B/ Qwen3.8-27B 54.7 GB
OneJev-27B-FP8 27B-FP8/ OneJev-27B in 8-bit 30.4 GB

Each folder is a full model; qev serve --model OmniJev/OneJev/4B fetches just that folder.

Results

Block bar charts: the four OneJev sizes against Jev 1.13, Jev-Omni 12B and Qwen3.8-27B thinking on the OneJev test set, DecisionBench hard, TypeSafe and MMStar

Results table, best score in each row in magenta, second best in light pink

Scores are accuracy in percent. The OneJev test set is questions from the same kinds of data as training that the models never saw during training. Jev 1.13's scores are its published ones, and it reads text only. We ran Jev-Omni and Qwen3.8-27B thinking on the same questions; the thinking model writes a few thousand words of reasoning before each answer, OneJev answers directly.

Latency on one H200 for one 1280x720 screenshot: OneJev-0.8B 31 ms for 1 question, 51 ms for 10, 5.1 ms per question; OneJev-4B 64 ms for 1 question, 104 ms for 10, 10.4 ms per question; OneJev-9B 81 ms for 1 question, 131 ms for 10, 13.1 ms per question; OneJev-27B 189 ms for 1 question, 324 ms for 10, 32.4 ms per question

Quick start

pip install git+https://github.com/OmniJev/OneJev.git
qev serve --model OmniJev/OneJev/4B --port 8000
from qev import Client, Choice, Noul, Score
from qev.media import data_uri

r = Client("http://localhost:8000").system_one(
    state={"task": "Pay the open invoice from ACME", "screen": "<image:1>"},
    media=[{"type": "image", "data": data_uri("screenshot.png")}],
    questions={"done": Noul("The invoice has been paid"),
               "next": Choice("What should the agent do next?",
                              {"click": "click an element", "type": "type text", "scroll": "scroll", "stop": "stop"}),
               "progress": Score("How far along is the task?", ["not started", "halfway", "almost done", "done"])},
)
r.answers["done"].noul                  # probability of yes
r.answers["next"].probabilities         # one probability per option
r.answers["progress"].score             # expected level

Text-only requests are plain System One requests; the official typesafe-sdk works with TYPESAFE_BASE_URL=http://localhost:8000. More in examples/: a screenshot, a video, curl, and the official SDK. benchmarks/latency.py measures the speed chart on your own GPU.

How it works

The state is read once, with its images and video frames, and every question runs as a short branch off that one read. The answer is the probability of each option letter at the last position. Ten questions about one screen cost little more than one.

API

POST /v1/systemone takes TypeSafe's request plus an optional media list; the state points at each item as <image:N> or <video:N>.

image   {"type": "image", "url": ...}   {"type": "image", "data": <base64>}   {"type": "image", "path": ...}
video   {"type": "video", "frames": [<image>, ...], "fps": 2.0}

Training

Full-parameter fine-tuning of Qwen3.5-0.8B, Qwen3.5-4B, Qwen3.5-9B and Qwen3.8-27B for one epoch, vision tower frozen.

Citation

@misc{onejev2026,
  title        = {{OneJev}: A Multimodal System One Decision Model},
  author       = {{OmniJev Team}},
  year         = {2026},
  howpublished = {\url{https://github.com/OmniJev/OneJev}}
}

License

Apache 2.0

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support