deepseek-v4-gguf / README.md
mishig's picture
mishig HF Staff
Add model card metadata, tags, files table, and quant recipe
6b25e58 verified
|
raw
history blame
3.53 kB
---
license: mit
library_name: gguf
pipeline_tag: text-generation
base_model: deepseek-ai/DeepSeek-V4-Flash
base_model_relation: quantized
quantized_by: antirez
language:
- en
tags:
- gguf
- quantized
- deepseek
- deepseek-v4
- deepseek-v4-flash
- moe
- mixture-of-experts
- 2-bit
- 4-bit
- iq2_xxs
- q2_k
- q4_k
- ds4
- apple-silicon
- metal
---
# DeepSeek V4 Flash — GGUF for ds4
This quants are specific for the DS4 inference engine. They may work with other inference engines or not (they should, but not the MTP model which requires a specific loader).
https://github.com/antirez/ds4
## Files
| File | Size | Routed experts (`ffn_{gate,up,down}_exps`) | Everything else |
|---|---:|---|---|
| `DeepSeek-V4-Flash-IQ2XXS-w2Q2K-AProjQ8-SExpQ8-OutQ8-chat-v2.gguf` | 80.8 GiB | `IQ2_XXS` (gate, up) + `Q2_K` (down) | `Q8_0` attn proj / shared experts / output, `F16` router + embed + indexer + compressor + HC, `F32` norms / sinks / bias |
| `DeepSeek-V4-Flash-Q4KExperts-F16HC-F16Compressor-F16Indexer-Q8Attn-Q8Shared-Q8Out-chat-v2.gguf` | 153.3 GiB | `Q4_K` (all three) | same as above |
| `DeepSeek-V4-Flash-MTP-Q4K-Q8_0-F32.gguf` | 3.6 GiB | MTP / speculative-decoding support (optional, not standalone). | |
Use **q2** on 128 GB Mac machines, **q4** on machines with ≥ 256 GB RAM, pair either with **MTP** for optional speculative decoding.
## Quantization recipe
The filename is the spec. In detail, for the **q2** file:
| Tensor class | Quant | Notes |
|---|---|---|
| `blk.*.ffn_gate_exps`, `blk.*.ffn_up_exps` | **`IQ2_XXS`** | routed-expert up/gate |
| `blk.*.ffn_down_exps` | **`Q2_K`** | routed-expert down (K-quant for quality) |
| `blk.*.ffn_{gate,up,down}_shexp` | `Q8_0` | shared experts |
| `blk.*.attn_q_a`, `attn_q_b`, `attn_kv`, `attn_output_a`, `attn_output_b` | `Q8_0` | all attention projections (MLA + low-rank output) |
| `output.weight` | `Q8_0` | output head |
| `token_embd.weight` | `F16` | input embedding |
| `blk.*.ffn_gate_inp` (router) | `F16` | learned router |
| `blk.*.exp_probs_b` (router bias), `blk.*.attn_sinks`, all `*_norm.weight` | `F32` | |
| `blk.*.ffn_gate_tid2eid` | `I32` | hash-routing tables (first 3 layers only) |
| `blk.*.attn_compressor_*`, `blk.*.indexer_*`, `blk.*.hc_*`, `blk.*.output_hc_*` | `F16` / `F32` | DSv4-specific auxiliary blocks |
For the **q4** file, only the three routed-expert classes change to `Q4_K`. Everything else is byte-for-byte identical to the q2 recipe.
The motivation behind the asymmetry: the routed experts are the majority of the parameter count but each individual expert handles only a fraction of tokens, so aggressive quantization on them costs less in average quality than the same treatment of router, projections, or shared experts. Keeping the decision-making components at `Q8_0` preserves model behavior; crushing the experts buys the size.
## Usage
```bash
git clone https://github.com/antirez/ds4
cd ds4
./download_model.sh q2 # 128 GB RAM machines
./download_model.sh q4 # >= 256 GB RAM machines
./download_model.sh mtp # optional MTP / speculative decoding
make
./ds4 -p "Explain Redis streams in one paragraph."
./ds4-server --ctx 100000 --kv-disk-dir /tmp/ds4-kv --kv-disk-space-mb 8192
```
The `download_model.sh` script fetches from this repository, resumes partial downloads, and points `./ds4flash.gguf` at the selected variant.
## License
MIT. The base model copyright is held by DeepSeek; the GGUFs are redistributed under the base model's release terms.