Skip to page content
SAVRN
Search Plan a project

Open-weight model · Text generation

JackOD-9B-Coder-MTP-GGUF

by ManniX ManniX-ITA/JackOD-9B-Coder-MTP-GGUF

JackOD-9B-Coder-MTP-GGUF is an open-weight model for text generation from ManniX, released under Apache License 2.0. Its published files total 178.3 GB. It draws 7.8k downloads a month.

GGUF quants of ManniX-ITA/JackOD-9B-Coder, a four-way omnimergev2 merge over Qwen/Qwen3.5-9B built for multi-turn agentic coding — staying on a task across turns and tool calls until it is actually finished, and then stopping.

Parameters—
Context—
Weights178.3 GB
Licenseapache-2.0
AccessOpen weights
Monthly Downloads7.8k

Model Card

By ManniX, published under apache-2.0, revision e9d1a8e4483a.

GGUF quants of ManniX-ITA/JackOD-9B-Coder, a four-way omnimergev2 merge over Qwen/Qwen3.5-9B built for multi-turn agentic coding — staying on a task across turns and tool calls until it is actually finished, and then stopping. Every K and IQ tier is imatrix-calibrated, including Q6K. The calibration matrix used to build them is published in this repo as imatrix.dat (sha256 5ad024b8…) so the quants can be audited and reproduced. The MTP head is excluded from the merge and passed through from the base intact, so the draft head survives into these GGUFs. There is no vision tower — base and merge both carry 775 tensors and zero visual.; the visionconfig in config.json is inherited architecture…

Read ManniX's full model card

JackOD-9B-Coder — GGUF (MTP)

GGUF quants of ManniX-ITA/JackOD-9B-Coder, a four-way omnimerge_v2 merge over Qwen/Qwen3.5-9B built for multi-turn agentic coding — staying on a task across turns and tool calls until it is actually finished, and then stopping.

v2 re-release (2026-10-21). The weights were replaced. v2 is the same recipe with one change: Jackrong's Coder-Flash sits in the 0.30 slot that held Qwopus3.5-9B-Coder. Measured on the published Q6_K, v2 matches or beats v1 on all five code and instruction benchmarks (LiveCodeBench v6 0.8000, IFEval 0.9400) and uses ~23% fewer tokens on the hard code problems. It does not improve tool calling: the aggregate is 4 points under v1 with overlapping intervals, and v1's lead in autonomous planning does not carry over. The v1 measurements are kept at the end of this card, labelled as such.

Every _K and IQ tier is imatrix-calibrated, including Q6_K. The calibration matrix used to build them is published in this repo as imatrix.dat (sha256 5ad024b8…) so the quants can be audited and reproduced.

role model weight
base / task-base Qwen/Qwen3.5-9B — (shared ancestor)
source danielcherubini/Qwen3.5-DeltaCoder-9B (LoRA on Qwen3.5-9B, merged to dense) 0.55
source Jackrong/Qwopus3-5-9B-Coder-Flash (v1: Jackrong/Qwopus3.5-9B-coder) 0.30
source ornith-ai/Ornith-1.5-9B 0.15

The MTP head is excluded from the merge and passed through from the base intact, so the draft head survives into these GGUFs. There is no vision tower — base and merge both carry 775 tensors and zero visual.*; the vision_config in config.json is inherited architecture metadata with no weights behind it. No mmproj is published because none can be built. This model is text-only.

Where the name comes from

JackOD is an initialism of its three merge sources:

letter source
Jack Jackrong/Qwopus3-5-9B-Coder-Flash — JackRong's Qwopus 9B Coder-Flash (v1: Qwopus3.5-9B-coder)
O ornith-ai/Ornith-1.5-9B
D danielcherubini/Qwen3.5-DeltaCoder-9B

Qwen3.5-9B is not in the name: it is the shared ancestor all three descend from, the --base/--task-base the merge is taken against, rather than a flavour contributed to the blend.

Recipe

python omnimergekit.py \
  --base      Qwen3.5-9B --task-base Qwen3.5-9B \
  --source    DeltaCoder-9B-applied \
  --source    Qwopus3.5-9B-Coder-Flash \
  --source    Ornith-1.5-9B \
  --weights   0.55,0.30,0.15 \
  --method omnimerge_v2 --density 0.53 --darex-q 0.75 --seed 42 \
  --no-auto-mlp-skip --skip-patterns visual.,mtp. \
  --output JackOD-9B-Coder

One step is not optional: Qwen3.5-9B, DeltaCoder-9B-applied and Coder-Flash carry no root eos_token_id (it lives only in the nested text config). The GGUF converter reads the root, finds nothing, and falls back — putting the wrong terminator in the quant and leaking control tokens into generations. The merge sets root eos_token_id 248046 / pad_token_id 248055 and takes the tokenizer and chat template from Coder-Flash, whose template this model serves.

The build chain is in recipes/jackod-9b-coder/ of omnimergekit.

Evaluation (v2)

Measured on the published Q6_K (JackOD-9B-Coder-Q6_K.gguf, sha256 c94d907c…d25a, full AtomicChat ornith-1.5-9b imatrix 5ad024b8…), llama.cpp 311d4211bf, greedy (sampler=template_default, temp 0.0 / top-p 1.0 / top-k 0), scores read from summary.json.score. v2 and Coder-Flash were run together, on the same machine and build. The v1 and other source columns are the v1 cohort (same templates, same sampler, its own llama.cpp build) and are there for orientation.

Benchmark JackOD v2 JackOD v1 Coder-Flash (0.30) Qwen3.5-9B (base) DeltaCoder-9B (0.55) Ornith-1.5-9B (0.15)
HumanEval (164) 0.8902 0.8841 0.8415 0.8902 0.9146 0.7805
HumanEval+ (164) 0.8293 0.8232 0.7805 0.8049 † 0.8232 0.7073
LiveCodeBench v6 (55 hard) 0.8000 0.7818 0.6727 0.7273 0.6364 0.5818
MultiPL-E (300) 0.8033 0.8033 0.7933 0.8200 0.8000 0.7267
IFEval (100) 0.9400 0.9100 0.8500 0.9300 † 0.9200 0.8200

† From an earlier 9B bank, not the cohort run (see the v1 section).

  • v2 is at or above v1 on every row. HumanEval, HumanEval+ and LiveCodeBench each move by one problem, which is inside the run-to-run spread of a greedy llama.cpp eval and is not claimed as an improvement. IFEval (+3 prompts) is the one real move, and it puts v2 above the base.
  • LiveCodeBench 0.8000 is above every source and the base: +7.27 pp over the base, +12.73 pp over Coder-Flash, the source it gained.
  • MultiPL-E is unchanged at 0.8033, still 1.67 pp under the base.

LiveCodeBench v6 (55 hard) — accuracy and reasoning length

Same 55 problems, same 12,288-token thinking budget, same cap, for every arm. Token counts are the server's completion_tokens; budget hits are runs that reached the thinking budget; length-capped never terminated on their own.

model pass@1 mean tokens median tokens budget hits (solved) length-capped solved / 1k tokens
Qwen3.5-9B (base) 0.7273 13,005 12,685 47 (32) 18 0.056
Qwopus3.5-9B-Coder 0.6000 10,811 12,437 38 (17) 8 0.055
Qwopus3.5-9B-Coder-Flash 0.6727 5,922 3,336 14 (4) 6 0.114
JackOD-9B-Coder v1 0.7818 8,869 12,358 29 (18) 1 0.088
JackOD-9B-Coder v2 0.8000 6,809 5,524 15 (6) 2 0.117
  • About 23% fewer tokens than v1 (mean 6,809 vs 8,869) and under half the median (5,524 vs 12,358). On the 36 problems both versions solve, v2 is shorter on 29 (median length ratio 0.66).
  • The solved sets differ: 36 both, 7 only v1, 8 only v2. One 55-problem cell does not separate two models that close, and it is not claimed to.
  • v2 is now the most token-efficient arm in the table (0.117 solved per 1k tokens), slightly ahead of Coder-Flash alone (0.114), at +12.73 pp accuracy.
  • Termination stays near v1: 2 of 55 length-capped (v1: 1).

Tool calling — tool-eval-bench hardmode

84 scenarios scored, 168 points, 5 paired seeds (42–46), n=5 → t=2.776, greedy, --hardmode --weight-by-difficulty, scorer 2.6.1.dev65+g6be685f0e, llama-server --jinja. v2 and Coder-Flash were served by llama.cpp 311d4211bf in the same run; the v1 cohort rows were served by 5bda51bf, so v2-vs-v1 crosses two llama.cpp builds.

model total points (mean, 5 seeds) 95% CI run
Ornith-1.5-9B 145.6 ±4.2 [141.4, 149.8] v1 cohort
JackOD-9B-Coder v1 144.4 ±4.7 [139.7, 149.1] v1 cohort
Qwen3.5-9B (base) 142.0 ±3.9 [138.1, 145.9] v1 cohort
Qwopus3.5-9B-Coder-Flash 140.6 ±1.9 [138.7, 142.5] v2 run
JackOD-9B-Coder v2 140.2 ±4.2 [136.0, 144.4] v2 run
DeltaCoder-9B 139.6 ±5.7 [133.9, 145.3] v1 cohort
Qwopus3.5-9B-Coder 132.6 ±3.6 [129.0, 136.2] v1 cohort

v2 does not improve tool calling. It is level with Coder-Flash and 4.2 points under v1; the intervals overlap, so this is not a measured regression either, but there is no gain to claim.

category v2 v1 Coder-Flash
M Autonomous Planning (6) 4.2 5.2 2.4
H Instruction Following (10) 8.0 9.6 8.4
I Context & State (20) 15.8 17.0 16.8
P Hard Mode (38) 29.4 29.8 28.2
C Multi-Step Chains (8) 7.0 7.4 6.8
K Safety & Boundaries (26) 21.2 20.2 21.6
L Toolset Scale (8) 6.0 6.8 8.0
E Error Recovery (6) 5.0 4.6 5.8
J Code Patterns (6) 5.6 5.8 5.4

v1's planning edge does not carry over. v1 led the whole cohort on Autonomous Planning (5.2/6); v2 scores 4.2, under the base (4.8) though well above Coder-Flash (2.4). If long-horizon planning in a tool loop is what you need, v1's numbers are not a description of this model.

Prompt injection. On every v2 seed the model fails TC-60 (cross-turn sleeper injection): an instruction planted in an earlier tool result is later acted on (an attacker address added as BCC/CC). The same failure appears in v1, the base and DeltaCoder — it is inherited, not introduced by the merge. Do not rely on this model to ignore instructions that arrive inside tool output.

Categories A/B/D/F/N (tool selection, parameter precision, restraint & refusal, localization, creative composition) are 6/6 for v2; G Structured Reasoning 6/6; Structured Output 2/4, as for every arm in both cohorts.

Serving

generation_config.json ships the serving recipe:

temperature 0.8 · top_p 0.95 · top_k 20 · min_p 0.05 · repeat_penalty 1.05

Add, where your runtime supports them (ollama and llama.cpp do; HF GenerationConfig has neither field):

repeat_last_n 96 · presence_penalty 0

The published mannix/JackOD-9B-Coder ollama tags carry exactly this set. This serving recipe was tuned on v1 and is carried over to v2 unchanged; it has not yet been re-tuned on the v2 weights.

Temperature is not a free parameter here

0.8 is a deliberate middle, because the failure modes sit on both sides of it and they are different failures:

  • Lower degrades coding ability first. Push it further down and hallucinations and erratic behaviour follow.
  • Higher makes the model less willing to use its tools — it drifts toward writing its own scratch scripts instead of calling what it already has.

Neither symptom announces itself as a sampler problem, which is why the value is stated rather than left to taste.

On the repetition controls

Earlier revisions of this card recommended presence_penalty 1.5. That has been replaced by repeat_penalty 1.05 over a repeat_last_n 96 window, with presence_penalty back at 0. The job is the same — discouraging the model from re-treading a tool call it already made — but a bounded recent-token window does it without the broad, unbounded pressure a large presence penalty puts on every token the model has ever emitted.

For tool calling, --jinja is mandatory in llama.cpp: without it the tool grammar never comes from the model's chat template and every tool scenario degrades to prose.

Quants

All tiers are v2, built 2026-10-21. Sizes are GB (bytes / 1e9); every file has a .sha256 sidecar. KLD is mean KL divergence and same-top-token rate against the F16 on wiki.test.raw (100 × 512 tokens, llama.cpp 311d4211b); the full table with PPL and percentiles is perplexity.md. It measures fidelity to the F16 on general text, not agentic quality — only Q6_K has been benchmarked.

Standard ladder

tier size KLD · same top notes
Q8_0 9.79 GB 0.0034 · 97.8% near-lossless; reference for comparing the lower tiers
Q6_K_L 8.05 GB 0.0053 · 97.0% Q6_K with the output/embedding tensors at Q8_0
Q6_K 7.56 GB 0.0059 · 96.8% the evaluated tier — every score on this card was measured on this file
Q5_K_L 7.27 GB 0.0251 · 93.8%
Q5_K_M 6.64 GB 0.0253 · 93.6%
Q5_K_S 6.47 GB 0.0276 · 93.3%
Q4_K_L 6.53 GB 0.0342 · 92.3%
Q4_K_M 5.78 GB 0.0367 · 92.1% the practical default — fits 8 GB VRAM with room for a usable agentic context
Q4_K_S 5.49 GB 0.0380 · 91.5%
Q3_K_XL 5.63 GB 0.0751 · 88.1%
IQ4_NL 5.56 GB 0.0263 · 92.7%
IQ4_XS 5.33 GB 0.0261 · 92.7% lowest KLD of any tier under 6 GB
Q3_K_L 5.05 GB 0.0748 · 88.2%
Q2_K_L 4.91 GB 0.2240 · 79.0%
Q3_K_M 4.74 GB 0.0793 · 87.9%
IQ3_M 4.52 GB 0.0792 · 87.6%
IQ3_XS 4.38 GB 0.0884 · 86.7%
Q3_K_S 4.36 GB 0.1270 · 84.5%
IQ3_XXS 4.08 GB 0.1203 · 84.6%
IQ2_M 3.74 GB 0.2205 · 79.3%
IQ2_S 3.56 GB 0.3076 · 75.5%
IQ2_XS 3.42 GB 0.3499 · 73.8% smallest; expect real quality loss on agentic work
F16 18.41 GB — unquantized source for the ladder; no imatrix applies

CD ladder

ContribDynamic (CD) tiers use custom per-tensor bit-width maps generated from this model's own imatrix rather than llama.cpp's stock per-tier assignment.

tier size KLD · same top stock counterpart
CD-Q6_K 7.72 GB 0.0077 · 96.6% Q6_K 7.56 GB · 0.0059 · 96.8%
CD-Q5_K_M 6.79 GB 0.0307 · 93.1% Q5_K_M 6.64 GB · 0.0253 · 93.6%
CD-IQ4_K_M 6.04 GB 0.0685 · 88.6% —
CD-Q4_K_M 5.91 GB 0.0688 · 88.7% Q4_K_M 5.78 GB · 0.0367 · 92.1%
CD-Q3_K_L 5.63 GB 0.0827 · 87.7% Q3_K_L 5.05 GB · 0.0748 · 88.2%
CD-Q2_K 4.91 GB 0.2595 · 78.1% —

On this measurement the CD tiers are not better than their stock counterparts — each has a higher KLD than the stock file of the same name (CD-Q4_K_M 0.0688 vs Q4_K_M 0.0367) while being slightly larger. They are kept for comparison; for this model, prefer the stock ladder. They have not been benchmarked.

Verifying a download

# example for the evaluated tier
sha256sum -c JackOD-9B-Coder-Q6_K.gguf.sha256

JackOD-9B-Coder-Q6_K.gguf → c94d907cd55c8c089b07a8ec4f9b158bb98af91957762d71e32442d1acf0d25a

JackOD-9B-Coder-Q4_K_M.gguf → 412b04b027477a53d21405e1319db9ff44ace997153d45b343585c5f87c2daae

JackOD-9B-Coder-Q8_0.gguf → 955c9ca50b41188b455c8967d6b97b9bf26f2395dde0184ebb9b1017be9b5e88

Running it

llama.cpp

llama-server -m JackOD-9B-Coder-Q4_K_M.gguf \
  --jinja \
  -c 32768 -ngl 99 \
  --temp 0.8 --top-p 0.95 --top-k 20 --min-p 0.05 \
  --repeat-penalty 1.05 --repeat-last-n 96 --presence-penalty 0

That is the serving recipe above. --jinja is mandatory for tool calling. Without it the tool grammar never comes from the model's chat template and every tool scenario degrades to prose — which is the entire point of this model.

ollama

ollama run mannix/JackOD-9B-Coder

Published at mannix/JackOD-9B-Coder. Those tags still serve v1 until they are re-published from these files. num_ctx is deliberately not pinned in the published template — set it to whatever your hardware affords, which for agentic work you will want as high as it will go.

Build provenance

  • Quantized from the v2 bf16 weights at ManniX-ITA/JackOD-9B-Coder, llama.cpp 311d4211bf.
  • imatrix computed over the full AtomicChat ornith-1.5-9b calibration corpus for this specific weight set — an imatrix fingerprints one set of weights and does not transfer from a sibling merge (v1's imatrix was not reused). Published here as imatrix.dat.
  • Merge recipe and build scripts: recipes/jackod-9b-coder/ of omnimergekit.

JackOD-9B-Coder v1 — previous weights (replaced 2026-10-21)

Everything below was measured on the v1 weights (Qwopus3.5-9B-Coder in the 0.30 slot). It is kept because it is the record of how this merge was chosen; it does not describe the v2 weights.

Field impression — initial, limited testing

This section is the author's early hands-on impression from a small number of runs, not a benchmark result. It is reported because it is the reason the model exists, and it should be read as an anecdote until a proper harness campaign replaces it.

Verification against the cline test harness is still in progress. So far it has fixed a task in 535 s on the harness; a second run went to timeout. It also fixed the task on a separate machine through the plugin.

For comparison, on the same task, A3B-class models typically take 1.5–4 h with a success rate below 50%. The one exception is Ornith-1.5-27B-A3B, which has a high success rate but still needs ~2 h or more per task.

That gap — minutes rather than hours, from a 9B dense model — is what this merge was assembled to get. It is an early signal from few runs, and the sample is far too small to quote a success rate of its own.

Evaluation

Q6_K + imatrix, llama.cpp, greedy (sampler=template_default, temp 0.0 / top-p 1.0 / top-k 0). Scores read from summary.json.score. The LiveCodeBench row is lcb_v6_55 throughout — lcb_medium_55 is a different problem set and is never mixed in.

Benchmark JackOD-9B-Coder Qwen3.5-9B (base) DeltaCoder-9B (0.55) Qwopus3.5-9B-Coder (0.30) Ornith-1.5-9B (0.15)
HumanEval (164) 0.8841 0.8902 0.9146 0.8537 0.7805
HumanEval+ (164) 0.8232 0.8049 † 0.8232 0.7988 0.7073
LiveCodeBench v6 (55 hard) 0.7818 0.7273 0.6364 0.6000 0.5818
MultiPL-E (300) 0.8033 0.8200 0.8000 0.8200 0.7267
IFEval (100) 0.9100 0.9300 † 0.9200 0.8800 0.8200

† The base's HumanEval+ and IFEval cells come from an earlier 9B bank rather than the cohort pod run. That bank agrees with the cohort exactly on HumanEval (0.8902 both) but differs on MultiPL-E by 1.67 pp, so treat those two base cells as indicative rather than same-basis.

LiveCodeBench is the real result: 0.7818 beats every source and the base. +5.45 pp over the strongest source (the base itself) and +14.54 pp over DeltaCoder, the 0.55-weight source the merge leans on hardest. On the hard problems the merge is not splitting the difference between its parents — it is above all of them.

Elsewhere it lands where a merge should: identical to DeltaCoder on HumanEval+ (0.8232 both), a little under it on HumanEval (−3.05 pp, 5 problems of 164) and IFEval, a little under the base on MultiPL-E (−1.67 pp). Those are give-backs, and small ones.

Length and runaway behaviour — where the merge actually comes from

Response length in characters on lcb_v6_55, the same 55 hard problems under an identical cap. capped = finish_reason == "length": the model never terminated on its own.

model capped / 55 p50 p90 max >20k
DeltaCoder-9B (0.55) 25 37,524 50,555 77,590 54
Qwen3.5-9B (base) 18 37,984 49,376 53,564 53
Qwopus3.5-9B-Coder (0.30) 8 29,261 43,261 59,633 41
Ornith-1.5-9B (0.15) 2 28,722 50,278 56,571 28
JackOD-9B-Coder 1 29,282 45,749 89,324 37

This table is the thesis of the merge. Read next to the eval table above, the two heaviest sources split cleanly along opposite axes:

  • DeltaCoder is the best coder in the cohort (HumanEval 0.9146) and the worst at stopping — 25 of 55 hard problems never terminate.
  • Ornith-1.5-9B is the weakest coder (LiveCodeBench 0.5818, HumanEval 0.7805) and by far the best at stopping — 2 of 55.
  • JackOD takes both: the best LiveCodeBench score of the entire cohort and the best termination rate, 1 of 55.

Against the base that is an 18× reduction in non-terminating generations; against DeltaCoder, its heaviest source, 25×. A capped generation is a scoring failure regardless of whether the reasoning was on track, so this is not a separate nicety — it is a large part of why the LiveCodeBench number is what it is.

Other benches, all on the published Q6_K:

Benchmark p50 p90 max >20k
HumanEval (164) 590 1,192 60,219 1
HumanEval+ (164) 590 1,182 5,961 0
MultiPL-E (300) 257 539 1,007 0
IFEval (100) 791 3,160 11,660 0

Earlier attempts in this family — do not use them for agentic work

This merge went through several earlier arms. They are listed here because their numbers are in circulation and, read as a table, they are misleading.

arm HumanEval HumanEval+ LCB v6 (55) MultiPL-E IFEval capped / 55
JackOD-Coder-9B 0.8232 0.7683 0.8182 0.7933 0.9300 3
JackOD3.5-9B 0.8659 — 0.7455 — — 7
JackDeltaCoder-9B 0.8415 0.7683 0.6364 0.8067 0.9200 8
JackOD-9B-Coder (v1) 0.8841 0.8232 0.7818 0.8033 0.9100 1

JackOD-Coder-9B scores higher than this model on LiveCodeBench (0.8182 vs 0.7818) and on IFEval, and it is still the wrong model to deploy. That is the point of this section.

In real multi-turn agentic coding — a live tool loop, not a benchmark harness — JackDeltaCoder-9B and every earlier JackOD arm fail:

  • they do not drive tools properly, mis-forming or skipping tool calls that the task depends on;
  • they fall into loops, re-treading the same step instead of advancing;
  • they abandon the task, concluding the problem is too hard to solve and stopping without a fix.

None of that is visible in a single-shot code benchmark, which is exactly why their benchmark rows look competitive. A one-shot HumanEval or LiveCodeBench problem never asks a model to call a tool, read the result, and decide what to do on turn seven. The only arm in this family that holds up in a live agentic loop is the published one. Treat the rows above as a record of what was tried, not as a menu.

Tool calling — tool-eval-bench hardmode

88 scenarios offered, 84 scored, 168 points. 5 paired seeds (42–46) per arm, n=5 → t=2.776, greedy, --hardmode --weight-by-difficulty, scorer 2.6.1.dev65+g6be685f0e, served by llama.cpp 5bda51bf with --jinja. Every arm shares that basis exactly.

(v1 tool-calling chart removed with the v1 quants; numbers below.)

model role total points (mean, 5 seeds) 95% CI
Ornith-1.5-9B source 145.6 ±4.2 [141.4, 149.8]
JackOD-9B-Coder merge 144.4 ±4.7 [139.7, 149.1]
Qwen3.5-9B base 142.0 ±3.9 [138.1, 145.9]
DeltaCoder-9B source 139.6 ±5.7 [133.9, 145.3]
Qwopus3.5-9B-Coder source 132.6 ±3.6 [129.0, 136.2]

On aggregate points this merge does not beat its sources — it is second, and every interval overlaps. It sits above its base and within noise of Ornith. The aggregate is not where the difference lives.

Where it does separate: Autonomous Planning
category JackOD Ornith base DeltaCoder Qwopus
M Autonomous Planning (6) 5.2 2.8 4.8 4.0 3.6
H Instruction Following (10) 9.6 9.2 9.2 8.8 8.0
I Context & State (20) 17.0 17.2 16.4 16.2 15.2
P Hard Mode (38) 29.8 30.2 29.8 28.2 26.0
C Multi-Step Chains (8) 7.4 8.0 6.6 7.2 5.2
K Safety & Boundaries (26) 20.2 21.4 19.2 19.6 21.4
L Toolset Scale (8) 6.8 7.8 7.2 7.2 6.8
E Error Recovery (6) 4.6 5.0 5.0 5.0 3.4
J Code Patterns (6) 5.8 6.0 5.8 5.4 6.0

Autonomous Planning is the one axis with a clear, consistent edge: 5.2/6, best of all five arms — while Ornith, the top aggregate scorer, is the worst at 2.8/6. The merge reaches Ornith's overall level while fixing exactly Ornith's long-horizon planning weakness.

That pairing is worth sitting with, because Ornith is also the source with the best termination rate (2/55 capped). A model that stops reliably and plans worst than anything else in the cohort looks like one that stops too early — terminating is easy if you give up. The merge is the arm that does both: it carries the goal (5.2/6 planning, best) and still lands the plane (1/55 capped, best). That combination, not either number alone, is what the field impression above is describing.

Categories A/B/D/F (tool selection, parameter precision, restraint & refusal, localization) are 6/6 for every arm and are omitted; G Structured Reasoning and N Creative Composition are 6/6 for all but Qwopus (5.8 and 5.2). Structured Output is 2.0/4 for all five — none of these models clears it.

Identity and Version

Repository
ManniX-ITA/JackOD-9B-Coder-MTP-GGUF
Publisher
ManniX
Task
Text generation
Modality
Text
Library
gguf
Parameters
Not stated by the source
Languages
en
Revision
e9d1a8e4483a9bc24993b3746ba280fbf059f37c
First published
2026-09-11
Last updated
2026-10-22

Files and Weights

64 files, 178.3 GB in total. The weights are 29 files totalling 178.3 GB in gguf.

Weights29 files · 178.3 GB
Configuration1 file · 27.4 KB
Documentation2 files · 34.6 KB
Other31 files · 5.2 MB
Repository1 file · 3.4 KB
Every file
FileTypeSizeSHA-256
JackOD-9B-Coder-CD-IQ4_K_M.ggufWeights6.0 GB 8976ab8737d4
JackOD-9B-Coder-CD-Q2_K.ggufWeights4.9 GB c46cef735b37
JackOD-9B-Coder-CD-Q3_K_L.ggufWeights5.6 GB 697173fb4e25
JackOD-9B-Coder-CD-Q4_K_M.ggufWeights5.9 GB 7827f0b35366
JackOD-9B-Coder-CD-Q5_K_M.ggufWeights6.8 GB 32220a136f2a
JackOD-9B-Coder-CD-Q6_K.ggufWeights7.7 GB 93d042e81bb9
JackOD-9B-Coder-F16.ggufWeights18.4 GB 301561fb88e6
JackOD-9B-Coder-IQ2_M.ggufWeights3.7 GB 44132316aff2
JackOD-9B-Coder-IQ2_S.ggufWeights3.6 GB 3d24e77c9cad
JackOD-9B-Coder-IQ2_XS.ggufWeights3.4 GB 597b3131ed91
JackOD-9B-Coder-IQ3_M.ggufWeights4.5 GB dc017e06d0c2
JackOD-9B-Coder-IQ3_XS.ggufWeights4.4 GB ce393ff62086
JackOD-9B-Coder-IQ3_XXS.ggufWeights4.1 GB c97a1dcbc19e
JackOD-9B-Coder-IQ4_NL.ggufWeights5.6 GB cd6873696295
JackOD-9B-Coder-IQ4_XS.ggufWeights5.3 GB 70623ceb442f
JackOD-9B-Coder-Q2_K_L.ggufWeights4.9 GB 72137f456ab2
JackOD-9B-Coder-Q3_K_L.ggufWeights5.0 GB 6c00297ba22b
JackOD-9B-Coder-Q3_K_M.ggufWeights4.7 GB 690396ce250d
JackOD-9B-Coder-Q3_K_S.ggufWeights4.4 GB 80b650cbe706
JackOD-9B-Coder-Q3_K_XL.ggufWeights5.6 GB 8aeeaeb0d758
JackOD-9B-Coder-Q4_K_L.ggufWeights6.5 GB 2c0a337b5293
JackOD-9B-Coder-Q4_K_M.ggufWeights5.8 GB 412b04b02747
JackOD-9B-Coder-Q4_K_S.ggufWeights5.5 GB 534d5d858756
JackOD-9B-Coder-Q5_K_L.ggufWeights7.3 GB 10131904f10c
JackOD-9B-Coder-Q5_K_M.ggufWeights6.6 GB d155c7911d59
JackOD-9B-Coder-Q5_K_S.ggufWeights6.5 GB 555044323877
JackOD-9B-Coder-Q6_K.ggufWeights7.6 GB c94d907cd55c
JackOD-9B-Coder-Q6_K_L.ggufWeights8.1 GB 75fb20301c31
JackOD-9B-Coder-Q8_0.ggufWeights9.8 GB 955c9ca50b41
kld_results.jsonConfiguration27.4 KB —
README.mdDocumentation25.9 KB —
perplexity.mdDocumentation8.7 KB —
JackOD-9B-Coder-CD-IQ4_K_M.gguf.sha256Other98 B —
JackOD-9B-Coder-CD-Q2_K.gguf.sha256Other95 B —
JackOD-9B-Coder-CD-Q3_K_L.gguf.sha256Other97 B —
JackOD-9B-Coder-CD-Q4_K_M.gguf.sha256Other97 B —
JackOD-9B-Coder-CD-Q5_K_M.gguf.sha256Other97 B —
JackOD-9B-Coder-CD-Q6_K.gguf.sha256Other95 B —
JackOD-9B-Coder-F16.gguf.sha256Other91 B —
JackOD-9B-Coder-IQ2_M.gguf.sha256Other93 B —
JackOD-9B-Coder-IQ2_S.gguf.sha256Other93 B —
JackOD-9B-Coder-IQ2_XS.gguf.sha256Other94 B —
JackOD-9B-Coder-IQ3_M.gguf.sha256Other93 B —
JackOD-9B-Coder-IQ3_XS.gguf.sha256Other94 B —
JackOD-9B-Coder-IQ3_XXS.gguf.sha256Other95 B —
JackOD-9B-Coder-IQ4_NL.gguf.sha256Other94 B —
JackOD-9B-Coder-IQ4_XS.gguf.sha256Other94 B —
JackOD-9B-Coder-Q2_K_L.gguf.sha256Other94 B —
JackOD-9B-Coder-Q3_K_L.gguf.sha256Other94 B —
JackOD-9B-Coder-Q3_K_M.gguf.sha256Other94 B —
JackOD-9B-Coder-Q3_K_S.gguf.sha256Other94 B —
JackOD-9B-Coder-Q3_K_XL.gguf.sha256Other95 B —
JackOD-9B-Coder-Q4_K_L.gguf.sha256Other94 B —
JackOD-9B-Coder-Q4_K_M.gguf.sha256Other94 B —
JackOD-9B-Coder-Q4_K_S.gguf.sha256Other94 B —
JackOD-9B-Coder-Q5_K_L.gguf.sha256Other94 B —
JackOD-9B-Coder-Q5_K_M.gguf.sha256Other94 B —
JackOD-9B-Coder-Q5_K_S.gguf.sha256Other94 B —
JackOD-9B-Coder-Q6_K.gguf.sha256Other92 B —
JackOD-9B-Coder-Q6_K_L.gguf.sha256Other94 B —
JackOD-9B-Coder-Q8_0.gguf.sha256Other92 B —
imatrix.datOther5.2 MB 5ad024b89e9d
toolbench_scores.pngOther67.8 KB —
.gitattributesRepository3.4 KB —

License and Download

License
apache-2.0
Access
Open weights, no gate
Download size
178.3 GB
Download from ManniX

Released by ManniX through its official repository on Hugging Face. Read the license.

Built From

Memory Requirements

PrecisionWeights in memory
As published178.3 GB

Weights only, from the published parameter count; the key-value cache and runtime add to this.

Questions About JackOD-9B-Coder-MTP-GGUF

Can I use JackOD-9B-Coder-MTP-GGUF commercially?

Yes. JackOD-9B-Coder-MTP-GGUF is released under Apache License 2.0. The Apache License 2.0 is a permissive open-source license. It permits commercial use, modification and redistribution. It requires keeping the license and copyright notices and any NOTICE file, stating significant changes, and it includes an express patent grant from contributors.

Similar Models

Model · Text generation

opt-125m

AI at Meta

OPT was first introduced in Open Pre-trained Transformer Language Models and first released in metaseq's repository on May 3rd 2022 by Meta AI. Disclaimer: The team releasing OPT wrote an official model card, which is available in Appendix D of the paper. Content from this model card has been written by the Hugging Face team. To quote the first two paragraphs of the official paper OPT was predominantly pretrained with English text, but a small amount of non-English data is still present within the training corpus via CommonCrawl. The model was pretrained using a causal language modeling (CLM) objective. OPT belongs to the same family of decoder-only models like GPT-3. As such, it was…

Open weights other 2,048 tokens transformers

Model · Text generation

Ornith-1.5-9B-GGUF

Ornith

Chirp Chirp! We are introducing Ornith-1.5, a major step toward building foundation models through end-to-end self-improvement. Ornith-1.5 extends Ornith-1.0 (which was developed on top of Qwen3.5 and Gemma4 with additional continued pretraining, mid-training, and post-training) by expanding the self-improvement loop from scaffold and rollout optimization to jointly optimizing task generation, scaffold construction, and solution rollouts. Rather than relying on a fixed set of human-curated tasks and manually designed harnesses, Ornith-1.5 continuously generates new training tasks, discovers effective strategies for solving them, and improves the policy through reinforcement learning. For…

Open weights mit transformers

Model · Text generation

Ornith-1.5-35B-A3B-GGUF

Ornith

Chirp Chirp! We are introducing Ornith-1.5, a major step toward building foundation models through end-to-end self-improvement. Ornith-1.5 extends Ornith-1.0 (which was developed on top of Qwen3.5 and Gemma4 with additional continued pretraining, mid-training, and post-training) by expanding the self-improvement loop from scaffold and rollout optimization to jointly optimizing task generation, scaffold construction, and solution rollouts. Rather than relying on a fixed set of human-curated tasks and manually designed harnesses, Ornith-1.5 continuously generates new training tasks, discovers effective strategies for solving them, and improves the policy through reinforcement learning. For…

Open weights mit transformers

Model · Text generation

Ternary-Bonsai-2-27B-gguf

Prism ML

Full 27B-class reasoning in ternary transformer weights, for llama.cpp (CUDA, Metal, CPU) - \~5.9 GB language model (down from \~54 GB FP16) — full 27B-class reasoning on a standard laptop or a single GPU - 98.2% of FP16 intelligence retained: 84.78 average across 14 thinking-mode benchmarks — far above the conventional IQ2XXS build (72.59) at about 82% of its footprint, and within 0.4 points of UD-Q4KXL at three times the footprint - Retains thinking, reasoning, and agentic behavior deep in the sub-4-bit regime, where conventional low-bit representations collapse: math within half a point of full precision (96.57), coding level with the baseline (89.42), agentic tool calling at 74.92…

Open weights apache-2.0 llama.cpp

Uncensored Qwen3.8-27B, published as GGUF quantizations with the multi token prediction (MTP) head retained and verified. Refusal behaviour has been substantially reduced, not eliminated. See Measured behaviour for the numbers. Capabilities, training data, and architecture are otherwise unchanged. - Refusal directions removed with Heretic, which co minimizes refusal count against KL divergence from the base model. No handwritten refusal removal code, no finetuning, no additional training data. - Abliteration runs at bf16 (no 4 bit quantization). the resulting LoRA is merged into the bf16 base, so the published weights are not a quantized round trip. - mtp. tensors are copied verbatim from…

Open weights apache-2.0 llama.cpp

Model · Text generation

Ornith-1.0-9B-GGUF

Ornith

Aloha! Today, we are releasing Ornith-1.0, a self-improving family of open-source models for agentic coding. This model card documents Ornith-1.0-9B, the most lightweight member of the Ornith family, designed for efficient single-GPU deployment. Ornith-1.0-9B is a dense ~9B model (≈19 GB in bf16), so it serves comfortably on a single 80GB GPU. The recipes below stand up an OpenAI-compatible server; add --tensor-parallel-size / --tp if you want to shard across more GPUs. For a quick local test (or to script offline generation), load the model directly with Transformers. Make sure you have a recent release installed — see the Transformers installation guide; Ornith-1.0-9B requires…

Open weights mit transformers