Loading…
Loading…
HauhauCS/Qwen3.6-35B-A3B-Uncensored-HauhauCS-AggressiveNote from braydenh563: The file naming conventions used by satgeze prevented Hugging Face from allowing the file to be pulled directly into ollama. I have renamed the gguf file to correct this issue. Everything else remains the same.
UPDATE (05/08/2026):
draft_num_predict: 4. This should mean that the grafted mtp drafter properly activates when pulled into local llm software like ollama.Any and all feedback is appreciated!
HauhauCS's Aggressive uncensored build of Qwen3.6-35B-A3B, extended to a 1,048,576-token context and fused with the official MTP speculative-decoding layer. Every claim on the banner is measured, not inherited. Verification data ships in this repo.
| Capability | Status | Evidence |
|---|---|---|
| 1M context | Certified July 6, 2026 | 70/70 needles, full ladder 64K to 1M, 10 depths per rung, f16 KV, temp 0 |
| MTP speculative decoding | Grafted and vetted | 284.6 to 380.1 tok/s (+33.6%), draft acceptance 0.864, RTX 5090 |
| Vision | Verified | mmproj tower reads image text and identifies objects correctly |
| Uncensored | HauhauCS Aggressive | Trunk weights bit-identical to the HauhauCS release |
Native context is 262,144. YaRN rope scaling (factor 4) extends to 1,048,576, and retrieval stays perfect across the entire extension: every rung from 64K to 1M scored 10/10 at depths from 5 to 95 percent. Raw per-needle records are in results.jsonl.
Qwen3.6 ships a multi-token-prediction layer in the official checkpoint, but uncensored community trunks usually drop it. This build grafts the official MTP layer (via Unsloth's MTP GGUF) back onto the uncensored trunk at the GGUF tensor level. The draft head then predicts ahead and the trunk verifies every token, so output is identical to standard decoding, only faster.
Measured on the uncensored trunk (RTX 5090, 16K ctx): 284.6 tok/s standard, 380.1 tok/s with --spec-type draft-mtp (+33.6 percent). Draft acceptance 0.864 with mean accepted run 3.59, which is higher than we measured on the official trunk (0.816). A 262K needle test with speculation active scored 10/10, confirming the graft changes nothing about retrieval.
| File | Size | What it is |
|---|---|---|
qwen3.6-35b-uncensored-1M-MTP-Q4_K_M.gguf |
21.7 GB | The one-file package: uncensored trunk + 1M rope + MTP layer |
mmproj-qwen36-hauhau-f16.gguf |
899 MB | Vision tower, attach at runtime |
qwen36_heatmap.png, qwen36_mtp_speedup.png, results.jsonl |
small | Verification evidence |
The plain non-MTP 1M trunk and other quants live on the ModelScope mirror.
Nothing was discontinued: every quant is one click away. Hugging Face carries the curated picks, ModelScope always carries everything, and Ollama serves ready-to-run tags.
On Ollama every tag ships with the vision tower bundled and the 1M rope metadata baked in.
| File | Size | Hugging Face | ModelScope | Ollama |
|---|---|---|---|---|
mmproj-qwen36-hauhau-f16.gguf |
899 MB | download | download | bundled in every tag |
qwen3.6-35b-uncensored-1M-MTP-Q4_K_M.gguf |
21.7 GB | download | download | ollama run satgeze/qwen36-35b-uncensored-1m |
qwen3.6-35b-uncensored-1M-Q4_K_M.gguf |
21.2 GB | on ModelScope | download | ollama run satgeze/qwen36-35b-uncensored-1m:q4_k_m-no-mtp |
llama-server natively speaks the Anthropic messages protocol, so Claude Code can use this model directly. Two integration fixes are required, both included here:
llama-server -m qwen3.6-35b-uncensored-1M-MTP-Q4_K_M.gguf \
-c 262144 -np 2 --cache-reuse 256 -ngl 99 --jinja \
--chat-template-file chat_template_claude_code.jinja \
--spec-type draft-mtp --spec-draft-n-max 3 \
--mmproj mmproj-qwen36-hauhau-f16.gguf \
--port 8040 --host 0.0.0.0
Then in the client shell:
export ANTHROPIC_BASE_URL=http://<server-ip>:8040
export ANTHROPIC_AUTH_TOKEN=local
export ANTHROPIC_MODEL=qwen36-35b-uncensored-1m-mtp
claude
Why the flags: chat_template_claude_code.jinja is the embedded template with one strictness check relaxed (the original raises an exception on the multiple system blocks agent harnesses send). -np 2 matters because Claude Code fires background side-requests; with a single slot they evict your main generation. Measured on an RTX 5090: 330 to 380 tok/s decode with speculation active, tool calls and vision working.
block_count and nextn_predict_layers metadata updated to match. GGUF surgery, not training.llama.cpp (full speed, MTP active):
llama-server -m qwen3.6-35b-uncensored-1M-MTP-Q4_K_M.gguf \
-c 1048576 -np 1 --jinja \
--spec-type draft-mtp --spec-draft-n-max 3 \
--mmproj mmproj-qwen36-hauhau-f16.gguf
Ollama (1M and vision work; MTP tensors load harmlessly but Ollama has no speculative decoding yet, so no speed gain there):
FROM ./qwen3.6-35b-uncensored-1M-MTP-Q4_K_M.gguf
RENDERER qwen3.5
PARSER qwen3.5
PARAMETER num_ctx 262144
The RENDERER and PARSER lines matter: imported GGUFs without a native renderer hit template bugs under tool-heavy use (for example as a coding-agent backend). Raise num_ctx as memory allows. Measured footprints: 44 GB total at 1M f16 KV on a 128 GB Mac (100 percent GPU, 72 tok/s decode); a 32 GB card holds roughly 262K fully resident.
Measured July 8, 2026 on this exact Q4_K_M + MTP build, M3 Max 128GB, identical prompt, uniform wall-clock method, idle machine:
| Engine | Decode tok/s |
|---|---|
| llama.cpp llama-server + MTP | 79.1 |
| MLX | 72.7 |
| Ollama | 65.6 |
llama-server with the MTP draft head is the fastest way to run this model on Apple silicon, about 20 percent ahead of Ollama (which does not use speculative decoding for imported GGUFs).
Habits that measurably help, from our RULER, hop and adherence testing across this fleet:
Base model: Qwen (Apache-2.0), including the official MTP layer. Uncensoring and trunk quant: HauhauCS. MTP GGUF packaging: Unsloth. 1M YaRN extension, MTP graft, and certification: SatGeze.
Mirrors: Hugging Face | ModelScope. Tooling: github.com/satindergrewal/aviary-1m.