Introducing Themis · Open weights · v1.0

Small models.
Clear decisions.

Turn text and images into choices, yes/no judgments and rubric scores. A probability for every option. One forward pass.

*Our evaluation; strict 4K overall: 82.54%. Read the protocol ↗

Built on Qwen3.5. Complete weights and inference code.
Apache 2.0 · Run on your own hardware.

01 / A decision in practiceRecorded · 2B
STATE

“A customer was charged twice
and wants a refund.”

THEMIS / ONE PASS
CHOICE

Route to billing

98.7%
YES / NO

Investigation needed

84.6%
SCORE

Medium urgency

51.5%
Actual release-verification output Inspect the distributions ↗
2model sizes
3decision primitives
255options per question*
1shared forward pass

01 / In practice

Same model. Different decisions.

Read the evidence. Inspect the alternatives.
Every probability below is a saved model output.

02 / The family

Pick your scope.

Two sizes. The same typed-question approach.
Choose the context and modalities your workflow needs.

TEXT01

Themis 0.8B

Text2K contextApache 2.0

A compact text model for routing, triage, relevance checks and other bounded judgments.

Input
Text
Rendered context
2,048 tokens
Backbone
Qwen3.5-0.8B
Released checkpoint
Step 4,153
Weights & model card ↗
TEXT + VISION02

Themis 2B

Text + vision4K contextApache 2.0

Bring images into the decision: diagrams, document pages, screenshots and charts alongside text.

Input
Text + up to 2 images
Rendered context
4,096 tokens
Backbone
Qwen3.5-2B + native vision
Released checkpoint
Step 3,258 · v1.0.0
Weights & model card ↗

*Up to 255 verified single-token answer codes, subject to context. Context includes evidence, questions, options, template and image tokens. Oversized requests raise an error.

03 / The evidence

The results, in context.

Published checkpoints, fixed evaluation corpora,
and the details behind every number.

DECISION BENCH · 2B83.01%

889 of 1,071 cases correct

IMAGE-BEARING SUBSET · 2B93.44%

114 of 122 cases correct

READ THE PROTOCOL

Our measured results, not official leaderboard entries. Nine long cases used 8K context; strict 4K accuracy is 82.54%.

Methodology & overlap notes ↗

Loading verified aggregate results…

04 / Explore the output

A decision you can inspect.

See how the probabilities move across models.
Then export a request to run yourself.

Recorded outputs · no live inference
REQUEST
PROBABILITIESThemis 2B

Precomputed during release verification. Selecting an example replays saved results; no model runs in your browser.

Build your own request +

Edit the evidence and question schema, then copy a complete Python example or download the JSON. Custom requests run on your own machine; this site has no live inference service.

05 / Your first decision

A case in.
Clarity out.

Describe your evidence and the answers you will accept. Ask several typed questions in one request, then work with the returned probabilities.

  1. 01 Load the published weights.
  2. 02 Define your case and questions.
  3. 03 Read one distribution per question.
Setup & model card ↗

Runs on your own hardware. Follow the model card for tested dependencies. The response tab shows the recorded 2B refund example.

THEMIS 2B / LOCAL INFERENCE
Loading the pinned example…
Pinned release · no hosted API required

06 / Inside the model

From evidence to probability.

A Qwen decoder adapted for typed decisions.
The answer space is defined by your application.

  1. 01

    Define the decision

    Supply the case, questions and descriptions of the allowed options. Text and optional images enter the encoder.

    state + questions + options
  2. 02

    Read the context

    Full-attention layers see both directions. Linear-attention layers keep forward recurrence. Multiple questions share the request.

    Qwen3.5 + decoder LoRA
  3. 03

    Score the options

    Hidden states at dedicated answer positions score only valid answer-code embeddings. Softmax produces each distribution.

    answer states → option scores
THREE PRIMITIVES

A small decision vocabulary.

Choice selects a named alternative. Yes/no estimates whether a statement is true. Score evaluates an ordered rubric.

Answers come with option probabilities. The 0.8B release also reports an expected score; the 2B release returns the most likely level index. Their response envelopes differ.

TEXT + VISION

The image stays in the loop.

The 2B model uses Qwen’s frozen native vision tower and merger. Image tokens enter the decoder together with the case. Decoder LoRA learns the decision task; vision weights stay frozen.

Up to two images per request, with 64–1,024 visual tokens each. Those tokens count toward the 4K context limit.

TRAINING & SELECTION

Choose the checkpoint on validation.

BF16 LoRA, rank 32, with split-aware probability targets and target-preserving choice permutations. The 2B experiment completed three epochs; step 3,258 had the lowest validation soft cross-entropy.

Per-type temperatures were fitted on calibration data. Better confidence calibration cannot repair an incorrect top-ranked answer.

2B TRAINING RECIPE

Training decisions
73,247
Packed requests
52,111
Precision / adapter
BF16 · LoRA r32 / α64
Batch / learning rate
32 requests · 1e−4
Training / hardware
3 epochs · one H100
Estimated experiment compute
US$16.68*

*Recorded estimate including preparation, profiling and evaluation; not a guaranteed invoice or a serving-cost estimate. Base weights and embeddings stayed frozen; decoder LoRA was trained with soft cross-entropy.

07 / What the numbers mean

Keep the boundaries visible.

Results are useful when the protocol travels
with them. Here are the important qualifications.

Context & coverage

Decision Bench has 949 text and 122 image-bearing cases. The headline 2B run extended nine long requests to 8K. Counting those cases as failures yields 82.54%; the released model enforces 4K by default.

The 0.8B text comparison used an 8K limit. Its strict trained 2K result is 70.60%, compared with 72.50% when extended.

Overlap & independence

Typed Decisions is a fitted evaluation: 554 official training cases enter the 2B mixture. No official test states matched train, validation or calibration by exact normalized state checks.

172 official test cases also appear in the mixture test split. Those evaluations are not independent. Paraphrase overlap and base-model pretraining exposure remain unassessed.

Probabilities & performance

Brier score and ECE definitions vary across benchmarks. Compare checkpoints within a protocol. SysOne scores expected rubric levels, while Typed Decisions uses the highest-probability answer.

Local latency is workload- and hardware-specific. It is not hosted API latency, and there is no controlled speed comparison against Jev or other vendors.

Where judgment still matters

Themis scores the alternatives you provide. A missing correct option cannot be selected. Question bundling and option order can affect the result.

English prompts were used for training and evaluation. New domains, other languages, quantization and longer contexts need independent validation. High-stakes outcomes require review.

Why publish step 3,258 instead of the final checkpoint? +

08 / Put it to work

Your questions.
Your decision space.

Start with complete weights and a runnable example.
The full curation, training and evaluation pipeline
is being polished for a future source release.