Decision-1-0.6B

A smaller member of Worthify's Decision-1 family. It reads an evidence string, a criterion, and 2–16 options, then scores the declared options in one forward pass. It does not generate an answer or explanation. Scores are conditional on the supplied options and uncalibrated as decision confidence.

The upstream base is Qwen/Qwen3-0.6B at revision c1899de289a04d12100db370d81485cdf75e47ca. The resident text model has 596,049,920 parameters. E2B/E4B upstream names denote effective sizes; use measured file size and runtime memory when sizing a deployment. This is an independent Worthify fine-tune, not Tiny-Jev's weights or training data.

Files and local inference

This repository includes merged BF16 Transformers weights and Decision-1-0.6B.F16.gguf (1.116 GiB), its hashed inference contract, and a local Electron/Node scorer. Use Node 22.12 or newer. Download this repository at an immutable revision, then:

cd electron
npm ci --ignore-scripts
node cli.mjs ../Decision-1-0.6B.F16.gguf ../gguf-inference.json ../examples.jsonl cpu

For an Electron window:

./node_modules/.bin/install-electron
DECISION_MODEL="$PWD/../Decision-1-0.6B.F16.gguf" \
DECISION_CONFIG="$PWD/../gguf-inference.json" \
DECISION_BACKEND=auto npm start

cpu forces CPU-only inference. auto uses an available backend with CPU fallback. Explicit cuda, metal, or vulkan requires that backend to load GPU layers. The runtime disables flash attention and uses FP32 key/value caches, including those settings when fitting GPU layers into memory. The window reports the effective backend. Linux needs a working Chromium sandbox; keep sandboxing enabled. Native modules and GGUF files must remain outside ASAR when packaging. Linux validation does not establish Windows or macOS compatibility. Evidence stays local; the renderer exposes only status/scoring IPC and has no Node or network access.

For the native FP32 CUDA path, install requirements.txt, expose exactly one CUDA GPU, and run python score.py --input examples.jsonl. Stored weights remain BF16; the loader promotes them to FP32 without changing their values. FP32 computation needs about twice the weight memory of BF16. Inference is single-row with autocast and TF32 disabled. score.py uses the exact saved prompt and reinstalls Gemma's FP32 final-softcap hook on each load. A plain AutoModelForCausalLM.from_pretrained call does not reinstall that Python hook. Both paths reject prompts over 2,048 tokens rather than truncating.

Training

The frozen Decision-1 v9 mixture contains 35,210 training, 3,200 validation, and 3,200 sealed-test rows. Its manifest SHA256 is 7089b3756e7ed68c9d1ee3712195ce4a0e31162736673c911542f52d8777cddd. Sources are CLINC150 (Larson et al.; CC-BY-3.0), WANLI (Liu et al.; CC-BY-4.0), MultiNLI (OANC permissive terms), and Worthify-authored examples (MIT). Exact source revisions, attributions, licenses, split rules and hashes are in data-lineage.json. Third-party raw records are not redistributed here.

Training uses the existing Decision-1 prompt, categorical cross-entropy over declared option logits, family schedule, and row-local option permutations. These smaller models use supervised LoRA on BF16 bases: rank 16, alpha 32, dropout .05, q/k/v/o projections, AdamW, seed 42, two complete epochs (4,402 updates), effective batch 16, microbatch 16, 50-update warmup to 2e-5, and gradient clipping at 1. The original 12B Decision-1 used full-parameter training with a different optimizer schedule; this run does not reproduce that method. Training ran on a local A100.

Checkpoint selection uses full validation, requires a complete unique pass and at least +.002 equal-family score over its own frozen base, and rejects retention-gate regressions beyond .02. Selected step: 3200. The sealed test was opened only after selection and merged-weight validation/reload checks. Serialization smoke checks use eight fixed reference rows. The merge must preserve unique reference maxima; an exact tie may resolve only to an originally tied maximum, within the unchanged .5-logit bound. This tie rule was amended after the first 0.6B export failed strict first-index argmax equality on an exact tie; the failed attempt and independent review are recorded in evidence/merge-policy-amendment.json. Reported metrics retain ordinary first-index argmax. Merging changed 35 of 3200 validation choices; 5 changes began at exact ties. Detailed training provenance is in training-manifest.json.

Evaluation

Check Equal-family score
Frozen base validation 0.4200
Merged BF16 validation (training/export check) 0.8749
Single-row FP32 native validation 0.8760
F16 GGUF validation 0.8754
Single-row FP32 native sealed test 0.8103

The aggregate averages seven family scores; the families use the metrics listed below. These are the frozen internal splits, not independent external benchmark claims. The F16 GGUF model was validated on all 3,200 validation rows; the sealed-test score above uses the exact single-row FP32 native serving policy.

Sealed-test family Metric Score
classification macro_f1 0.6306
cyber accuracy 0.8203
evidence_mnli macro_f1 0.7851
evidence_wanli macro_f1 0.6727
menu accuracy 0.8301
procedural accuracy 0.9375
uncertainty accuracy 0.9961

F16 GGUF agrees with native choices on 99.84% of validation rows. Mean/max total variation in option probabilities: 0.00202 / 0.14981. Maximum absolute option-logit difference: 0.83361. This is approximate desktop inference, not exact numerical equivalence. CPU/CUDA parity was checked on 43 fixed validation rows covering every family, validation gate and option count; all sampled choices agreed. This is a sampled check. Peak CPU process RSS in that check was 1.893 GiB; it is not a minimum-memory guarantee and excludes GPU VRAM. First-call startup can be substantially slower than subsequent requests. Receipts and fixed acceptance thresholds are in evidence/.

The FP32/F16 serving policy was chosen after the initial 0.6B Q8_0 candidate failed numerical parity and BF16 native inference showed batch sensitivity. That failed Q8_0 candidate is not distributed. The selected checkpoint and stored BF16 tensors were unchanged. Full serving validation must retain both the original selected-adapter and merged-BF16 quality before fresh-load verification and serving-policy test evaluation. The amendment and diagnostic hashes are recorded in evidence/precision-policy-amendment.json.

Limitations and provenance

Use only declared option scores; they are not calibrated truth probabilities. Performance can degrade on new domains, altered prompt formats, long evidence, or adversarial inputs. Only English string evidence, 2–16 options and 2,048-token prompts are covered by this release. No claims are made about tool safety or suitability for consequential automated decisions.

The model inherits the upstream Apache-2.0 license; bundled runtime code is MIT (see RUNTIME-LICENSE). Upstream documentation is retained in UPSTREAM-MODEL-CARD.md. The conversion uses llama.cpp revision 59778f0196a82db32580bb649d5d839355d6d7bf, with all 97 relevant Python source files verified against pinned Git objects and hashed in evidence/converter-source.json. SHA256SUMS binds every release file.

Downloads last month
26
Safetensors
Model size
0.6B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for Worthify/Decision-1-0.6B

Finetuned
Qwen/Qwen3-0.6B
Quantized
(490)
this model