GraySoft
Projects Models Compare Cloud benchmarks FAQ Download guIDE →
Model Intelligence Sheet

pearsonkyle/Qwopus3.6-27B-Coder-2bit-MTP-GGUF overview

<div style="font family: apple system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans serif; border: 1px solid 99f6e4; border radius: 16px; box shadow: 0 10px 15…

ggufllama.cpptext-generationtext-generation-inferencetransformersquantizationquantizedimatriximportance-matrixmtpmulti-token-predictionspeculative-decodinglow-bit2-bit3-bit4-bitiq2_xsiq2_mq2_k_siq3_miq4_xsqwopusqwen327b

Runs locally from ~8.89 GB disk (12 GB VRAM class GPUs with llama.cpp / guIDE).

Downloads
2,558
Likes
4
Pipeline
text-generation

Repository Files & Downloads

6 GGUF files detected
Direct downloads for local inference
FileTypeQuantizationSizeLink
Qwopus3.6-27B-Coder-IQ2_M.ggufGGUFIQ2_M9.74 GBDownload
Qwopus3.6-27B-Coder-IQ2_XS.ggufGGUFIQ2_XS8.89 GBDownload
Qwopus3.6-27B-Coder-IQ3_M.ggufGGUFIQ3_M12.14 GBDownload
Qwopus3.6-27B-Coder-IQ4_XS.ggufGGUFIQ4_XS14.47 GBDownload
Qwopus3.6-27B-Coder-Q2_K.ggufGGUFQ2_K10.40 GBDownload
Qwopus3.6-27B-Coder-Q2_K_S.ggufGGUFQ2_K_S9.96 GBDownload

Model Details

Model IDpearsonkyle/Qwopus3.6-27B-Coder-2bit-MTP-GGUF
Authorpearsonkyle
Pipelinetext-generation
Licenseapache-2.0
Base modelJackrong/Qwopus3.6-27B-Coder
Last modified2026-06-24T02:01:24.000Z

Model README

---

library_name: gguf

base_model:

  • Jackrong/Qwopus3.6-27B-Coder

tags:

  • gguf
  • llama.cpp
  • text-generation
  • text-generation-inference
  • transformers
  • quantization
  • quantized
  • imatrix
  • importance-matrix
  • mtp
  • multi-token-prediction
  • speculative-decoding
  • low-bit
  • 2-bit
  • 3-bit
  • 4-bit
  • iq2_xs
  • iq2_m
  • q2_k_s
  • iq3_m
  • iq4_xs
  • qwopus
  • qwen3
  • 27b
  • coder
  • tool-use
  • function-calling
  • long-context

license: apache-2.0

language:

  • en

pipeline_tag: text-generation

---

<div style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; border: 1px solid #99f6e4; border-radius: 16px; box-shadow: 0 10px 15px -3px rgba(0,0,0,0.05), 0 4px 6px -2px rgba(0,0,0,0.05); overflow: hidden; background: #ffffff; margin-bottom: 30px;">

<div style="background: linear-gradient(135deg, #0d9488 0%, #134e4a 100%); padding: 24px; color: white;">

<div style="display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px;">

<h1 style="margin: 0; font-size: 26px; font-weight: 800; display: flex; align-items: center; gap: 12px; color: white; border: none;">🧊 Jackrong/Qwopus3.6-27B-Coder</h1>

<span style="background: #f59e0b; color: #1c1917; font-size: 11px; font-weight: 700; padding: 4px 10px; border-radius: 20px; text-transform: uppercase; letter-spacing: 0.5px;">imatrix + MTP</span>

</div>

</div>

<div style="display: flex; gap: 8px; flex-wrap: wrap; padding: 12px 24px; background: #f8fafc; border-bottom: 1px solid #e2e8f0;">

<span style="background: #dbeafe; color: #1e40af; font-size: 11px; font-weight: 700; padding: 4px 10px; border-radius: 20px; border: 1px solid #bfdbfe;">📦 6 quants · 8.9 – 14.5 GiB</span>

<span style="background: #d1fae5; color: #065f46; font-size: 11px; font-weight: 700; padding: 4px 10px; border-radius: 20px; border: 1px solid #a7f3d0;"> IQ2_XS · IQ2_M · Q2_K_S · IQ3_M · IQ4_XS</span>

<span style="background: #ede9fe; color: #5b21b6; font-size: 11px; font-weight: 700; padding: 4px 10px; border-radius: 20px; border: 1px solid #ddd6fe;">⚡ MTP bundled (Q8) · 1.26× · 79.9% accept · @n=1</span>

<span style="background: #fce7f3; color: #9d174d; font-size: 11px; font-weight: 700; padding: 4px 10px; border-radius: 20px; border: 1px solid #fbcfe8;">🏗️ llama.cpp 32782998 / f3e1828</span>

<span style="background: #fef3c7; color: #92400e; font-size: 11px; font-weight: 700; padding: 4px 10px; border-radius: 20px; border: 1px solid #fde68a;">🏅 IQ4_XS: KLD 0.004 · top_p 94%</span>

</div>

<div style="padding: 24px; display: flex; flex-direction: column; gap: 20px;">

<div style="background: #f0fdfa; border-left: 5px solid #0d9488; padding: 16px; border-radius: 0 8px 8px 0;">

<h3 style="margin: 0 0 8px 0; font-size: 15px; color: #115e59; font-weight: 700; display: flex; align-items: center; gap: 6px;"><span>🧊</span> What this is</h3>

<p style="margin: 0; font-size: 13px; color: #334155; line-height: 1.7;">imatrix calibrated quantizations of <b>Jackrong/Qwopus3.6-27B-Coder</b> spanning <b>2.8 – 4.5 bits per weight</b> — from aggressive 2-bit (IQ2_XS/IQ2_M/Q2_K_S) up to near-lossless <b>IQ4_XS</b> (KLD 0.004, top_p 94%) — each calibrated from real usage logs + wiki text, and each shipping the model's own <b>Multi-Token-Prediction (MTP) draft head bundled in at Q8_0</b> for built-in speculative decoding. The MTP head — kept near-lossless at Q8 while the trunk is quantized — drafts the next token for a <b>~1.26× decode speedup</b> at <b>79.9% acceptance</b>, no separate draft model required. Plain GGUF, no custom runtime.</p>

</div>

<div style="display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 15px; margin-top: 10px;">

<div style="border: 1px solid #e2e8f0; padding: 14px; border-radius: 8px; background: #fafafa; box-shadow: inset 0 2px 4px rgba(0,0,0,0.02);"><span style="font-weight: 700; color: #115e59; font-size: 12px; display: block; margin-bottom: 6px; text-transform: uppercase; letter-spacing: 0.5px;">📉 3.5–5.7× smaller on disk</span><span style="font-size: 13px; color: #4b5563; line-height: 1.5;">8.9–14.5 GiB on disk (incl. the bundled MTP head) vs 50.9 GiB for FP16. Tuned for English + Python agentic-coding workloads (see calibration scope below).</span></div>

<div style="border: 1px solid #e2e8f0; padding: 14px; border-radius: 8px; background: #fafafa; box-shadow: inset 0 2px 4px rgba(0,0,0,0.02);"><span style="font-weight: 700; color: #115e59; font-size: 12px; display: block; margin-bottom: 6px; text-transform: uppercase; letter-spacing: 0.5px;">⚡ 1.26× faster decode</span><span style="font-size: 13px; color: #4b5563; line-height: 1.5;">Built-in MTP speculative decoding: 22.9 vs 18.1 tok/s on Metal (IQ2_M, n-max=1), 79.9% draft acceptance.</span></div>

</div>

</div>

</div>

🧰 1. Files & comparison

Five imatrix-calibrated quants (IQ2_XS, IQ2_M, Q2_K_S, IQ3_M, IQ4_XS), each with the MTP head bundled at Q8_0. Plain Q2_K (no imatrix) is the no-calibration anchor. FP16 reference: 50.90 GiB (not included; fetch from Jackrong/Qwopus3.6-27B-Coder).

| | FP16 (reference) | Q2_K (plain) | IQ2_XS (hybrid) | IQ2_M (hybrid) | Q2_K_S (hybrid) | IQ3_M (hybrid) | IQ4_XS (hybrid) |

|---|---|---|---|---|---|---|---|

| File | n/a | Q2_K.gguf | IQ2_XS.gguf | IQ2_M.gguf | Q2_K_S.gguf | IQ3_M.gguf | IQ4_XS.gguf |

| Quant | FP16 | Q2_K | IQ2_XS | IQ2_M | Q2_K_S | IQ3_M | IQ4_XS |

| Agent Quality | | ❌ | ❌ | ⭐ | ❌ | ⭐⭐ | ⭐⭐⭐ |

| Technique | none (reference) | plain (no imatrix) | hybrid imatrix | hybrid imatrix | hybrid imatrix | hybrid imatrix | hybrid imatrix |

| Size (GiB) | 50.90 | 10.40 | 8.89 | 9.74 | 9.96 | 12.14 | 14.47 |

| BPW | 16.000 | 3.269 | 2.794 | 3.062 | 3.133 | 3.816 | 4.549 |

| | | | | | | | |

| PPL (general) | 6.4826 | 5.5835 | 9.8866 | 8.5961 | 8.0091 | 8.3112 | 6.5729 |

| KLD med (general) | 0.00000 | 0.1154 | 0.0950 | 0.0535 | 0.0566 | 0.0191 | 0.0041 |

| top_p (general) | 100.00% | 79.29% | 78.87% | 83.23% | 83.32% | 87.95% | 94.04% |

<div style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; border: 1px solid #fde68a; border-radius: 12px; background: #fffbeb; padding: 16px; margin: 16px 0; color: #92400e; font-size: 13px; line-height: 1.7;">

<b>⚠️ Caveat.</b> Low-bit (2.8–4.5 bpw) quants of a 27B model. The 2-bit rows are strong for their size but trade real fidelity; <b>IQ4_XS</b> is near-lossless (KLD 0.004) and the closest substitute for FP16 / Q4_K_M when you can spare ~14.5 GiB. Reach for the smaller rows when memory is the binding constraint.

</div>

<div style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; border: 1px solid #bfdbfe; border-radius: 12px; background: #eff6ff; padding: 16px; margin: 16px 0; color: #1e3a8a; font-size: 13px; line-height: 1.7;">

<b>📋 Calibration scope — English &amp; Python, agentic coding.</b> The importance matrix (and the windowed packing that shaped it) was calibrated on <b>real agentic-coding sessions that are overwhelmingly English-language and Python-centric</b>, captured from <b>Claude Code, opencode, and qwen code</b>. At low bit-widths the codebook's precision is spent where those logs put it: English prompts and Python-flavored tool use (read / edit / bash / grep / write, etc.). Expect <b>weaker fidelity on other natural languages, non-Python ecosystems, and non-coding / general-chat workloads</b>.

</div>

SWE-rebench Results

The agentic coding capabilities of each quant were evaluated on 10 real-world coding issues from the nebius/SWE-rebench using the OpenAI Agents SDK pointed at a local llama-server. For each nebius/SWE-rebench issue, the agent gets the problem statement and a live bash tool that shells into a dedicated Docker container with the repo pre-checked out at the failing commit. It iterates by reading files, running tests, editing code until it produces a git diff or hits the step limit. The patch is then graded by actually running the repo's FAIL\_TO\_PASS test suite inside the container, so pass/fail is real execution, not fuzzy matching. We tried using mini SWE-Agent but it wasn't adequately resolving issues despite have a similar patch rate.

|Metric|Q2\_K|IQ2\_XS|IQ2\_M|Q2\_K\_S|Q5\_K\_M|

|:-|:-|:-|:-|:-|:-|

|File|Q2\_K.gguf|IQ2\_XS.gguf|IQ2\_M.gguf|Q2\_K\_S.gguf|Q5\_K\_M.gguf|

|Technique|none|imatrix|imatrix|imatrix|none|

|Size (GiB)|10.40|8.89|9.74|9.96|19.50|

|Repetitions|3|3|3|3|3|

|Issues|10|10|10|10|10|

|Patch Rate|88±12%|70±10%|100%|93±6%|100%|

|Pass Rate|30±10%|27±6%|63±6%|57±6%|57±6%|

|Max Turns|27±15%|57±25%|13±15%|10±17%|0%|

|Mean Steps|58.5±7.6|73.1±15.1|51.6±8.3|46.7±8.1|38.6±1.3|

|Mean Tokens|1,335K±253K|1,779K±137K|784K±260K|922K±195K|588K±57K|

|Tool Error Rate|14.6±6.4%|9.5±3.6%|12.6±1.8%|8.9±1.5%|12.1±0.2%|

|Mean Wall|415±98s|558±182s|381±66s|425±259s|307±34s|

>Sampling Parameters: temperature=0.25, top_p=0.95, top_k=20, min_p=0.0, presence_penalty=0.0, repetition_penalty=1.0, max_tokens=32768, ctx=131072, thinking=true, mtp=true, mtp_draft_n_max=2. Tested on 4060Ti (16Gb)

Definitions:

  • patched \- how many of the 10 issues did the agent produce a patch for (even if it didn't resolve)?
  • resolved \- how many of the 10 issues had patches that passed all FAIL\_TO\_PASS tests?
  • max_turns \- how many of the 10 issues hit the 100-step cap without resolving?
  • mean_steps \- average number of agentic steps taken (shelling into Docker, reading files,editing code counts as steps)
  • mean_tokens \- average number of tokens generated across the entire agentic episode
  • tool_err_rate \- how often the agent produced an invalid shell command that couldn't be executed (syntax errors, wrong file paths, etc.)
  • mean_wall \- average wall-clock time per episode (capped at 2 hours for those that hit the step limit)

Overall, the IQ2_M quant achieves a strong 63% pass rate on this agentic coding benchmark, which is impressive for a 2-bit model. The high patch rate across all quants suggests that even the weaker ones can still generate plausible patches, but the lower pass rates and higher max turn rates indicate that many of those patches aren't actually resolving the issues. The IQ2_M quant behaves as good as the Q5_K_M albiet with \~20% more steps and tokens, however those additional steps and iterations look to be effective ones that are helping it self-correct and resolve more issues, rather than just looping. When the quant has a high number of mean tokens in combination with a high max turn rate that usually indicates the agent is stuck in a loop. It's worth pointing out that Q5KM never hits its max turn (100) when solving these issues. We recommend running these quants with a repetition penalty of >1 to break it out of loops. Given the variation induced from sampling, we run a few repetitions of each quant and report the mean ± standard deviation across those runs.

---

🔬 2. How they were made

<div style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; display: flex; flex-direction: column; gap: 16px; margin-bottom: 24px;">

<div style="border: 1px solid #99f6e4; border-radius: 12px; overflow: hidden; background: #ffffff;">

<div style="background: linear-gradient(135deg, #0d9488 0%, #115e59 100%); padding: 12px 16px; color: white; font-weight: 700; font-size: 14px;">🧮 2.1 Hybrid importance matrix</div>

<div style="padding: 16px; font-size: 13px; color: #334155; line-height: 1.7;">

<p style="margin: 0 0 10px 0;">At low bit-widths the quantizer must decide <i>where</i> to spend its limited precision. An <b>importance matrix</b> measures, per input channel, how much that channel drives each layer's output on a calibration corpus, and tells <code>llama-quantize</code> to preserve the high-impact channels. This release uses a <b>hybrid</b> imatrix blending activation energy <code>E[a²]</code> with weight-column energy <code>‖W[:, c]‖² · E[a²]</code>, collected at ctx=4096. Linear-attention / SSM tensors (this is a Qwen3.6 hybrid architecture) pass through with raw <code>E[a²]</code>. The output is a standard GGUF with no runtime overhead.</p>

</div>

</div>

<div style="border: 1px solid #ddd6fe; border-radius: 12px; overflow: hidden; background: #ffffff;">

<div style="background: linear-gradient(135deg, #7c3aed 0%, #5b21b6 100%); padding: 12px 16px; color: white; font-weight: 700; font-size: 14px;">⚡ 2.2 Bundled MTP (multi-token prediction)</div>

<div style="padding: 16px; font-size: 13px; color: #334155; line-height: 1.7;">

<p style="margin: 0 0 10px 0;">Qwopus3.6 ships a trained <b>MTP draft head</b> (one nextn layer, <code>blk.64</code>) that predicts the next token from the trunk's hidden state. llama.cpp runs it as built-in speculative decoding (<code>--spec-type draft-mtp</code>): the head drafts, the trunk verifies in parallel, and accepted drafts skip a full decode step.</p>

<p style="margin: 0 0 10px 0;">We <b>keep the MTP head near-lossless at Q8_0</b> while the trunk is quantized — the head is tiny relative to the model, and a low-bit draft head would draft poorly. The same Q8 head ships in all six quants. Measured on Metal (IQ2_M, n-max=1, holdout prompts):</p>

<table style="width:100%; border-collapse:collapse; font-size:12px; margin:0;">

<thead><tr style="background:#f5f3ff;"><th style="padding:8px 10px; border:1px solid #ddd6fe; text-align:left; color:#5b21b6;">Config</th><th style="padding:8px 10px; border:1px solid #ddd6fe; text-align:left; color:#5b21b6;">Decode tok/s</th><th style="padding:8px 10px; border:1px solid #ddd6fe; text-align:left; color:#5b21b6;">Draft acceptance</th></tr></thead>

<tbody>

<tr><td style="padding:8px 10px; border:1px solid #ddd6fe;"><b>MTP on</b> (n-max=1)</td><td style="padding:8px 10px; border:1px solid #ddd6fe;"><b>22.9 ± 0.7</b></td><td style="padding:8px 10px; border:1px solid #ddd6fe;"><b>79.9%</b></td></tr>

<tr><td style="padding:8px 10px; border:1px solid #ddd6fe;">baseline (off)</td><td style="padding:8px 10px; border:1px solid #ddd6fe;">18.1 ± 1.7</td><td style="padding:8px 10px; border:1px solid #ddd6fe;">—</td></tr>

</tbody>

</table>

<p style="margin: 10px 0 0 0;"><b>→ 1.26× speedup</b> on Metal. Qwen3.6 exposes <b>one</b> nextn layer, so <code>--spec-draft-n-max 1</code> is optimal (higher values don't help). GPU bandwidth matters — the upstream Qwen3.6 figure is ~1.66× on an RTX 5090. See <a href="./MTP/README.md"><code>MTP/README.md</code></a> for details.</p>

</div>

</div>

<div style="border: 1px solid #bfdbfe; border-radius: 12px; overflow: hidden; background: #ffffff;">

<div style="background: linear-gradient(135deg, #2563eb 0%, #1e3a8a 100%); padding: 12px 16px; color: white; font-weight: 700; font-size: 14px;">📚 2.3 Calibration & evaluation data</div>

<div style="padding: 16px; font-size: 13px; color: #334155; line-height: 1.7;">

<p style="margin: 0 0 10px 0;">Calibration and every eval corpus are disjoint by construction — the tool-call eval is the held-out 10% of sessions, windowed exactly like calibration but never seen by it — so §1 measures generalization, not fit. All shipped under <code>calibration_data/</code>.</p>

<table style="width:100%; border-collapse:collapse; font-size:12px; margin:0;">

<thead><tr style="background:#eff6ff;"><th style="padding:8px 10px; border:1px solid #bfdbfe; text-align:left; color:#1e3a8a;">Corpus</th><th style="padding:8px 10px; border:1px solid #bfdbfe; text-align:left; color:#1e3a8a;">Source</th><th style="padding:8px 10px; border:1px solid #bfdbfe; text-align:left; color:#1e3a8a;">Used for</th></tr></thead>

<tbody>

<tr><td style="padding:8px 10px; border:1px solid #bfdbfe;"><b>Calibration</b></td><td style="padding:8px 10px; border:1px solid #bfdbfe;">~500k tokens of usage-log text (windowed) + all of <code>wiki.test.raw</code></td><td style="padding:8px 10px; border:1px solid #bfdbfe;">hybrid imatrix collection</td></tr>

<tr><td style="padding:8px 10px; border:1px solid #bfdbfe;"><b>Eval — tools</b> (in-distribution)</td><td style="padding:8px 10px; border:1px solid #bfdbfe;">held-out logtrain session slice (10%), windowed like calibration but disjoint from it</td><td style="padding:8px 10px; border:1px solid #bfdbfe;"><b>§1 <i>tools</i> columns (PPL · KLD · top_p)</b></td></tr>

<tr><td style="padding:8px 10px; border:1px solid #bfdbfe;"><b>Eval — general</b></td><td style="padding:8px 10px; border:1px solid #bfdbfe;"><code>combined_en_tiny</code> (broad English) from the same eaddario dataset</td><td style="padding:8px 10px; border:1px solid #bfdbfe;"><b>§1 <i>gen</i> columns (PPL · KLD · top_p)</b></td></tr>

</tbody>

</table>

</div>

</div>

</div>

---

🚀 3. Usage

Quick start with Ollama

Each quant is exposed as a tag (the filename's quant suffix):

ollama run hf.co/pearsonkyle/Qwopus3.6-27B-Coder-2bit-MTP-GGUF:IQ2_M
# also: :IQ4_XS  ·  :IQ3_M  ·  :Q2_K_S  ·  :IQ2_XS  ·  :Q2_K

Building llama.cpp from source (GPU)

apt-get update && apt-get install pciutils build-essential cmake curl libcurl4-openssl-dev -y
git clone https://github.com/ggml-org/llama.cpp
cmake llama.cpp -B llama.cpp/build -DBUILD_SHARED_LIBS=OFF -DGGML_CUDA=ON   # -DGGML_CUDA=OFF for CPU/Metal
cmake --build llama.cpp/build --config Release -j --clean-first --target llama-cli llama-server
cp llama.cpp/build/bin/llama-* llama.cpp/

> MTP needs a recent llama.cpp--spec-type draft-mtp support was merged in 2026-06. Build from current master.

Running the server with MTP speculative decoding

 ./llama-server \
    --model Qwopus3.6-27B-Coder-IQ2_M.gguf \
    --ctx-size 16384 \
    --n-gpu-layers 999 \
    --spec-type draft-mtp \
    --spec-draft-n-max 1 \
    --flash-attn on \
    --cache-type-k q8_0 --cache-type-v q8_0 \
    --host 0.0.0.0 --port 1234

Drop --spec-type draft-mtp --spec-draft-n-max 1 to run without MTP.

Querying via the OpenAI-compatible API

import json, urllib.request

def ask(content, max_tokens=256):
    body = {
        "messages": [{"role": "user", "content": content}],
        "max_tokens": max_tokens,
        # Coder variant emits <think> reasoning. Set enable_thinking False
        # (or raise max_tokens) so the answer lands in "content".
        "chat_template_kwargs": {"enable_thinking": False},
    }
    req = urllib.request.Request("http://127.0.0.1:1234/v1/chat/completions",
                                 json.dumps(body).encode(),
                                 {"Content-Type": "application/json"})
    return json.loads(urllib.request.urlopen(req).read())["choices"][0]["message"]["content"]

print(ask("Write a Python function that reverses a linked list."))

---

🪪 4. License & attribution

  • Inherits its license from the base model Jackrong/Qwopus3.6-27B-Coder. Confirm the exact terms and update the frontmatter license: before publishing.
  • Base weights: Jackrong/Qwopus3.6-27B-Coder (full finetune of Qwen3.6-27B, ships its own MTP head).
  • Calibration + quantization performed locally with Quant-Tuner; vendored llama.cpp at commit 32782998 (2-bit rows: Q2_K, IQ2_XS, IQ2_M, Q2_K_S) and f3e1828 (IQ3_M, IQ4_XS). All six share the same hybrid imatrix + calibration corpora.
  • Calibration data (usage logs) scraped using LogMiner.

Run pearsonkyle/Qwopus3.6-27B-Coder-2bit-MTP-GGUF with guIDE

Download guIDE — the AI-native code editor with local LLM inference and 69 built-in tools.

Download guIDE → · Browse 524k+ models · Compare models

Source: Hugging Face · Compare models