A quantization of deepseek-ai/DeepSeek-V4.1-Flash-1017 @ 1bae0e1088993b9b82de08f59de5be5a34e42170, served at tensor parallel 2 on two NVIDIA DGX Sparks (GB10) by upstream vLLM with the patches and plugin of github.com/sudoingX/dgx-spark-deepseek-v41 v2.0. Of the 1017 packs we measured, it is the closest to native 1017 on two panels of native replies, and on the v2.0 engine it decodes faster than TensorFold on code and structured output in three same-box sessions, with prose level.
wq_a, wo_a, wo_b and the shared expert at K5, wq_b at K4; the LM head at K5.main_proj and wo_a stay FP8), its routed experts at K3, and its own K4 copy of the LM head (331 MB against the target's 414 MB K5 head; the target keeps K5).dspark_conf_feat_head.npz: the per-round draft depth model fitted to this pack's own acceptance (four weights per draft position over the confidence head's logit and each draft's logit margin and top-1 probability, from 11,357 fixed-depth rounds). The v2.0 launcher reads it from the model folder.This checkpoint loads only with the v2.0 engine: vLLM main 6e517b15 + the repo's patches 0001-0038 + the vllm_exl3_moe plugin (the image install.sh builds, dsv41-serve:v5). The v1.x image does not know the drafter's own head. Stock vLLM does not know the quant method (deepseek_v41_exl3). Other engines: not tested.
Measured on two DGX Sparks against native 1017. Method below.
| this build | native 1017 | |
|---|---|---|
| KLD vs native, our panel (mean, nats; the 8 domains weighted equally) | 0.0198 (0.0331) | reference |
| top-1 agreement, our panel | 95.94% | reference |
| KLD vs native, a second panel of native 1017 replies (domains weighted equally) | 0.0213 (0.0413) | reference |
| top-1 agreement, second panel | 95.97% | reference |
| KLD on a panel of 300 IFEval prompts with native replies | 0.0980 | reference |
| perplexity, our panel / second panel | 1.6117 / 1.5869 | 1.6005 / 1.5720 |
| HumanEval+ (164), base / plus | 97.0 / 89.6 | 97.0 / 90.2 |
| MBPP+ (378), base / plus | 90.7 / 77.8 | 91.5 / 77.2 |
| IFEval (541), prompt strict / instruction strict | 90.8 / 93.8 | 90.4 / 93.6 |
decode, kit_bench.py set b, code / prose / structured, DSpark on (k = 5, per-round depth) |
103.8 / 57.8 / 144.1 tok/s | |
| context per request | 262,144 tokens; needles 3/3 at 8K, 32K, 64K and 128K | |
| MemAvailable after load, head / worker, vision on | 6 / 6 GiB (4 / 4 after a 128K prompt) |
No suite differs significantly from native 1017 (paired McNemar p 0.61 to 1.00).
Every pack on the same panels, scored by the same reference implementation with each pack's own tensors loaded (all measured here):
| pack | our panel, KLD / top-1 | second panel, KLD / top-1 | IFEval-reply KLD |
|---|---|---|---|
| this build (2.80 bpw, 3.10 per decoded token) | 0.0198 / 95.94% | 0.0213 / 95.97% | 0.0980 |
HeNryous 2.75 bpw @ ede209db (dense K5, head K6) |
0.0201 / 95.96% | 0.0216 / 95.97% | 0.0974 |
object-oriented-architects 2.7 bpw @ cdb167c4 |
0.0232 / 95.65% | 0.0249 / 95.65% | 0.1201 |
| our v1.2 2.7 bpw | 0.0243 / 95.47% | 0.0262 / 95.49% | 0.1199 |
LibertAIDAI 2.9 bpw @ c178a012 |
0.0304 / 94.76% | 0.0322 / 94.70% | 0.1135 |
This build has the lowest KLD on both panels and is closer to native than HeNryous's pack on 6 of the 8 domains of each (HeNryous is closer on math and knowledge on our panel, on math and long context on the second). Top-1 agreement is level with HeNryous's (95.94% vs 95.96%, 95.967% vs 95.969%), and HeNryous's pack is a little closer on the IFEval-reply panel (0.0974 vs 0.0980). HeNryous's and object-oriented-architects' packs are made with this recipe's pipeline.
Speed, one session on the same two Sparks, alternating fresh boots with the same memory preparation before each, the same client (set b, 9 reps a prompt): TensorFold 8e0966e2 serving object-oriented-architects' 2.7 bpw pack with lucataco's recipe settings, 98.4 / 58.0 / 141.3 and 98.6 / 58.4 / 140.9 tok/s; this build 103.9 / 57.9 / 144.0 and 103.6 / 57.7 / 144.1 tok/s. On the means, code +5.3%, structured +2.1%, prose -0.6%. A second session (the release gates, one boot each): TensorFold 97.7 / 57.5 / 140.4, this build 103.7 / 57.8 / 144.4 tok/s (+6.1%, +0.5%, +2.8%). On prose TensorFold verifies 1.99 tokens a round in 34.1-34.6 ms, this build 2.10 tokens in 36.3 ms. TensorFold loads with 12-13 GiB free a box and serves a 1M window. 8e0966e2 is the commit lucataco's 1017 recipe pins. A third session against TensorFold's newest DeepSeek TP2 commit (af26d42b, its v0.6 release plus two fixes), alternating fresh boots: TensorFold 98.6 / 58.5 / 140.7 and 98.2 / 57.4 / 140.3, this build 104.2 / 57.8 / 143.6 and 103.6 / 57.7 / 143.1 tok/s: code +5.6%, structured +2.0%, prose -0.3%.
| file | what |
|---|---|
config.json |
the official config plus quantization_config: quant_method: deepseek_v41_exl3 and an exl3_moe block (plan file, decode kernel coop, tp_layout: channels, exllamav3_version 1.6.0, head: exl3 with head_k 5, dense: the K of each dense module, backbone and drafter, and drafter_head_k 4) |
exl3_moe_plan.json |
the bit width of every routed expert: per layer, one character per expert; a drafter section for the drafter's experts |
model-exl3-L00-p0.safetensors to model-exl3-L39-p1.safetensors |
each layer's EXL3 routed experts as the two Sparks encoded them, in two halves; layers 16-18 in one file each (-p0) |
model-exl3-dense-L00.safetensors to model-exl3-dense-L39.safetensors |
each layer's EXL3 dense linears: wq_a, wq_b, wo_a (8 head-group slices), wo_b, the shared expert |
model-exl3-head.safetensors |
the EXL3 K5 head, head.{trellis,suh,svh,mul1} |
model-exl3-mtp.safetensors, model-exl3-mtp-experts.safetensors, model-exl3-mtp-head.safetensors |
the DSpark drafter's EXL3 dense linears (K5), routed experts (K3) and its own K4 head (mtp.head.*) |
model-NNNNN-of-00046.safetensors |
every other official tensor, unchanged: attention norms and compressors, routers, embeddings, vision tower, the drafter's remaining tensors |
model.safetensors.index.json |
tensor to file map, including the Engram tensors in model-00047-of-00048.safetensors and model-00048-of-00048.safetensors |
dspark_conf_feat_head.npz |
the draft depth model (above); data and fitter in the GitHub repo (data/dspark/, scripts/dspark/fit_draft_features.py) |
tokenizer.json, tokenizer_config.json, encoding/ |
official, unchanged (1017 ships no chat_template.jinja; vLLM formats chats with its DeepSeek V4.1 encoder) |
LICENSE |
DeepSeek's MIT license, unchanged |
MANIFEST.sha256 |
sha256 of every file in this repo except this card and the manifest itself, plus DeepSeek's two Engram shards (their official sha256) |
Download size: 204 GB (189.9 GiB), plus 203 GB for the two official Engram shards.
Both Sparks need the full folder at the same absolute path, the v2.0 serving image built from the GitHub repo, and passwordless ssh from a control machine. Full steps, image build and launcher settings: the GitHub README.
# on both Sparks
hf download sudoingx/DeepSeek-V4.1-Flash-1017-EXL3-2.8bpw --local-dir ~/models/dsv41-1017-exl3-28
hf download deepseek-ai/DeepSeek-V4.1-Flash-1017 model-00047-of-00048.safetensors model-00048-of-00048.safetensors \
--revision 1bae0e1088993b9b82de08f59de5be5a34e42170 --local-dir ~/models/dsv41-1017-exl3-28
(cd ~/models/dsv41-1017-exl3-28 && sha256sum -c MANIFEST.sha256)
# from the control machine, in a clone of the GitHub repo (v2.0)
HEAD=<ssh-host-of-rank-0> WORKER=<ssh-host-of-rank-1> MODEL_DIR=/absolute/path/to/dsv41-1017-exl3-28 \
./scripts/launch/dsv41_tp2.sh up
The launcher runs vllm serve in one container per Spark with --tensor-parallel-size 2 --nnodes 2, NCCL over RoCE on the ConnectX link, Marlin for every MXFP8 linear, DSpark speculative decoding with the per-round depth from this folder's dspark_conf_feat_head.npz and the round-cost table measured on this build (27.6,31.9,35.6,38.9,42.2,44.8 ms, the v2.0 default), Engram disk offload, FULL_DECODE_ONLY CUDA graphs, FlashInfer autotune off, the V4.1 tool-call and reasoning parsers, and text-only input by default. OpenAI API on the head node, port 8000, model name dsv41.
wq_b at K4 and the head at K5 cost 0.0004 of KLD for shorter decode rounds, which kept the build under 0.0200 on our panel.fit_draft_features.py --export; the fitter reproduces the shipped file from the shipped log.39e0db2f0b58aa432a512aed7b425e3feb1b424c9e02cc315be39bc9b7b71cf2); the second panel, the same 199 prompts answered by native 1017 through OpenRouter, 237,457 scored positions (sha256 f22a47c238f0926ffa22c2b5f42f9276eabdbec2358949ac6bc3d50420fe0da0); the IFEval-reply panel, 300 IFEval prompts with native replies, 116,318 positions. Every panel is scored against native 1017's logits.inference/model.py, streamed layer by layer on a Spark, for the native weights and for every quantized pack alike; each pack's own tensors are loaded into it, everything else stays official.kit_bench.py set b: single stream, greedy, thinking off, 384-token replies, median of 9 reps a prompt.TEXT_ONLY=0 (the numbers above were measured that way) and has no broader measurement.MIT, as the base model. These weights are a derivative of DeepSeek-V4.1-Flash-1017; DeepSeek's LICENSE file ships unchanged. The serving code, patches and plugin in the GitHub repo are Apache-2.0.
DeepSeek for the model and its reference implementation. turboderp for exllamav3 (MIT): the EXL3 quantizer and kernels. The vLLM project, with upstream PRs #56509 (zeenat28-ui) and #58560 (bluemelov1) carried as patches. bertholomus for kit_bench.py; TensorFold (Apache-2.0) for designs credited in the GitHub repo's NOTICE. HeNryous for the RoPE-table and indexer-buffer memory patches the v2.0 engine reworks (patches 0024 and 0025). HeNryous's, object-oriented-architects' and LibertAIDAI's packs were measured as baselines; nothing of theirs is in these weights.
model-exl3-mtp-experts.safetensors 5.1 GBmodel-exl3-L16-p0.safetensors 5.1 GBmodel-exl3-L17-p0.safetensors 5.0 GBmodel-exl3-L18-p0.safetensors 4.9 GBmodel-exl3-L01-p0.safetensors 2.8 GBmodel-exl3-L00-p0.safetensors 2.8 GBmodel-exl3-L06-p0.safetensors 2.8 GBmodel-exl3-L01-p1.safetensors 2.8 GBmodel-exl3-L00-p1.safetensors 2.8 GBmodel-exl3-L07-p1.safetensors 2.8 GBmodel-exl3-L07-p0.safetensors 2.8 GBmodel-exl3-L05-p1.safetensors 2.8 GBmodel-exl3-L08-p0.safetensors 2.8 GBmodel-exl3-L11-p1.safetensors 2.8 GBmodel-exl3-L09-p1.safetensors 2.8 GBmodel-exl3-L05-p0.safetensors 2.8 GBmodel-exl3-L10-p1.safetensors 2.8 GBmodel-exl3-L09-p0.safetensors 2.7 GBmodel-exl3-L08-p1.safetensors 2.7 GBmodel-exl3-L06-p1.safetensors 2.7 GBmodel-exl3-L12-p1.safetensors 2.7 GBmodel-exl3-L11-p0.safetensors 2.7 GBmodel-exl3-L03-p1.safetensors 2.7 GBmodel-exl3-L10-p0.safetensors 2.7 GBmodel-exl3-L02-p1.safetensors 2.7 GBmodel-exl3-L02-p0.safetensors 2.7 GBmodel-exl3-L13-p0.safetensors 2.7 GBmodel-exl3-L03-p0.safetensors 2.7 GBmodel-exl3-L15-p0.safetensors 2.6 GBmodel-exl3-L12-p0.safetensors 2.6 GBmodel-exl3-L13-p1.safetensors 2.6 GBmodel-exl3-L04-p0.safetensors 2.6 GBmodel-exl3-L04-p1.safetensors 2.6 GBmodel-exl3-L38-p1.safetensors 2.6 GBmodel-exl3-L37-p0.safetensors 2.6 GBmodel-exl3-L39-p1.safetensors 2.6 GBmodel-exl3-L37-p1.safetensors 2.6 GBmodel-exl3-L38-p0.safetensors 2.6 GBmodel-exl3-L39-p0.safetensors 2.6 GBmodel-exl3-L15-p1.safetensors 2.5 GBmodel-exl3-L14-p1.safetensors 2.5 GBmodel-exl3-L19-p1.safetensors 2.5 GBmodel-exl3-L19-p0.safetensors 2.5 GBmodel-exl3-L14-p0.safetensors 2.5 GBmodel-exl3-L20-p0.safetensors 2.4 GBmodel-exl3-L20-p1.safetensors 2.4 GBmodel-exl3-L21-p0.safetensors 2.3 GBmodel-exl3-L21-p1.safetensors 2.3 GBmodel-exl3-L22-p1.safetensors 2.3 GBmodel-exl3-L24-p1.safetensors 2.2 GBmodel-exl3-L23-p1.safetensors 2.2 GBmodel-exl3-L22-p0.safetensors 2.2 GBmodel-exl3-L23-p0.safetensors 2.2 GBmodel-exl3-L24-p0.safetensors 2.2 GBmodel-exl3-L25-p1.safetensors 2.1 GBmodel-exl3-L27-p1.safetensors 2.1 GBmodel-exl3-L25-p0.safetensors 2.1 GBmodel-exl3-L26-p0.safetensors 2.1 GBmodel-exl3-L26-p1.safetensors 2.1 GBmodel-exl3-L27-p0.safetensors 2.0 GBmodel-exl3-L28-p0.safetensors 2.0 GBmodel-exl3-L28-p1.safetensors 2.0 GBmodel-exl3-L29-p0.safetensors 2.0 GBmodel-exl3-L29-p1.safetensors 2.0 GBmodel-exl3-L30-p0.safetensors 1.9 GBmodel-exl3-L30-p1.safetensors 1.9 GBmodel-exl3-L31-p0.safetensors 1.9 GBmodel-exl3-L32-p0.safetensors 1.9 GBmodel-exl3-L32-p1.safetensors 1.9 GBmodel-exl3-L31-p1.safetensors 1.9 GBmodel-exl3-L33-p0.safetensors 1.8 GBmodel-exl3-L33-p1.safetensors 1.8 GBmodel-exl3-L34-p0.safetensors 1.8 GBmodel-exl3-L34-p1.safetensors 1.8 GBmodel-exl3-L35-p0.safetensors 1.8 GBmodel-exl3-L35-p1.safetensors 1.7 GBmodel-exl3-L36-p0.safetensors 1.7 GBmodel-exl3-L36-p1.safetensors 1.7 GBmodel-00002-of-00046.safetensors 1.3 GBmodel-00001-of-00046.safetensors 971 MBmodel-exl3-head.safetensors 414 MBmodel-exl3-mtp-head.safetensors 331 MBmodel-exl3-mtp.safetensors 241 MBmodel-00046-of-00046.safetensors 171 MBmodel-00044-of-00046.safetensors 118 MBmodel-exl3-dense-L10.safetensors 96 MBmodel-exl3-dense-L11.safetensors 96 MBmodel-exl3-dense-L12.safetensors 96 MBmodel-exl3-dense-L13.safetensors 96 MBmodel-exl3-dense-L14.safetensors 96 MBmodel-exl3-dense-L15.safetensors 96 MBmodel-exl3-dense-L16.safetensors 96 MBmodel-exl3-dense-L17.safetensors 96 MBmodel-exl3-dense-L18.safetensors 96 MBmodel-exl3-dense-L19.safetensors 96 MBmodel-exl3-dense-L20.safetensors 96 MBmodel-exl3-dense-L21.safetensors 96 MBmodel-exl3-dense-L22.safetensors 96 MBmodel-exl3-dense-L23.safetensors 96 MBmodel-exl3-dense-L24.safetensors 96 MBmodel-exl3-dense-L25.safetensors 96 MBmodel-exl3-dense-L26.safetensors 96 MBmodel-exl3-dense-L27.safetensors 96 MBmodel-exl3-dense-L28.safetensors 96 MBmodel-exl3-dense-L29.safetensors 96 MBmodel-exl3-dense-L30.safetensors 96 MBmodel-exl3-dense-L31.safetensors 96 MBmodel-exl3-dense-L32.safetensors 96 MBmodel-exl3-dense-L33.safetensors 96 MBmodel-exl3-dense-L34.safetensors 96 MBmodel-exl3-dense-L35.safetensors 96 MBmodel-exl3-dense-L36.safetensors 96 MBmodel-exl3-dense-L37.safetensors 96 MBmodel-exl3-dense-L38.safetensors 96 MBmodel-exl3-dense-L39.safetensors 96 MBmodel-exl3-dense-L00.safetensors 96 MBmodel-exl3-dense-L01.safetensors 96 MBmodel-exl3-dense-L02.safetensors 96 MBmodel-exl3-dense-L03.safetensors 96 MBmodel-exl3-dense-L04.safetensors 96 MBmodel-exl3-dense-L05.safetensors 96 MBmodel-exl3-dense-L06.safetensors 96 MBmodel-exl3-dense-L07.safetensors 96 MBmodel-exl3-dense-L08.safetensors 96 MBmodel-exl3-dense-L09.safetensors 96 MBmodel-00045-of-00046.safetensors 39 MBmodel-00017-of-00046.safetensors 24 MBmodel-00005-of-00046.safetensors 24 MBmodel-00011-of-00046.safetensors 24 MBmodel-00023-of-00046.safetensors 19 MBmodel-00027-of-00046.safetensors 13 MBmodel-00031-of-00046.safetensors 13 MBmodel-00035-of-00046.safetensors 13 MBmodel-00039-of-00046.safetensors 13 MBmodel-00013-of-00046.safetensors 8 MBmodel-00014-of-00046.safetensors 8 MBmodel-00015-of-00046.safetensors 8 MBmodel-00016-of-00046.safetensors 8 MBmodel-00018-of-00046.safetensors 8 MBmodel-00019-of-00046.safetensors 8 MBmodel-00020-of-00046.safetensors 8 MBmodel-00021-of-00046.safetensors 8 MBmodel-00022-of-00046.safetensors 8 MBmodel-00024-of-00046.safetensors 8 MBmodel-00025-of-00046.safetensors 8 MBmodel-00026-of-00046.safetensors 8 MBmodel-00028-of-00046.safetensors 8 MBmodel-00029-of-00046.safetensors 8 MBmodel-00030-of-00046.safetensors 8 MBmodel-00032-of-00046.safetensors 8 MBmodel-00033-of-00046.safetensors 8 MBmodel-00034-of-00046.safetensors 8 MBmodel-00036-of-00046.safetensors 8 MBmodel-00037-of-00046.safetensors 8 MBmodel-00038-of-00046.safetensors 8 MBmodel-00040-of-00046.safetensors 8 MBmodel-00041-of-00046.safetensors 8 MBmodel-00042-of-00046.safetensors 8 MBmodel-00003-of-00046.safetensors 8 MBmodel-00004-of-00046.safetensors 8 MBmodel-00006-of-00046.safetensors 8 MBmodel-00007-of-00046.safetensors 8 MBmodel-00008-of-00046.safetensors 8 MBmodel-00009-of-00046.safetensors 8 MBmodel-00010-of-00046.safetensors 8 MBmodel-00012-of-00046.safetensors 8 MBmodel-00043-of-00046.safetensors 10.4 kBHave the files? Submit a torrent.
Submit a torrentHave the complete files and permission to share them? Replace the example folder path. The script checks the files, makes a torrent and submits its magnet and checksums. Keep your torrent client seeding. Get your community key from your settings, and read the script before running it.
curl -fsSL https://pirateface.co/package.sh | bash -s -- --repo sudoingx/DeepSeek-V4.1-Flash-1017-EXL3-2.8bpw ./model-folderdeepseek-ai/DeepSeek-V4.1-Flash-1017