banner

Ornith-1.0-9B — full GGUF ladder + fidelity metrics

This is NOT my model. All weights and training are by DeepReinforce (deepreinforce-ai/Ornith-1.0-9B). This is an independent repack: it ships the whole quantization ladder with objective KLD fidelity metrics and an honest third-party evaluation. No weights were modified.

About the "repetition loop" (correcting my earlier claim)

An earlier version of this repo framed a missing tokenizer.chat_template as the bug behind Ornith's repetition loops. That framing was wrong, and I want to correct it in the open. After feedback from @NeoHuggingF — and re-checking — the qwen3.5-family GGUFs do carry the chat template (the source repo ships chat_template.jinja), and hand-writing a ChatML override actually introduces dropped-character bugs. So there is no unique "template bug" that this repo fixes.

What actually causes the loops, and how to avoid them:

  • Ollama renderer/parser. For qwen3.5 the correct Modelfile is TEMPLATE {{ .Prompt }} + RENDERER qwen3.5 + PARSER qwen3.5 (recent Ollama), not a custom template. The Modelfile in this repo is set up that way.
  • Sampling. Low temperature (e.g. 0.1) makes reasoning-tuned models loop. Use DeepReinforce's recommended temp 1.0 / top_p 0.95.

What this repo actually adds is the honest part: the full quant ladder (below) with a KLD fidelity sweep, an imatrix, provenance and checksums — plus a small independent SWE probe. No "bug fix" claim.

✅ Recommended files

Use case File Size Top-1 vs Q8
Best quality / archival Ornith-1.0-9B-Q8_0.gguf 9.5 GB 100%
Near-lossless Ornith-1.0-9B-Q6_K.gguf 7.4 GB 97.5%
Balanced default Ornith-1.0-9B-Q5_K_M.gguf 6.5 GB 95.9%
Best compact (imatrix) Ornith-1.0-9B-IQ4_XS.gguf 5.2 GB 94.4%
Smallest (lossy) Ornith-1.0-9B-Q3_K_M.gguf 4.6 GB 86.5%

Tip: on this hybrid arch, IQ4_XS dominates Q4_K_M — it's smaller (5.2 vs 5.6 GB) and more faithful (94.4% vs 92.2% Top-1), thanks to the imatrix. Q4_K_M is still shipped as the familiar safe default. Q3_K_M is the only sub-5 GB option but noticeably lossy (86.5%).

📦 Files (the ladder)

Quant Size Top-1 vs Q8
Q3_K_M 4.6 GB 86.5%
IQ4_XS 5.2 GB 94.4%
Q4_K_M 5.6 GB 92.2%
Q5_K_M 6.5 GB 95.9%
Q6_K 7.4 GB 97.5%
Q8_0 9.5 GB ref

📊 Metrics — fidelity vs the Q8_0 reference

Measured with llama-perplexity --kl-divergence over 68 chunks (n_ctx 512). KLD (Kullback–Leibler divergence) is the gold-standard quant-fidelity metric; Top-1 match is how often the quant's argmax token equals the reference's.

Reference = Q8_0, not BF16. Ornith is a hybrid qwen3_5 arch (linear-attention / SSM layers + periodic full-attention + vision), which llama.cpp's converter does not yet lower cleanly from safetensors. So the whole ladder is requantized from the verified Q8_0 (near-lossless), and fidelity is measured against that Q8_0.

Quant Size PPL PPL vs Q8 KLD mean KLD p50 Top-1 match
Q8_0 9.53 GB 4.605 ref ref ref 100.0%
Q6_K 7.36 GB 4.605 +0.06% 0.0045 0.0014 97.5%
Q5_K_M 6.47 GB 4.653 +1.09% 0.0133 0.0037 95.9%
Q4_K_M 5.63 GB 4.637 +0.74% 0.0379 0.0135 92.2%
IQ4_XS 5.20 GB 4.661 +1.26% 0.0229 0.0079 94.4%
Q3_K_M 4.62 GB 5.073 +10.22% 0.1219 0.0469 86.5%

Small eval set (68 chunks) → PPL carries some noise (a lower-tier PPL can dip below a higher one by chance); KLD and Top-1 match are the reliable fidelity signals and rank monotonically. Q6_K is effectively lossless (97.5% Top-1, +0.06% PPL); Q3_K_M is the only tier with visible degradation.

🧮 Will it fit?

RAM Comfortable quant Context
8 GB IQ4_XS / Q4_K_M 8K–16K
16 GB Q5_K_M / Q6_K 32K
24 GB+ Q8_0 32K–128K

🚀 How to run it

Ollama:

ollama run hf.co/KikoCis/Ornith-1.0-9B-Ollama-fixed-GGUF:Q5_K_M
# or a specific file: ollama create ornith -f Modelfile && ollama run ornith

llama.cpp:

llama-server -m Ornith-1.0-9B-Q5_K_M.gguf --jinja -c 32768

Recommended sampling (DeepReinforce official): temperature 1.0, top_p 0.95. Low temperature (0.1) causes repetition loops on this model — use ~1.0. For agentic tool-use, point your harness at DeepReinforce's <function=> (OpenHands) tool format.

Independent evaluation (honest, small probe)

6-instance SWE-bench (django) probe, Claude-Code agentic harness, temp 1.0 / top_p 0.95, same template for all:

model SWE note
base Qwen3.5-9B 1/6 baseline
Ornith-1.0-9B 2/6 real fine-tune, beats base
NRS_QWEN_MYTHOS_1M ("100x reasoning" hype) 0/6 hype, worse than base
Ornith-9B, only the change shown result
temp 0.1, raw template 0/6 (repetition loops)
temp 1.0 + RENDERER/PARSER qwen3.5 2/6 (healthy)

⚠️ These are relative numbers on a tiny probe — NOT comparable 1:1 to DeepReinforce's official 69.4 SWE-bench Verified (OpenHands harness, <function=> format, temp 1.0/top_p 0.95). Use the official numbers for leaderboard comparison. The SWE probe was run on the Q8_0; the lower tiers are validated by the KLD table above (fidelity to that Q8_0), not by re-running the full agentic suite on each.

🔁 Provenance & reproducibility

Credit & license

  • Model, weights, training, and chat_template.jinja: © DeepReinforceOrnith-1.0, GrandCode paper, deep-reinforce.com.
  • This repack + ladder + evaluation: KikoCis. MIT (same as upstream). No weights modified — only metadata (chat_template, general.description) added, then requantized.

🗒️ Changelog

  • 2026-07-12 — Added the full quant ladder (IQ4_XS, Q3_K_M, Q4_K_M, Q5_K_M, Q6_K) alongside the original Q8_0, with a KLD/PPL fidelity sweep vs Q8_0, imatrix, provenance scripts, and SHA-256 sums.
  • 2026-07-12 (later) — Corrected the card: withdrew the "missing chat-template bug" claim (per @NeoHuggingF; the GGUFs do carry the template). The real fix is Ollama's RENDERER/PARSER qwen3.5 + recommended sampling.
  • 2026-06-27 — Initial Q8_0 repack + independent SWE probe.
Downloads last month
2,680
GGUF
Model size
9B params
Architecture
qwen35
Hardware compatibility
Log In to add your hardware

3-bit

4-bit

5-bit

6-bit

8-bit

Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for KikoCis/Ornith-1.0-9B-Ollama-fixed-GGUF

Quantized
(88)
this model

Paper for KikoCis/Ornith-1.0-9B-Ollama-fixed-GGUF