- bf16
- 55.6 GB
- Q8_0
- 29.0 GB
- Q4_K_M
- 16.8 GB
- MLX 8-bit
- 28.6 GB
- Q8 agrees
- 259 of 260
Judge Jeb · the specialist
One base model. Two roles.
Public Jeb answers general questions. Judge Jeb is an adapter on the same base, trained on the decisions one engine actually asks, and on the outcomes people approved.
Swipe for Judge Jeb →
On this page, as on the posters: solid frames exist today, dashed frames are work in progress.
Observe → Measure → Calibrate → Trust → Automate
What Jeb does
He doesn’t talk much. He just decides.
A support desk gets a ticket. It needs four answers before anyone reads it: which team, whether to reply today, how upset the customer is, and whether they want money back. Here is what Jebadiah 9B v2 returned on our fleet on 26 September 2026.
Incoming ticket
“Payouts failing again. Third payout this week bounced with error PAYOUT_REJECTED. I have to pay two contractors by Friday and your status page says everything is fine. What is going on?”Unassigned
Which team takes it?
choiceReply today?
noulHow frustrated is the customer?
scoreExpected level 2.29 on a 0 to 3 scale: between frustrated and angry.
Is the customer asking for a refund?
noulWhat a chat model gives you
“This sounds like a billing issue, though it could involve the technical team since there's an error code. The customer seems quite frustrated, so it would be good to respond promptly...”
Now write code that turns that into a route, a priority and a refund flag. Then do it again when the wording changes.
What Jeb gives you
Numbers your code can use as they are. Route to billing because 0.878 clears your bar. Page someone because frustration sits at 2.29. Skip the refund flow at 0.020. The same question asked twice gets the same numbers.
choicePick one of several named options. Jeb returns a probability for each.
noulA yes or no statement. Jeb returns the probability that it is true, from 0 to 1.
scoreAn ordered scale. Jeb returns a probability per level and the expected level.
Public Jeb · the generalist
Three sizes. Open weights.
Every model is Apache-2.0 and trained on public data only. The score is our own eval, not a leaderboard: a macro average over public decision sets the models never trained on.
- bf16
- 19.3 GB
- Q8_0
- 9.8 GB
- Q4_K_M
- 5.8 GB
- MLX 8-bit
- 9.5 GB
- Q8 agrees
- 257 of 260
- Q8_0
- 4.6 GB
- Q8 agrees
- 256 of 260
v2.1 scores: 57.03 (27B, up 1.92) and 47.20 (9B, up 3.11) on the public part of Decision Index 0.3, our own run, submitted to the board. The board adds its private parts after the maintainer merges, so there is no rank yet. Every request and score. Tools dipped a little (27B 76.03, down 2.10). On a Mac, take the MLX 8-bit; the 9B 4-bit is the bare minimum.
On the board today: published Jebadiah 27B (v2) is #11 (tied) of 117 on Decision Index v0.3.1, full score 55.6 (generated 2026-10-10). Earlier it was #5 of 67 on Index 0.2.1 (September 26). Details.
JevBench: on its 231 public items, run through its own harness, Jebadiah 27B scores 0.866, the same as Jev 1.13.0. Our run, not the official board. Details and caveats.
“Q8 agrees” is how often the 8-bit GGUF gives the same answer as the full weights on 260 held-out questions. Smaller downloads, same decisions.
All three live in one Hugging Face collection, with mirrors on ModelScope.
Run it anywhere
Your hardware. Your call.
One command: jeb serve
Install the jeb command and start it in front of the runtime you already have. It serves decisions on http://localhost:8100: POST /v1/systemone speaks Jev's wire format: JDE judges there by default with no key and no config, and an existing Jev client works once you change the endpoint. POST /v1/decide takes AINode's shape.
Python 3.10 or newer. No torch, no transformers. On the Ollama path, a clean setup answered its first decision in 2 minutes 1 second, most of it the model download.
pip install jebadiah-decide
jeb serve # Ollama: pulls the 9B Q8_0 (9.8 GB) the first time
jeb doctor # checks the runtime, the model and a known answer
# decisions POST http://localhost:8100/v1/systemone
# also POST http://localhost:8100/v1/decide
Ollama or LM Studio
The fastest start. jeb serve pulls the model into Ollama and serves it. For LM Studio, load jebadiah-9b-v2 Q8_0, switch its server on, then run jeb serve --backend lmstudio. Up to 20 options per question on both.
llama.cpp or vLLM
Run llama-server on the Q8_0 GGUF, then jeb serve --backend llama-server, with no limit on options. Or serve the full weights with vLLM and run jeb serve --backend vllm.
MLX on a Mac
No other runtime needed. jeb serve --backend mlx downloads the 9B v2.1 from jebadiah-9b-v2-1-MLX-8bit the first time, with no limit on options.
AINode
An open-source local AI platform for NVIDIA GPUs. It serves Jeb on vLLM and answers /v1/systemone and /v1/decide itself, across a cluster. AINode path · github.com/getainode/ainode
A note on chat apps
Don't judge Jeb in a chat window. Every runtime's chat runs with thinking on and shows text, and Jeb isn't built to write text, so what you see there is nonsense by design. A decision reads the probability of each answer, which is what jeb does.
GGUF builds, including third-party ones, may show a “Vision” tag in LM Studio because the Qwen base has a vision tower. Jebadiah is not trained on images, and the file isn't needed.
Advanced: without jeb
Each model repository still carries one script per runtime (scripts/decide_gguf.py, decide_ollama.py, decide_lmstudio.py, decide_mlx.py) for a single request file, and the repository has a standalone server that runs the full weights with PyTorch: uv run jebadiah-serve --model frontier-infra/jebadiah-4b-v2.
Judge Jeb + JDE
Public Jeb knows how to decide. Judge Jeb learns how you decide.
Judge Jeb
- An adapter on the same Jeb base
- Trained on JDE's decision shapes and approved outcomes
- Private when it is trained on a customer's data
Its first training data comes from JDE's own ledger: decisions recorded in shadow mode, then labeled by what actually happened.
JDE, the Jeb Decision Engine
Jeb is the model. JDE asks the question and turns the answer into allow, ask or block.
- Judges. Several models can answer the same question.
- Per-judge calibration. Each judge's numbers are fitted so 0.8 means 0.8.
- Bands. Every answer lands in allow, ask or block.
- Ledger. Every decision and its outcome, kept.
Coding-agent hooks
“All tests pass.” Did they?
In design · shadow mode firstA coding agent finishes and says it is done. A distiller reads the session and reduces it to one question with the evidence attached. Jeb answers. JDE puts the answer in a band.
pytest tests/test_login.py → 1 passedJeb's answer
0.34
One test file ran. “All tests” is a bigger claim than that, so the agent gets asked, not waved through. Where the band edges sit is set per judge by calibration.
DecisionBench
Measure the judge where it works.
ComingLeaderboards score a model alone. DecisionBench scores a judge inside an engine, the way it will be used, and runs the same way on every model. The code and data will be public.
Threshold error
How often it acts above the line when it should not have.
Recalibration cost
How many labels it takes to recalibrate.
Flips
Whether the same question gets a different answer.
Noise
How much the numbers wobble between runs.
Speed
Time per decision.
Cost
What each decision costs to run.
Where Jebadiah is
Same dirt. Higher intelligence.
Three kinds of evidence, strongest first: what someone else measured, what we measured that you can rerun, and who has picked Jeb up. Board numbers are from 2026-10-10; everything else is dated where it appears.
1 · Measured by someone else
Decision Index v0.3.1 · the board's own numbers · generated 2026-10-10
Published Jebadiah 27B (v2) is #11 (tied) of 117 on Decision Index v0.3.1, with a full score of 55.6 (public 55.1, same-skills 55.2, new domains 56.7).
These are the board's equated scores, from its data generated 2026-10-10 07:54 UTC. Models within 0.9 points count as tied. Jeb v2.1 is not on the board yet: our own run on the public items gives 57.03 for the 27B and 47.20 for the 9B, and the official rerun is pending.
History: on Index 0.2.1 (September 26) the 27B was #5 of 67 open models at 54.67, the board's validated number at the time.
On the 0.2 kit, with the kit's own scorer, it scored 50.32. All 151,476 requests were answered (151,034 of 151,034 scoreable). We ran it on one RTX PRO 6000 through the kit's hf-job, at the maintainer's invitation. Median latency was 110.6 ms per request. On 0.2, against AutoJev-27B, it led on retrieval (45.5 vs 42.0) and trailed slightly on knowledge, language, tools and arts.
| Entry | Full score |
|---|---|
| Perplexity Decider v1.1 (27B) | 62.75 |
| Fastino GLiDE no-thinking (28B) | 60.21 |
| Jev | 60.11 |
| Torchcast Decision 27B | 59.91 |
| deck31b (Gemma 4 31B) | 59.03 |
| Kev 27B | 58.78 |
| Quyet-1.0-Large | 58.71 |
| Blink v0.3 26B-A4B (NVFP4) | 57.76 |
| Decider chat · Gemma-4-31B | 57.62 |
| Surogate Rune 26B-A4B v3 | 57.43 |
| Jebadiah 27B (v2), #11 tied | 55.63 |
2 · Measured by us, reproducible
JevBench v1.4.2 · our run · as of 2026-09-26
On JevBench's 231 public items, run through its own harness, Jebadiah 27B scores 0.866, the same as Jev 1.13.0.
Jebadiah 9B v2 scores 0.818 on the same items.
This is our own run on the public items. The board's official ranking also uses sealed items that only its maintainer runs. The 27B's hard-tier calibration (ECE 0.113) is weaker than the 9B's, and it got 4 of 15 temporal and numeric items right.
| Tier | Jebadiah 27B | Jev 1.13.0 |
|---|---|---|
| Easy | 48/48 | 48/48 |
| Standard | 70/72 | 71/72 |
| Hard | 82/111 | 81/111 |
| Score | 0.866 200/231 | 0.866 200/231 |
JDE blind test · as of 2026-09-26
Titanium Computing's production decision engine (JDE): 290 real decisions, blind to training.
Jebadiah 9B v2 against Jev on the same 290 decisions, inside the engine that makes them. JDE is open source.
0 flips
Across 5,800 calls, no answer changed on a repeat. The probabilities were identical from run to run.
277/290
Jeb 9B v2's total, against Jev's 282. Close, and Jev still leads on coverage checks (3 misses to Jeb's 7).
37 vs 35
Jeb beat Jev on the added-requirement checks: 37 of 40 right, to Jev's 35.
3 · Adopted by others
- mradermacher GGUF quantsIndependent GGUF builds of the 9B v2, made by a third party.as of 2026-09-26
- yibie awesome-jevListed in yibie's awesome-jev, the main Jev community list.as of 2026-09-27
- Decision Index news feedListed in the Decision Index news feed, under trained models.as of 2026-09-26
- OmniJev awesome-jev-galleryListed; the pull request is merged.as of 2026-09-26
- logicrw Awesome Jev catalogListed. A catalog entry, not a performance validation.as of 2026-09-26
- LM Studio model searchJebadiah shows up in LM Studio's built-in model search.as of 2026-09-26
- OllayaThe maintainer invited a pull request for the Jeb family.as of 2026-09-26
- Qwen3.5-9B model treeJebadiah 9B v2 appears as a fine-tune in the base model's tree on Hugging Face.as of 2026-09-26
- ModelScopeMirrored: all nine repos (three sizes, each as weights, GGUF and MLX).as of 2026-09-26
- Awesome-LLMOpsJebadiah is listed under Model > Large Language Model.as of 2026-10-07
About the “Vision” tag: GGUF builds, including third-party ones, may show a Vision tag in LM Studio because the Qwen base model has a vision tower. Jebadiah is not trained on images and does not make decisions in a chat window. Use the decide scripts: scripts/decide_gguf.py or scripts/decide_lmstudio.py.
Who builds it
Built in Texas. For what comes next.
Jason Brashear
Builds and trains the Jeb models, and builds AINode.
Frontier Infra
The Hugging Face organization that publishes the weights.
AINode
The open-source local AI platform that serves Jeb on our own GPUs. github.com/getainode
