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 committed 2026-08-15 14:00:30 -07:00
1 parent 40b079fe1e
commit b94bad066b
3 files changed
+21 -16

No files matched your search

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