v6.2.0 · released 2026-09-26 · focused continuation, selected step 250.
Jet returns typed decisions and probabilities from supplied options without generating free-form answers.
This is the full merged BF16 Qwen3.5-4B text model, not an adapter. No separate
base-model download is required. It replaces v6.1 in michaljach/jet; previous
releases remain accessible by their version tags. The product name remains Jet.
Linux + NVIDIA CUDA, Python 3.12. Verified with PyTorch 2.11.0+cu128, Transformers 5.17.0 and flash-linear-attention 0.5.2.
hf download michaljach/jet --revision v6.2.0 --local-dir jet
cd jet
python -m pip install -r requirements.txt
python jet.py <<'JSON'
{"state":"I was charged twice this month.","questions":{"topic":{"type":"choice","instructions":"What is the primary issue?","criteria":{"billing":"billing or payment problem","bug":"the product is broken"}}}}
JSON
from jet import Jet
model = Jet()
result = model.decide("The item arrived broken.", {
"damaged": {"type": "noul", "instructions": "Is the item damaged?"}
})
| Type | Input | Output |
|---|---|---|
choice | 2–255 named options | Selected key and probabilities |
score | 2–10 ordered levels | Expected zero-based score, selected level, probabilities |
noul | Yes/no question | Probability of yes |
Use the included native prompt and restricted label-token readout. A generic text-generation pipeline does not implement this API. Questions are processed separately. The runtime now accepts complete prompts up to 16,384 tokens; inputs and options are never silently truncated. The longest reconstructed API-Bank input (11,495 tokens) passed the standalone runtime check, but full API-Bank accuracy has not been measured for this release. Context feasibility does not establish long-context quality across tasks.
FLA is enabled; convolution uses the PyTorch fallback. confidence is normalized
inverse entropy, not a calibrated correctness probability. Temperatures are
inherited from v6.1 and were not refitted or established as calibrated for v6.2.
The parent is full merged Jet v6.1 at
f446b82727be57da348bb46eccf211414294ab3e. Parent shard hashes and the exact
adapter hash are in merge-provenance.json. A fresh rank/alpha-16 correction LoRA
was trained on that parent; the model was not reset to the original Qwen weights.
The results below were re-measured on the full merged model, after BF16 rounding. Focus holdouts exclude the previous local input corpus listed in the data audit; retention is reused. Small sample sizes mean these modest differences do not establish statistical significance or broad benchmark improvement.
| Holdout / metric | Cases | Jet v6.1 | Jet v6.2 merged |
|---|---|---|---|
| Banking / accuracy | 154 | 74.68% | 74.68% |
| Entity sentiment / macro-F1 | 180 | 71.16% | 71.21% |
| Sarcasm / positive-class F1 | 80 | 46.81% | 50.00% |
| Retention / accuracy | 500 | 93.40% | 93.40% |
Financial sentiment is a SEntFiN transfer holdout, not the FinEntity benchmark. Banking and sarcasm rows above are local source holdouts, not their public test benchmark scores. Exact content/group exclusions do not establish semantic or pretraining decontamination. Benchmarks informed training focus.
Official overall Decision Index: not measured. The 25-benchmark comparison linked on the website belongs to the earlier v6.1 candidate, and must not be attributed to this release. No subset average is substituted for an overall score.
FP32 B@A corrections were added to the already merged parent and rounded to BF16. All 426 tensors loaded without missing, unexpected or mismatched keys; 248 modules received updates. Nine shards contain 8,411,510,272 parameter bytes.
On 157 fixed verification cases, 0 selected answers changed between the adapter and merged model. The largest probability difference was 4.76 percentage points.
These checks include choice, score, noul and a long API-Bank input. The full 914-case holdout passed the predeclared release guards. See evaluation.json, merge-validation.json and release-manifest.json. Merge equivalence is approximate.
Source and experiment records · Training protocol · Release validation · Historical benchmark charts
Apache-2.0 model/runtime; source datasets retain their own licenses. Dataset rows are not redistributed here. Quality outside the evaluated domains is not established.
CPU inference is available through
dohnuts.cpp, a native C++ port on
llama.cpp. It runs the model on CPU,
reads the answer in one forward pass, and serves the same POST /v1/systemone
wire format as the upstream release. No GPU or Python runtime is needed. Each question is one forward pass; the next-token logits are restricted to the option labels (A, B, ... for choice, the level digits for score, no/yes for noul) and read after the chat decision prompt. jet fits one temperature per question type.
| File | Quantization | Size |
|---|---|---|
jet-4b-Q8_0.gguf | Q8_0 | 4.5 GB |
jet.json | profile config and per-type temperatures | 219 B |
jet.json is required alongside the GGUF. It carries the three calibrated temperatures (t_choice, t_score, t_noul) from the release's calibration.json.
git clone https://github.com/DreamBlooms/dohnuts.cpp
cd dohnuts.cpp
git submodule update --init --depth 1
cmake -B build -DCMAKE_BUILD_TYPE=Release -DGGML_NATIVE=ON
cmake --build build -j --target dohnuts-cli
build/dohnuts-cli --server --port 8080 \
--model jet-4b-Q8_0.gguf --metadata jet.json
Ask one state several questions:
curl http://127.0.0.1:8080/v1/systemone -H 'Content-Type: application/json' \
-d '{"state":"Refund policy: full refund within 30 days of purchase; 50% until day 60; none after. Order 1182 was bought on 3 March and returned on 20 April.",
"questions":{"refund":{"type":"choice","instructions":"What refund does order 1182 get?","criteria":{"full":"Full refund","half":"50% refund","none":"No refund"}}}}'
The answer keeps the core fields (type, choice, probabilities, noul,
score, confidence) and adds this model's own statistics under native. jet adds certainty (with legend for score).
Rebuild the file from the upstream weights with
scripts/build_jet_gguf.sh. No retraining is involved.
v6.2.0 · released 2026-09-26 · focused continuation, selected step 250.
Jet returns typed decisions and probabilities from supplied options without generating free-form answers.
This is the full merged BF16 Qwen3.5-4B text model, not an adapter. No separate
base-model download is required. It replaces v6.1 in michaljach/jet; previous
releases remain accessible by their version tags. The product name remains Jet.
Linux + NVIDIA CUDA, Python 3.12. Verified with PyTorch 2.11.0+cu128, Transformers 5.17.0 and flash-linear-attention 0.5.2.
hf download michaljach/jet --revision v6.2.0 --local-dir jet
cd jet
python -m pip install -r requirements.txt
python jet.py <<'JSON'
{"state":"I was charged twice this month.","questions":{"topic":{"type":"choice","instructions":"What is the primary issue?","criteria":{"billing":"billing or payment problem","bug":"the product is broken"}}}}
JSON
from jet import Jet
model = Jet()
result = model.decide("The item arrived broken.", {
"damaged": {"type": "noul", "instructions": "Is the item damaged?"}
})
| Type | Input | Output |
|---|---|---|
choice | 2–255 named options | Selected key and probabilities |
score | 2–10 ordered levels | Expected zero-based score, selected level, probabilities |
noul | Yes/no question | Probability of yes |
Use the included native prompt and restricted label-token readout. A generic text-generation pipeline does not implement this API. Questions are processed separately. The runtime now accepts complete prompts up to 16,384 tokens; inputs and options are never silently truncated. The longest reconstructed API-Bank input (11,495 tokens) passed the standalone runtime check, but full API-Bank accuracy has not been measured for this release. Context feasibility does not establish long-context quality across tasks.
FLA is enabled; convolution uses the PyTorch fallback. confidence is normalized
inverse entropy, not a calibrated correctness probability. Temperatures are
inherited from v6.1 and were not refitted or established as calibrated for v6.2.
The parent is full merged Jet v6.1 at
f446b82727be57da348bb46eccf211414294ab3e. Parent shard hashes and the exact
adapter hash are in merge-provenance.json. A fresh rank/alpha-16 correction LoRA
was trained on that parent; the model was not reset to the original Qwen weights.
The results below were re-measured on the full merged model, after BF16 rounding. Focus holdouts exclude the previous local input corpus listed in the data audit; retention is reused. Small sample sizes mean these modest differences do not establish statistical significance or broad benchmark improvement.
| Holdout / metric | Cases | Jet v6.1 | Jet v6.2 merged |
|---|---|---|---|
| Banking / accuracy | 154 | 74.68% | 74.68% |
| Entity sentiment / macro-F1 | 180 | 71.16% | 71.21% |
| Sarcasm / positive-class F1 | 80 | 46.81% | 50.00% |
| Retention / accuracy | 500 | 93.40% | 93.40% |
Financial sentiment is a SEntFiN transfer holdout, not the FinEntity benchmark. Banking and sarcasm rows above are local source holdouts, not their public test benchmark scores. Exact content/group exclusions do not establish semantic or pretraining decontamination. Benchmarks informed training focus.
Official overall Decision Index: not measured. The 25-benchmark comparison linked on the website belongs to the earlier v6.1 candidate, and must not be attributed to this release. No subset average is substituted for an overall score.
FP32 B@A corrections were added to the already merged parent and rounded to BF16. All 426 tensors loaded without missing, unexpected or mismatched keys; 248 modules received updates. Nine shards contain 8,411,510,272 parameter bytes.
On 157 fixed verification cases, 0 selected answers changed between the adapter and merged model. The largest probability difference was 4.76 percentage points.
These checks include choice, score, noul and a long API-Bank input. The full 914-case holdout passed the predeclared release guards. See evaluation.json, merge-validation.json and release-manifest.json. Merge equivalence is approximate.
Source and experiment records · Training protocol · Release validation · Historical benchmark charts
Apache-2.0 model/runtime; source datasets retain their own licenses. Dataset rows are not redistributed here. Quality outside the evaluated domains is not established.
CPU inference is available through
dohnuts.cpp, a native C++ port on
llama.cpp. It runs the model on CPU,
reads the answer in one forward pass, and serves the same POST /v1/systemone
wire format as the upstream release. No GPU or Python runtime is needed. Each question is one forward pass; the next-token logits are restricted to the option labels (A, B, ... for choice, the level digits for score, no/yes for noul) and read after the chat decision prompt. jet fits one temperature per question type.
| File | Quantization | Size |
|---|---|---|
jet-4b-Q8_0.gguf | Q8_0 | 4.5 GB |
jet.json | profile config and per-type temperatures | 219 B |
jet.json is required alongside the GGUF. It carries the three calibrated temperatures (t_choice, t_score, t_noul) from the release's calibration.json.
git clone https://github.com/DreamBlooms/dohnuts.cpp
cd dohnuts.cpp
git submodule update --init --depth 1
cmake -B build -DCMAKE_BUILD_TYPE=Release -DGGML_NATIVE=ON
cmake --build build -j --target dohnuts-cli
build/dohnuts-cli --server --port 8080 \
--model jet-4b-Q8_0.gguf --metadata jet.json
Ask one state several questions:
curl http://127.0.0.1:8080/v1/systemone -H 'Content-Type: application/json' \
-d '{"state":"Refund policy: full refund within 30 days of purchase; 50% until day 60; none after. Order 1182 was bought on 3 March and returned on 20 April.",
"questions":{"refund":{"type":"choice","instructions":"What refund does order 1182 get?","criteria":{"full":"Full refund","half":"50% refund","none":"No refund"}}}}'
The answer keeps the core fields (type, choice, probabilities, noul,
score, confidence) and adds this model's own statistics under native. jet adds certainty (with legend for score).
Rebuild the file from the upstream weights with
scripts/build_jet_gguf.sh. No retraining is involved.