DeepSeek-V4.1-Flash-1017 Kraken TP3 3x RTX PRO 6000 Blackwell
00 upvotes — sign in to vote sign in to votecommunity Community submission — verify on your own hardware.
recipe by BoxTops4Coochie (recipe, TP3 port, measurements)↗, infernix - ds41f-tp3 expert-parking design on karmic-kraken↗, Local Inference Lab - vLLM karmic-kraken fork + FlashInfer b12x kernels↗, DeepSeek - DeepSeek-V4.1-Flash-1017 base model (MIT)↗ · listed by localai-recipes
revision r3 · commit fe33370ee6 · updated 19 h ago · license CC-BY-4.0
chat code vision 1m-ctx tensor-parallel dspark long-context engram speculative expert-offload b12x community-recipe
DeepSeek-V4.1-Flash-1017 at TP3 on three 96 GB RTX PRO 6000 Blackwell cards with the full 1M-token context, serving DeepSeek's original weights (FP8 dense + MXFP4 routed experts, nothing requantized). Expert layers 20-33 park in host RAM against a 1.5 GiB promotion reserve; once healthy their hottest experts promote back to GPU (hot-first order from 1017 route counts, lossless FlashInfer CSF scale compression). Spreading that fixed budget across 14 layers instead of 6 shallows each layer's cold tail - the author reports 68.0 -> 72.3 engine steps/s at 32K decode (+6.3%), no quality, KV or prefill cost. Engram layer 1 pinned in host RAM, layer 14 streamed from NVMe. DSpark speculative decoding, 5 drafts verified, NVFP4 drafter head. 1,048,576-token window over a 2,185,581-token KV pool, up to 4 sequences. Measured on image 20261019.3: prefill 13,486/12,245 tok/s (32K/128K), 7,193 at 983K; decode 186.7/340.7 c1/c4 at 32K, 179.2/307.1 at 128K, 474 aggregate on 4 shorts, 271.8 coding peak.
Launch command
'docker pull azallaza/ds41-kraken-tp3:20261019.3' 'docker run -d --name ds41-kraken-tp3 --restart unless-stopped --stop-timeout 90 --ipc host' '--security-opt seccomp=unconfined --ulimit memlock=-1 --ulimit nofile=1048576 --ulimit stack=67108864' '--gpus '\''"device=0,1,2"'\'' -p 15015:15015' '-v /path/to/huggingface:/root/.cache/huggingface:ro -v ds41-runtime-cache:/cache -e VLLM_CACHE_ROOT=/cache/vllm -e TORCHINDUCTOR_CACHE_DIR=/cache/inductor -e TRITON_CACHE_DIR=/cache/triton' '-e MODEL=deepseek-ai/DeepSeek-V4.1-Flash-1017 -e KV_CACHE_MEMORY_BYTES=2415919104' '-e DS41_OFFLOAD_FROM_ORDINAL=20 -e DS41_OFFLOAD_TO_ORDINAL=33' '-e B12X_DEFERRED_BANK_RESERVE_BYTES=1610612736' '-e DS41_ENGRAM_RAM_LAYERS=1 -e DS41_ENGRAM_ROW_CACHE_ROWS=8388608' '-e VLLM_DS41_DRAFT_NVFP4_HEAD=1 -e DS41_LAUNCH_SETTINGS=/etc/ds41/launch.yaml -e HF_HUB_OFFLINE=1' azallaza/ds41-kraken-tp3:20261019.3 '# ENTRYPOINT ds41-serve runs the lil launcher (repo ds41-launch.yaml baked as /etc/ds41/launch.yaml):' '/usr/local/bin/lil-entrypoint --profile=ds41-flash --hardware=rtx-pro-6000-pcie --settings=/etc/ds41/launch.yaml --port=15015 --scheduling-policy=priority' '-- --kv-cache-memory-bytes=2415919104 --cpu-offload-gb=8 --cpu-offload-params experts vision aligner' 'lil settings: served-model-name=DeepSeek-V4.1-Flash tensor-parallel-size=3 cache-mode=vram' 'lil settings: max-model-len=1048576 max-num-seqs=4 max-num-batched-tokens=4096 max-cudagraph-capture-size=24' 'lil settings: gpu-memory-utilization=0.93 max-parallel-prefills=auto prefill-policy=round-robin' 'lil settings: mode=dspark draft-tokens=5 adaptive-verification=false' 'lil settings: override-generation-config={temperature:1.0,top_p:1.0}' 'lil settings: engram-table-memory=disk engram-disk-resident-scales=true jit-monitor-mode=warn'Use this recipe with your agent
Paste this into any agent chat — it fetches and applies the recipe:
Fetch https://localairecipes.com/api/v1/recipes/deepseek-v4-1-flash-1017-kraken-tp3-3x-rtx-pro-6000-blackwell.json and apply the inference recipe it describes (engine flags, model, quant, context) to my setup. Ask before overwriting any existing config.Or fetch it directly:
curl -fsSL https://localairecipes.com/api/v1/recipes/deepseek-v4-1-flash-1017-kraken-tp3-3x-rtx-pro-6000-blackwell.jsonInstall requirements
- Docker (or a compatible OCI container runtime)
- NVIDIA Container Toolkit (nvidia-container-toolkit) - exposes host GPUs to the container
NVIDIA driver floor: unknown - check the image tag
Source: NVIDIA CUDA Toolkit Release Notes - driver compatibility tables (https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/, fetched 2026-10-03).
Map the placeholders to your rig
- Hardware-bound values in this recipe (device counts, bind-mount paths, utilization, ports) describe the author's machine, not yours - map them to your own rig before launching. Keep the engine flags, model, quant, and parallelism strategy; adjust paths and ports to the hardware you actually have.
- GPU identity: list your GPUs with `nvidia-smi -L` and substitute your own GPU UUIDs/indices wherever the recipe pins the author's.
- Model directory: bind-mount paths are author-side - point them at your own mount where the model files live.
- Host port: pick a free port on your machine and publish the container there; keep the in-container port unchanged.
Downloads
- Weights https://huggingface.co/deepseek-ai/DeepSeek-V4.1-Flash-1017original weights @ 1bae0e1088993b9b82de08f59de5be5a34e42170 (FP8 dense + MXFP4 routed experts, nothing requantized)
- Engine image https://hub.docker.com/r/azallaza/ds41-kraken-tp3tag 20261019.3 (NVFP4 drafter head + top-p 1.0 default); .2 added max-parallel-prefills auto
- Reference https://github.com/BoxTops4Coochie/RTX-PRO-6000-TP3-Inference-Recipesrecipe folder 'DeepSeek-V4.1-Flash Kraken-tp3-20261019' @ bcf72fe69b949dce447b2974e1315e1a757e73bf (watched)
- Reference https://github.com/local-inference-lab/flashinferb12x kernels @ 5b065abe0ce787364d26f01d753c7b73d2c0d57e (FlashInfer main, fetched by the Dockerfile)
Revision notes
Community ingest of BoxTops4Coochie's recipe (repo folder 'DeepSeek-V4.1-Flash Kraken-tp3-20261019' @ bcf72fe6, self-contained: compose.yaml, ds41-launch.yaml, ds41-serve, Dockerfile, src/ TP3 port, bench/ + bench-20261019.3/, qualification/). Listed-by localai-recipes; recipe + measurements by BoxTops4Coochie. TP3 expert-parking design credited to infernix (ds41f-tp3 on karmic-kraken); runtime/kernels Local Inference Lab (vLLM fork, FlashInfer b12x); weights DeepSeek original 1017 @ 1bae0e10 (MIT). Discord corroboration (local-inference-lab #general, submitter-T0, not re-verified): Eric 2026-10-23 05:28Z "been running tp3 with Box's recipe that runs on kraken. it stores unused experts in RAM. very nice so far"; pete8359 04:39Z "TP3 dsv4.1f works lossless with Box's recipe"; andomort corroborated. Quality at top-p 1.0: lavd + hotel-lights 30/30 exact each @ 4 concurrent, 128K/900K retrieval pass, long generation 4/4 clean, vision 117/120 hard set. NOT a dupe of the site DS4.1 lanes (4x CMP 170HX Engram-NVMe TP4/PP4, 6x A100 SM80, EXL3 4x 170HX): first 3x RTX PRO 6000 Blackwell TP3 DS4.1-Flash recipe with full 1M context on original weights. Corrections to the scout card: image-inspect.json in the repo records the 20261019.2 image (sha256:06578acf...), not .3 - the engine_source digest is the 20261019.3 sha from README/Docker Hub. Facts re-verified at pinned HEAD 2026-10-24. UPDATE 2026-10-28 (repo @ 4fc4f0c9825d): config-only change on the same image 20261019.3 - DS41_OFFLOAD_TO 25 -> 33 (layers 20-33, 14 layers instead of 6), reserve 1 GiB -> 1.5 GiB, restart policy no -> unless-stopped, and the vLLM/Inductor/Triton compile caches persisted to /cache. The author publishes this as llm-bench decode 68.0 -> 72.3 ENGINE STEPS/S at 32K, a two-run mean with +/-1-2 steps run-to-run noise; that is a step-rate figure and is NOT converted to tok/s here, because tok/s = steps/s x draft acceptance and acceptance was not re-reported for this config. The tok/s points below remain the author's measured 20261019.3 fresh-restart figures and were not re-measured at the new offload range. Author's stated limits: do not widen past ~34 (20-34/20-36 OOM at load because DS41_VMM_COLD_FRACTION=1 host-maps every wrapped layer up front); keep dspark draft layers 37-39 resident; at the 1 GiB reserve 20-33 runs ~5 MiB free and throws repeated expandable_segments memory-mapping OOM retries under concurrent long-context, while 1.5 GiB holds ~480 MiB free under a 4x600K-token prefill-during-decode stress. Supersedes the earlier 'parking 20-29 instead of 20-25 - no further gain' note, which the author retracts because that was a tok/s A/B that cannot resolve ~6% through spec-decode acceptance noise.
Revision history
- fe33370ee6 recipe: update deepseek-v4-1-flash-1017-kraken-tp3-3x-rtx-pro-6000-blackwell (r3: /provenance/notes, /config/launch, /summary, /engine, /performance) 13 h ago diff
- 90a2335e6a recipe: update deepseek-v4-1-flash-1017-kraken-tp3-3x-rtx-pro-6000-blackwell (r2: /artifacts) 15 h ago diff
- 178603c27b recipe: create deepseek-v4-1-flash-1017-kraken-tp3-3x-rtx-pro-6000-blackwell 6 d ago
Fork
Sign in to fork this recipe — a fork is your own copy; you own it and only you can update it.