dankclaw: switch frank-default-large spec to DSpark sidecar draft (magnitudedev Qwen3.8-27B-DSpark Q8_0, n_max 7)

This commit is contained in:
Frank
2026-08-15 14:00:30 -07:00
parent 40b079fe1e
commit b94bad066b
3 changed files with 21 additions and 16 deletions
+15 -11
View File
@@ -12,17 +12,21 @@ PORT=7770
# ~70GB headroom, so 2x262k quantized KV fits. Verify at startup.
CTX_SIZE=524288
PARALLEL=2
# Spec: 3-layer chain, chosen by the user 2026-08-14 (aesthetic/short-term
# experiment): draft-mtp first, then ngram-mod, then ngram-map-k4v as
# fallbacks. On real prose this benches ~equal to draft-mtp alone
# (10.4 vs ~10 t/s @16k) - the ngram layers only pay off on self-similar text.
# Bundled MTP drafter; llama.cpp auto-detects it (b10411+). DRAFT_FILE empty.
# n_max=5 is the realistic-text peak (n4 12.5, n6 10.6, n10 8.6).
# Occasional slow rounds possible when fallbacks misfire; revert to
# draft-mtp (alone) if the assistant reports stalls.
SPEC_TYPE=draft-mtp,ngram-mod,ngram-map-k4v
DRAFT_FILE=
SPEC_DRAFT_N_MAX=5
# Spec: DSpark sidecar draft (magnitudedev/Qwen3.8-27B-DSpark-GGUF Q8_0,
# 1.36B, block_size 7, Markov confidence head). Switched from bundled-MTP
# 2026-08-15 at the user's request. DSpark is the semi-autoregressive
# extension of DFlash (DeepSeek, arXiv 2607.05147): parallel diffusion
# backbone + sequential Markov head + confidence-scheduled verification.
# n_max clamps to the trained block_size 7 (server warning if set higher).
# DSpark extends DFlash (which had a shared-draft-context premature-EOS bug)
# but adds per-sequence Markov/confidence machinery; parallel safety on this
# box is still pending the two-16k-prompt test 2026-08-15. Revert to
# bundled-MTP or set PARALLEL=1 if the parallel test fails.
# DRAFT_FILE names the sidecar GGUF in MODEL_DIR (downloaded 2026-08-15,
# sha256 b007a76b2ce57c1a3ecf36046543aebf60a763861624647d653f16d336c781d2).
SPEC_TYPE=draft-dspark
DRAFT_FILE=Qwen3.8-27B-DSpark-Q8_0.gguf
SPEC_DRAFT_N_MAX=7
SPEC_DRAFT_P_MIN=
SPEC_NGRAM_MOD_N_MIN=48
SPEC_NGRAM_MOD_N_MAX=64
+1 -1
View File
@@ -1,5 +1,5 @@
[Unit]
Description=llama.cpp Qwen3.8-27B UD-Q8_K_XL MTP+ngram-mod+ngram-map-k4v (frank-default-large)
Description=llama.cpp Qwen3.8-27B UD-Q8_K_XL + DSpark sidecar draft (frank-default-large)
After=network.target
[Service]
+5 -4
View File
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
# Serve unsloth Qwen3.8-27B UD-Q8_K_XL on dankclaw with bundled-MTP
# speculative decoding (draft-mtp). ROCm backend.
# Serve unsloth Qwen3.8-27B UD-Q8_K_XL on dankclaw with a DSpark
# sidecar draft model (draft-dspark). ROCm backend.
# Runtime: llama.cpp llama-server (>= b10411).
#
# Tunables come from frank-default-large.env in this directory unless the
@@ -19,7 +19,7 @@ fi
# --- defaults (used when the env file does not set them) -----------------
: "${MODEL_DIR:=/home/dank/models}"
: "${MODEL_FILE:=Qwen3.8-27B-UD-Q8_K_XL.gguf}"
: "${DRAFT_FILE:=}" # empty: Qwen3.8 bundles its MTP drafter in-model
: "${DRAFT_FILE:=}" # set: DSpark/DFlash/MTP/... sidecar GGUF in MODEL_DIR
: "${ALIAS:=frank-default-large}"
: "${HOST:=0.0.0.0}"
: "${PORT:=7770}"
@@ -53,7 +53,8 @@ if [[ ! -f "$MODEL" ]]; then
fi
# Draft-model flag applies only when a separate draft file is provided.
# Qwen3.8 bundles MTP in-model; leave DRAFT_FILE empty to use bundled MTP.
# Qwen3.8-UD bundles MTP in-model; leave DRAFT_FILE empty for bundled MTP,
# or set it to a DSpark/DFlash sidecar GGUF for a dedicated draft.
SPEC_ARGS=()
if [[ -n "$DRAFT_FILE" ]]; then
if [[ ! -f "$DRAFT" ]]; then