Skip to content

Add DeepSeek-V4-Flash-Vision-Exp recipe and runtime dependency mod - #382

Closed
isolitude wants to merge 1 commit into
eugr:mainfrom
isolitude:add-ds4-vision
Closed

Add DeepSeek-V4-Flash-Vision-Exp recipe and runtime dependency mod#382
isolitude wants to merge 1 commit into
eugr:mainfrom
isolitude:add-ds4-vision

Conversation

@isolitude

@isolitude isolitude commented Sep 8, 2026

Copy link
Copy Markdown

Summary

Add a cluster-only recipe for DeepSeek-V4-Flash-Vision-Exp (FP8) on a dual DGX Spark cluster, with unified vision indexing + DSpark speculative decoding, plus the runtime dependency stack it needs.

What's included

  • recipes/deepseek-v4-flash-vision-exp.yaml — cluster-only recipe. Builds the vllm-node-b12x image with --exp-b12x --rebuild-vllm --apply-vllm-pr 634 (the vision feature is not merged into dev/jovian-judgement), applies the b12x runtime overlay + LMCache dev+5 install at container start.
  • mods/jj-ds4-vision-deps — the container-start runtime stack:
    1. b12x source overlay (pure Python/JIT, no rebuild): PR #301 FP8 dual-cache prefill + sparse topk-512, PR #246 TP2 comm/pcie, PR #306 mHC rms_eps=1e-20 allowance.
    2. LMCache dev+5 build/install from a vendored tarball (lmcache-dev5-src.tar.gz, ~2.2 MB): dev base @7ed46754 + follow-up PRs #49/#50/#51/#55/#56 — this replaces the previously-depended-upon PR #44, which vLLM PR #634 dropped.
    3. flashinfer — no-op (baked 0.6.18 already carries the SM120 topk-512 dispatch).
      run.sh is idempotent and self-verifying; verify.sh checks the three claims against the installed environment.
  • Docsdocs/deepseek-v4-flash-vision-exp.md (dependency stack, PR #634 status, caveats) and a CHANGELOG entry.

Dependency stack

Component Patch Where
b12x PR #246 TP2 peer-push + PIECEWISE binding mod (runtime overlay)
b12x PR #301 FP8 V4 dual-cache prefill, sparse topk 512 mod (runtime overlay)
b12x PR #306 rms_norm_eps=1e-20 mod (runtime overlay)
vLLM PR #634 Vision (NOT in branch) baked via --apply-vllm-pr 634
vLLM PR #553 engine-driven LMCache + expandable CUDA already in dev/jovian-judgement
vLLM PR #671 fused padded-query KV accounting already in dev/jovian-judgement
LMCache dev + PRs #49/#50/#51/#55/#56 (replaces PR #44) mod (vendored install)
FlashInfer 803c4664 SM120 sparse-MLA topk-512 baked in 0.6.18 (no-op)

Why LMCache dev + follow-up PRs, not PR #44?

PR #634's runtime-dependency list dropped PR #44 (the release/v0.5.2-glm52-dcp-base lineage) in favor of five dev-lineage PRs #49/#50/#51/#55/#56. The dev engine-driven path is a different implementation from #44's (no EngineDrivenContextPickle; the context lives in worker_transfer.py as EngineDrivenTransferContext). Build the dev+5 source, not #44 or any release/v0.5.x wheel.

Notes

  • --hf-overrides '{"architectures":["DeepseekV4ForConditionalGeneration"]}' is required (the model loader resolves from raw hf_config.architectures).
  • Weights must be present in the HF cache of both nodes.
  • This is experimental (as are b12x builds in general); keep the repo updated.

Add the cluster-only deepseek-v4-flash-vision-exp recipe for serving
deepseek-ai/DeepSeek-V4-Flash-Vision-Exp (FP8) on a dual DGX Spark cluster
with unified vision (index_topk=512, rms_norm_eps=1e-20) plus DSpark
speculative decoding.

The vision feature comes from local-inference-lab/vllm PR #634 (open, NOT
merged into dev/jovian-judgement), so the recipe builds the vllm-node-b12x
image with --rebuild-vllm --apply-vllm-pr 634. The #553/#671 functionality
is already present in the branch in equivalent form and is not applied.

Introduce mods/jj-ds4-vision-deps, the container-start runtime stack for
this recipe:
  - b12x source overlay (pure Python/JIT, no rebuild): PR eugr#301 FP8 dual-cache
    prefill + sparse topk-512, PR eugr#246 TP2 comm/pcie, PR eugr#306 mHC rms_eps=1e-20
    allowance.
  - LMCache dev+5 build/install from the vendored tarball (dev @7ed46754 +
    PRs eugr#49/eugr#50/eugr#51/eugr#55/eugr#56, replacing the dropped PR eugr#44).
  - flashinfer no-op (baked 0.6.18 already carries the SM120 topk-512 dispatch).

run.sh is idempotent and self-verifying; verify.sh checks the three claims
against the installed environment. Docs added (docs/deepseek-v4-flash-vision-exp.md
and a CHANGELOG entry). The mod README documents how to rebuild the vendored
LMCache tarball; PR references use full URLs so GitHub links land on the
correct upstream repositories, not this one.

Co-Authored-By: Claude Code <noreply@anthropic.com>
@isolitude isolitude closed this Sep 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant