Frontier Infra
open decision model · apache-2.0 · made in texas

He doesn't talk much.
He just decides.

Jebadiah (Jeb) is an open System One decision model. Ask it a typed question and it answers with a calibrated probability over the labels — never a paragraph. Pick an option, confirm a statement, or score a case: Jeb returns a number you can put a threshold on.

Get the weights → Serve it yourself Dataset

The three question shapes

Every question Jeb answers is one of three types. The type is part of the answer: it tells you what distribution comes back and how to calibrate it.

choice

Pick one of N named options. Jeb returns a probability over every option — a ranking you can gate on, not a single guess.

{ "type": "choice",
  "state": "Ticket #4812: user cannot sign in…",
  "options": ["password reset", "mfa lockout", "account suspended"],
  "criteria": "route to the queue that can actually fix it" }

noul

A yes-or-no statement. Jeb returns P(yes) — one calibrated number, stable across runs, that turns fuzzy judgment into a threshold.

{ "type": "noul",
  "state": "PR #217 touches 3 files, tests green, no docs",
  "statement": "this change is safe to auto-merge",
  "criteria": "merge only if risk is low and intent is clear" }

score

Place a state on an ordered rubric. Jeb returns a distribution over rubric levels — graded judgment without prose.

{ "type": "score",
  "state": "Summary of a 40-page incident report…",
  "rubric": ["misses the point", "partial", "faithful", "excellent"],
  "criteria": "does the summary preserve what mattered" }

Get Jeb

Frozen versions, published as separate repositories — a new version never replaces an old one, so a decision recorded with v1 stays reproducible.

jebadiah-9b-v1 LoRA · Qwen3.5-9B-Base

The current model. Ordinal score targets, human-rubric training data (HelpSteer2, SummEval). One epoch, 14,900 questions, 116 minutes on a single H100.

jebadiah-4b-v1 LoRA · Qwen3.5-4B-Base

The v1 sibling at 4B — cheap enough to run on one consumer GPU, same question shapes, same calibration discipline.

jebadiah-9b-v0 frozen first cut

The original: 11,072 public questions, 45 minutes on one H100. Kept forever — v0 answers stay v0 answers.

jebadiah-synth-v2 dataset · Apache-2.0

14,714 typed-decision questions over 3,253 synthetic states in 24 families, labelled by two teachers (DeepSeek V4 Flash + Qwen3.8 27B). Both teachers' distributions kept in provenance — nothing sharpened.

Trained in the open

Every training question is public or licensed data. The synthetic pool was written by one model and labelled by two others; a question was kept only when the teachers' top picks agreed (or the averaged top probability cleared 0.4), and states were checked for overlap against all 20 public evaluation sets the model reports on. The point of a decision model is that you can trust the number — so the number's provenance ships with it.

One honest caveat, stated plainly: served through AINode today, /v1/decide and /v1/systemone return the model's raw distribution. The per-type temperatures in temperatures.json — the ones every calibrated number on the model cards uses — are applied offline by the standalone script in each repository until AINode issue 276 lands. Reproduce any number on the card yourself, from the repo.

Serve it yourself

Jeb is trained and served with AINode, the platform that turns any NVIDIA GPU into a local AI node — the same prompt bytes end to end, from training to serving to measurement.

# AINode serves Jeb's three question types on any NVIDIA GPU
docker run -d --gpus all -p 8080:8080 ghcr.io/getainode/ainode

curl http://localhost:8080/v1/decide \
  -H 'content-type: application/json' \
  -d '{"model": "jebadiah-9b-v1", "type": "noul",
       "state": "Deploy window opens in 10 minutes",
       "statement": "it is safe to proceed now"}'