Skip to content

LitJev

Reproduction of Jev's decision layer on any Qwen model: serves /v1/systemone by scoring option tokens, with no training or generation.

ServiceresearchApache-2.0

Overview

LitJev reproduces the decision layer of Jev on top of off-the-shelf Qwen checkpoints from Hugging Face. You define questions and options, load a Qwen model, and get typed choices with probability distributions from a single API call or a browser front end, with no training and no generated answer text. It is a hypothesis-based reproduction from public information, not affiliated with TypeSafe; the JSON follows Jev's public schema but internals, confidence values and performance differ, and probabilities are not calibrated by default.

Each request has two steps. A prefill computes the shared state once, cached on SGLang or batched on transformers. Then each question lists its options and ends with 'Answer:', each option's own words are appended and teacher-forced, the summed log-probability of its tokens is that option's score, and a softmax gives the distribution. Scoring the option's words rather than a letter avoids position bias from label tokens, with a coded readout available as an option. Questions cannot see each other. The full Qwen family is supported, with Qwen3.8-27B on one H100 as the tested default; vision checkpoints enable screenshot decisions. Documentation is in English and Chinese.

What the decision model decides

TypeQuestionAnswers
ChoiceWhich option fits the state?—
ScoreWhere does the state fall on the scale?—
Yes / noIs this statement true?—

How it works

  1. Load a Qwen checkpoint with the transformers or SGLang backend
  2. Prefill the shared state once
  3. Teacher-force each option's words and sum log-probabilities
  4. Softmax over options gives the distribution
  5. Return Jev-schema JSON

Strengths

  • Works with any Qwen size, including vision models
  • No training needed
  • Option-word scoring reduces position bias
  • Jev-schema compatible

Caveats

  • Probabilities not calibrated by default
  • Default model needs an H100 80 GB
  • Not identical to Jev's behaviour

Getting started

git clone https://github.com/zhengxuyu/litjev.git && cd litjev && uv run --locked litjev --model Qwen/Qwen3.8-27B, then open http://127.0.0.1:8000/.

At a glance

Type
Service
Status
research
Language
Python
Runtime
transformers or SGLang server with web UI
Has code
yes
License
Apache-2.0

Use cases and integrations

How curated lists describe it

  • Local reproduction: a reproduction of Jev that turns any Qwen model into a fast decision model, serving the same `/v1/systemone` schema (Choice, Score, Noul) with no training and no generated answer text.

    yibie/awesome-jev
  • A reproduction of Jev that turns any Qwen model into a fast decision model, serving the same `/v1/systemone` schema (Choice, Score, Noul) with no training and no generated answer text.

    AnotiaWang/awesome-decision-models
  • Open reproduction of Jev decision layer on open-weights models, serving the System One schema by inspecting option logits directly.

    logicrw/awesome-jev-projects
  • Reproduction of Jev that turns any Qwen model into a fast decision model, serving the same `/v1/systemone` schema (Choice, Score, Noul) with no training and no generated answer text.

    cobanov/awesome-jev
  • A reproduction of Jev that turns any Qwen model into a fast decision model, serving the same /v1/systemone schema (Choice, Score, Noul) with no training and no generated answer text.

    hellogumbo/awesome-jev

Frequently asked questions

Does it need training?

No, it reads option scores directly from a pretrained Qwen model.

Are probabilities calibrated?

Not by default, per the README.

Which hardware does it need?

The tested default is Qwen3.8-27B on one H100 80 GB; smaller Qwen models work too.

Related projects

  • llama.cpp-based C++ server that turns any LLM into a System One decision model, reading answers from next-token logits.

    ProjectbetaC++
  • MLX library that turns an existing local model into a decision engine by reading candidate logits, with no fine-tuning, on Apple Silicon.

    ProjectprototypePython
  • Local server (xks) implementing Jev's /v1/systemone contract on an open-weight LLM, accelerated with Xeon Phi cards.

    ProjectresearchRust
  • Educational C11 library and CLI that turns DiffusionGemma 26B into a CPU-first OpenJev-style decision engine reading candidate logits.

    ProjectresearchC
  • Experimental engine that makes an existing LLM do Jev-like classification and scoring by reusing context and building JSON.

    ProjectresearchPython
  • Reads typed decisions from one forward pass of PrismML's 1.75-bit Bonsai 27B under llama.cpp, using the OpenJev/SemIf logit method.

    ProjectresearchPython