Views
No views yet
[!TIP] KV-cache quantization without any fork (recommended, 2026): upstream llama.cpp/Ollama now cover this natively — use-ctk q8_0 -ctv q8_0(~half KV memory, negligible quality loss: perplexity +0.002–0.05) or-ctk q4_0 -ctv q4_0(~quarter memory, ≈7.6% perplexity increase). In Ollama:OLLAMA_KV_CACHE_TYPE=q8_0withOLLAMA_FLASH_ATTENTION=1. Keep K and V types symmetric to stay on the fast fused Flash-Attention path. Since April 2026, mainline llama.cpp also applies Hadamard rotation to KV activations (PR #21038), which greatly improves low-bit KV quality (opt-out:LLAMA_ATTN_ROT_DISABLE=1).The RotorQuant/TurboQuant fork flow below is experimental/legacy: the TurboQuant llama.cpp PR was closed without merging (June 2026) and the fork is unmaintained relative to mainline. It is NOT required to use this model.
| Property | Value |
|---|---|
| Base Model | Qwen/Qwen3.6-35B-A3B |
| Parameters | 35 billion total (3 billion active per token) |
| Architecture | Mixture-of-Experts (MoE) (3B active per token) |
| Modality | Text-only (language tower extracted from a multimodal base; vision tower not included) |
| License | Apache 2.0 |
| Weight Quantization | 4-bit (~18 GB) |
| KV-Cache Quantization | TurboQuant |
| Framework | MLX (Apple Silicon) |
1import mlx.core as mx
2from mlx_lm import load, generate
3
4model, tokenizer = load("majentik/Qwen3.6-35B-A3B-TurboQuant-MLX-4bit")
5
6prompt = "Give me a short introduction to Mixture-of-Experts models."
7response = generate(model, tokenizer, prompt=prompt, max_tokens=512)
8print(response)[!IMPORTANT] Text-only extraction. This repo contains only the quantized language tower of Qwen3.6-35B-A3B. The upstream vision tower (333 tensors) and MTP head are not included, so image/video input does not work andmlx_vlm.load(...)fails with aMissing ... parameterserror (the vision tower it expects is absent from the checkpoint). Load it withmlx_lm(recent version withqwen3_5_moesupport) as shown above. For image/video input, use the upstream BF16 model Qwen/Qwen3.6-35B-A3B on a runtime that supports it.
-ctk/-ctv q8_0, OLLAMA_KV_CACHE_TYPE).| Method | Prefill Speed | Decode Speed | Memory Savings | Reference |
|---|---|---|---|---|
| TurboQuant | 1x (baseline) | 1x (baseline) | High | arXiv: 2504.19874 |
| Precision | Approximate Size | MLX Variant |
|---|---|---|
| FP16 (original) | ~70 GB (approx.) | -- |
| 4-bit quantized | ~18 GB | This model |
| Bits | Approx size | Use case | Recommendation |
|---|---|---|---|
| 2-bit | ~9.1 GB | Aggressive quantization | Very low-RAM Macs |
| 3-bit | ~13 GB | Lossy but small | Low-RAM Macs |
| 4-bit | ~15 GB | Balanced default | Recommended for most Macs |
| 5-bit | ~18 GB | Higher fidelity | Quality-sensitive |
| 6-bit | ~21 GB | Approaching FP16 quality | High-fidelity |
| 8-bit | ~27 GB | Near-lossless reference | Fidelity-critical work |
majentik/qwen3.6-35b-a3b-*. The current variant — TurboQuant-MLX-4bit — is bolded.)| Variant | Runtime | Approx size | Use case |
|---|---|---|---|
| RotorQuant-GGUF-IQ4_XS | llama.cpp | ~30 GB | Lossy 4-bit, low-RAM CPU/edge |
| RotorQuant-GGUF-Q2_K | llama.cpp | ~21 GB | Lossy, low-RAM CPU/edge |
| RotorQuant-GGUF-Q3_K_M | llama.cpp | ~27 GB | Smaller 3-bit, CPU-friendly |
| RotorQuant-GGUF-Q4_K_M | llama.cpp | ~38 GB | Balanced default |
| RotorQuant-GGUF-Q5_K_M | llama.cpp | ~46 GB | Higher fidelity, more RAM |
| RotorQuant-GGUF-Q8_0 | llama.cpp | ~74 GB | Near-lossless reference |
| RotorQuant-MLX-2bit | mlx-lm | ~11 GB | Apple Silicon, smallest |
| RotorQuant-MLX-5bit | mlx-lm | ~27 GB | Apple Silicon, higher fidelity |
| RotorQuant-MLX-6bit | mlx-lm | ~32 GB | Apple Silicon, near-lossless |
| RotorQuant-MLX-8bit | mlx-lm | ~41 GB | Apple Silicon reference |
| TurboQuant-MLX-3bit | mlx-lm | ~16 GB | Apple Silicon, small |
| TurboQuant-MLX-4bit | mlx-lm | ~22 GB | Apple Silicon balanced |