frank-small docs: runbook renamed + rewritten for the RCO-IQ3_XXS MTP-on shape (489 MiB free, 63.3 t/s recipe, draft ctx ~2.4 GiB measured); AGENTS, vault indexes, models.yml comment, MiMo cross-link retargeted
This commit is contained in:
1 parent
da36fa32cf
commit
0f7274e55a
6 files changed
+360
-316
No files matched your search
@@ -26,7 +26,7 @@ merge absorbed the former `vllmScripts` repo, history preserved).
|
||||
|--------|---------|---------|-------|------|
|
||||
| Dankserver | `frank-primary` | **radiance** (StillDeadcode v1.0.7 line; image `stilldeadcode/radiance@sha256:4c3f484564…` digest-pinned INDEX digest, 287 MiB, `libr4d` gfx1201 kernels, plain `podman run`, root systemd unit) | `Qwen/Qwen3.8-Flash-Next-FP8` official (172.8 GB, 131 shards, sha256-verified) converted **no-recipe** to `qwen4exp-fp8-native.rad` (177,109 MiB measured = 173.0 GiB) — **native modelopt block-FP8, no requantisation** — on **BOTH R9700s TP=2** (`--tp-wire wht6`), experts in a **40 GiB/rank pinned host pool** + VRAM cache (`--placement expert_tiered`, `--expert-vs-cache-ratio 0.82` = the 99 %-hit point), **PLE 47.7 GiB pinned to host RAM** (`--ngram-placement ram`; root unit + `LimitMEMLOCK=infinity`), **fp8 KV 7.32 KiB/token**, **MTP spec decode depth 3**, *…
|
||||
| Dankclaw | `frank-large` | **halogen container** (`ghcr.io/peonist-ai/halogen@sha256:dc0a39a0…`, digest-pinned, plain `podman run` via `scripts/serve-frank-large.sh`, root systemd unit) | `peonist-ai/halogen-qwen3.8-27b` **`qwen3.8-27b-p1w4d-d2.hgn`** (35,865,565,184 B; the `.hgn` format loads in NO other engine — llama.cpp, vLLM and transformers all refuse it), **DFlash2 spec decode (`HALOGEN_DRAFTER=2`)**, **1 slot × 200,700 ctx** — `HALOGEN_KV_SLOTS=1` is load-bearing: batching XOR speculation, slots>1 silently disables the drafter (measured: 8 slots at serial ~6 t/s/stream), d2 KV (2× fp8, 64 KiB/token → 12.2 GiB pool, engine sizes it and prints a boot ledger naming any clamp), **TEXT-ONLY** (the engine ignores the vision encoder — vision is frank-small's job), **censored base** (the ROCmFPX AGENT rollback is the refusal escape hatch), **no server-side sampler: absent temperature is GREEDY**, so the card's thinking recipe (temp 1.0 / top_p 0.95) rides the wire in `models.yml`. Publisher card 31.7 t/s mean across eight text workloads vs the retired ROCmFPX endpoint's measured 27.6–28.1. Prompt over the slot AND `max_tokens` over `HALOGEN_MAX_TOKENS_CAP` are both 400s naming the limit, never truncations. Serve passes NO `--ulimit nofile` (rootless runc cannot raise Dankclaw's 524288 hard limit — see Key Lessons). Cutover 2026-10-05|7770|
|
||||
| Dankclaw | `frank-small` | llama.cpp master (0.5.0-dev, commit `5fc4f3c`), CUDA sm_86 build (root systemd unit, relinked) | ukisai/Swift-1.5-Qwen3.8-27B-GSQ-RCO-GGUF **IQ3_S -mtp** (27B dense qwen3_5 hybrid, 12,120,016,896 B; a per-tensor allocation mix of stock types; the -mtp file's MTP head present but NOT drafted — **spec OFF** since 2026-10-06, ngram skipped on the recurrent-rollback law) + unsloth's Qwen3.8-27B **F16 mmproj** for **vision** (no Swift projector ships; the base vision stack was hash-proven byte-identical to Swift's), on the RTX 3090, **2 × 131,072** (Frank's 128k cap each; the tight fit he ordered 2026-10-06 — **1,397 MiB measured free**, the 2-3 GiB floor knowingly violated) with **q8_0 K + q8_0 V (FP8 class, 34 KiB/token)** under flash attention, batch 4096 / ubatch 512; **48.0 t/s** no-spec decode (MTP reference 58.9-66.9). Supersedes BOTH same-day payloads: the live MiMo-V2.6 Q6_K 2×200,704 f16-KV shape and the Ornith-1.5-9B Q8_0 swap that was committed (77decb5..380aafa) but never deployed. | 7771 |
|
||||
| Dankclaw | `frank-small` | llama.cpp master (0.5.0-dev, commit `5fc4f3c`), CUDA sm_86 build (root systemd unit, relinked) | ajgazin/Swift-1.5-Qwen3.8-27B-Uncensored-Dynamic-MTP-GGUF **RCO-IQ3_XXS -mtp** (27B dense qwen3_5 hybrid, 10,442,827,392 B; a per-tensor allocation mix of stock types; the MTP head in the file **drafted** — **spec ON** (draft-mtp depth 3) since 2026-10-06 evening, ngram skipped on the recurrent-rollback law) + the publisher's own **BF16 mmproj** for **vision**, on the RTX 3090, **2 × 131,072** (Frank's 128k cap each; the tightest fit in the endpoint's history — **489 MiB measured free**, the 2-3 GiB floor knowingly violated) with **q8_0 K + q8_0 V (FP8 class, 34 KiB/token)** under flash attention, batch 4096 / ubatch 512; **63.3 t/s recipe decode** (MTP acceptance 49.8 %; 48.0 no-spec). Supersedes the same-morning IQ3_S-mtp payloads: the two-slot no-spec shape and the one-slot MTP shape (both 2026-10-06; payload on disk).|7771|
|
||||
|
||||
Retired endpoints (`frank-npu`, and every prior runtime) are in
|
||||
the [runbook index](#runbook-index). The full swap history lives in
|
||||
@@ -401,16 +401,18 @@ rollback (payloads removed 2026-10-03; `scripts/build-gufo.sh` stays).
|
||||
`/home/dank/GitPackages/llama-master/build-cuda/bin/llama-server`,
|
||||
`GGML_CUDA_FA_ALL_QUANTS=ON`) as a **root systemd unit**
|
||||
(`scripts/frank-small.service`, `relink_unit`ed into
|
||||
`/etc/systemd/system/`), serving `ukisai/Swift-1.5-Qwen3.8-27B-GSQ-RCO-GGUF`
|
||||
at **IQ3_S -mtp** (12,120,016,896 B, sha256 `9aecf1cd…`) **plus
|
||||
`mmproj-Qwen3.8-27B-F16.gguf`** (927,607,488 B, sha256 `cbb841a9…`), both
|
||||
`/home/dank/models/Swift15-IQ3S/`, on port 7771. Cutover 2026-10-05
|
||||
(evening) on Frank's explicit contract: **128k context cap, KV at FP8,
|
||||
vision on, as many 128k contexts as fit** — the answer is ONE, by
|
||||
arithmetic. The same-day payloads it supersedes: the LIVE MiMo-V2.6 Q6_K
|
||||
shape and the Ornith-1.5-9B Q8_0 swap that was committed (77decb5..380aafa)
|
||||
but never deployed (blocked at the docs gate; the docs debt is what this
|
||||
section settles).
|
||||
`/etc/systemd/system/`), serving `ajgazin/Swift-1.5-Qwen3.8-27B-Uncensored-Dynamic-MTP-GGUF`
|
||||
at **RCO-IQ3_XXS -mtp** (10,442,827,392 B, sha256 `e13d3e74…`) **plus
|
||||
the publisher's own `mmproj-BF16.gguf`** (931,145,888 B, sha256
|
||||
`19acd7fc…`), both `/home/dank/models/Swift15-UncIQ3XXS/`, on port 7771.
|
||||
Cutover 2026-10-05 (evening) on Frank's explicit contract: **128k
|
||||
context cap, KV at FP8, vision on, as many 128k contexts as fit**;
|
||||
reshaped twice on 2026-10-06 — morning to two 131,072 slots no-spec,
|
||||
evening to this UNCERSED RCO-IQ3_XXS payload with MTP back on. The
|
||||
same-day payloads it supersedes: the LIVE MiMo-V2.6 Q6_K shape and the
|
||||
Ornith-1.5-9B Q8_0 swap that was committed (77decb5..380aafa) but never
|
||||
deployed (blocked at the docs gate; the docs debt is what this section
|
||||
settles).
|
||||
|
||||
**Architecture: qwen3_5 hybrid, bigger** — block_count 65 (64 real layers +
|
||||
the blk.64 MTP head), `full_attention_interval 4` ⇒ **16 full-attention +
|
||||
@@ -420,51 +422,59 @@ at q8_0**. The DeltaNet state is a fixed per-slot buffer (~150 MiB/slot at
|
||||
48 linear layers × 48 value heads). Header facts were read from the Hub
|
||||
file by HTTP range + struct parse before anything was downloaded.
|
||||
|
||||
**The shape (2026-10-06, Frank's tight-fit order):** `--ctx-size 262144
|
||||
--parallel 2` = **TWO 131,072-token conversations** (Frank's 128k cap each;
|
||||
`n_ctx_slot = CTX_SIZE / PARALLEL`), `--flash-attn on` pinned, **q8_0 K +
|
||||
q8_0 V** (llama.cpp's FP8 class — no true fp8 KV dtype exists; 8.5 effective
|
||||
bits; supersedes the same-day f16/f16 rule written for the Ornith 9B fit),
|
||||
all layers on the GPU, `--mmproj` for vision, batch 4096 / ubatch 512.
|
||||
**Speculative decoding is OFF** (same order): the -mtp file's head stays but
|
||||
is not drafted with; ngram-mod skipped on purpose — on a qwen35 hybrid
|
||||
ngram disables recurrent-state rollback, so a rejected draft corrupts the
|
||||
DeltaNet state.
|
||||
**The shape (2026-10-06, Frank's tight-fit order, MTP back on in the
|
||||
evening):** `--ctx-size 262144 --parallel 2` = **TWO 131,072-token
|
||||
conversations** (Frank's 128k cap each; `n_ctx_slot = CTX_SIZE /
|
||||
PARALLEL`), `--flash-attn on` pinned, **q8_0 K + q8_0 V** (llama.cpp's
|
||||
FP8 class — no true fp8 KV dtype exists; 8.5 effective bits; supersedes
|
||||
the same-day f16/f16 rule written for the Ornith 9B fit), all layers on
|
||||
the GPU, `--mmproj` for vision, batch 4096 / ubatch 512. **Speculative
|
||||
decoding is ON** (draft-mtp, depth 3): the -mtp file's head is drafted
|
||||
against the main model's own weights; ngram-mod skipped on purpose — on
|
||||
a qwen35 hybrid ngram disables recurrent-state rollback, so a rejected
|
||||
draft corrupts the DeltaNet state.
|
||||
|
||||
**Measured at the two-slot boot (2026-10-06): 22,728 used / 1,397 MiB
|
||||
free** (`nvidia-smi` free field) — under the old 2-3 GiB floor BY ORDER ("a
|
||||
very tight fit"); a 512×512 solid-red image still answers `Red` afterwards
|
||||
(1,363 MiB free after the probe), so the fit carries the vision transients.
|
||||
The slot-2 pricing came from the measured 1×131,072 MTP boot (2026-10-05:
|
||||
19,404 used / 4,721 free — also the q8_0 proof, f16 would have left ~700):
|
||||
the second q8_0 slot costs 4,352 MiB KV + ~150 MiB DeltaNet, funded by
|
||||
dropping the MTP draft ctx (~0.4 GiB) and ubatch 1024→512 (~0.3 GiB,
|
||||
inferred from the measured 616 MiB/doubling rung on the 9B). **Decode
|
||||
without the drafter: 48.0 tok/s (temp 0) / 47.8 (recipe temp 1.0)** — the
|
||||
MTP references stay in frank-small.env for the day the head returns (44.8 %
|
||||
acceptance at the recipe temp ⇒ 58.9 tok/s; 52.1 % at temp 0.8 ⇒ 66.1).
|
||||
`reasoning_effort` probe unchanged: `xhigh` 200, `high` → 500 Jinja raise
|
||||
(the models.yml fold stays mandatory).
|
||||
**Measured at the two-slot MTP boot (2026-10-06 evening): 23,636 used /
|
||||
489 MiB free** (`nvidia-smi` free field) — the tightest fit in the
|
||||
endpoint's history, under the old 2-3 GiB floor BY ORDER; a 512×512
|
||||
solid-red image still answers `Red` afterwards (489 MiB free after the
|
||||
probe), so the fit carries the vision transients. The MTP draft ctx
|
||||
costs **~2.4 GiB measured** (23,636 − 22,728 + 1,561) — ~6× the ~0.4 GiB
|
||||
the one-slot era assumed, because the drafter's KV is built against the
|
||||
target's full 262,144 context (the draft window), not the 3-token
|
||||
proposal depth; the lighter RCO-IQ3_XXS quant (−1.56 GiB vs IQ3_S-mtp)
|
||||
funds it. **Decode: 63.3 tok/s (recipe temp 1.0) / 72.9 (temp 0)** with
|
||||
MTP acceptance 49.8–62.4 % (48.0 no-spec — the drafter earned its
|
||||
2.4 GiB). `reasoning_effort` probe unchanged: `xhigh` 200, `high` → 500
|
||||
Jinja raise (the models.yml fold stays mandatory).
|
||||
|
||||
**Vision without a Swift projector**: no Swift repo ships one (ukisai's
|
||||
README is explicit), so the projector is unsloth's mmproj built from the
|
||||
SHARED BASE `Qwen/Qwen3.8-27B` — legal because Swift-1.5's vision stack was
|
||||
hash-proven byte-identical to the base (333/333 tensor names, 6/6 sampled
|
||||
tensors: merger fc1/fc2, blocks 0/13/26) on 2026-10-05. The probe traps
|
||||
carry over: ≥256 px probe images or the model answers "video"; only the
|
||||
OpenAI `image_url` content part reaches the model.
|
||||
**Vision with the publisher's own projector**: ajgazin's repo SHIPS
|
||||
`mmproj-BF16.gguf` in the same repo (the IQ3_S era's unsloth mmproj was
|
||||
built from the SHARED BASE `Qwen/Qwen3.8-27B`, legal because Swift-1.5's
|
||||
vision stack was hash-proven byte-identical to the base). The probe
|
||||
traps carry over: ≥256 px probe images or the model answers "video";
|
||||
only the OpenAI `image_url` content part reaches the model. **New on
|
||||
this payload: the uncensored model thinks more than the censored
|
||||
Swift 1.5** — a 64-token budget is eaten entirely by
|
||||
`reasoning_content` (empty `content`); 128 tokens clears the vision
|
||||
probe.
|
||||
|
||||
The GSQ-RCO "IQ3_S" tier is a **per-tensor allocation mix** of stock quant
|
||||
types (IQ2_XS 144 / IQ3_XXS 96 / Q6_K 78 / F32 360 / BF16 96 / Q3_K_M 39 …)
|
||||
— stock llama.cpp loads it; the tensor-type histogram is the law (see Key
|
||||
Lessons). Publisher KLD vs Swift BF16: 0.0513 development / 0.024–0.052
|
||||
held-out; the MTP packaging is NOT separately evaluated by the publisher.
|
||||
The RCO-IQ3_XXS tier is a **per-tensor allocation mix** of stock quant
|
||||
types (IQ3_S 97 / BF16 96 / IQ3_XXS 83 / IQ2_S 72 / IQ4_XS 33 / IQ2_XS 32
|
||||
/ IQ2_XXS 30 / Q2_K 28 / Q4_K 19 / Q6_K 8 / IQ1_S 4 / IQ1_M 4) — stock
|
||||
llama.cpp loads it; the tensor-type histogram is the law (see Key
|
||||
Lessons). Publisher KLD vs Swift BF16: mean 0.002631 / 90th 0.042136 /
|
||||
max 34.49 — RCO is the publisher's "more experimental" family, and the
|
||||
payload is the UNCECERSED Swift 1.5 (23/100 refusals vs Swift 1.5's
|
||||
98/100, KL 0.0884).
|
||||
|
||||
Runbook:
|
||||
`serverAppConfigs-docs/LLM/frank-small-llama-swift15-iq3s-mtp-131072.md`.
|
||||
Rollback: `/home/dank/models/MiMo-Q6K/` (the LIVE payload until the cutover;
|
||||
revert to the 2×200,704 f16 shape — [[frank-small-llama-mimo-q6k-2x200704]])
|
||||
or `/home/dank/models/Ornith-Q8/` (the committed-never-deployed Q8_0;
|
||||
`serverAppConfigs-docs/LLM/frank-small-llama-swift15-unc-iq3xxs-mtp-131072.md`.
|
||||
Rollback: `/home/dank/models/Swift15-IQ3S/` (the IQ3_S-mtp payload live
|
||||
until the 2026-10-06 evening swap — revert da36fa3 for the two-slot
|
||||
no-spec shape) or `/home/dank/models/MiMo-Q6K/` (revert to the
|
||||
2×200,704 f16 shape — [[frank-small-llama-mimo-q6k-2x200704]]) or
|
||||
`/home/dank/models/Ornith-Q8/` (the committed-never-deployed Q8_0;
|
||||
revert to 380aafa's tree).
|
||||
|
||||
### frank-primary — Radiance (StillDeadcode), Qwen3.8-Flash-Next FP8 native, TP=2 (Dankserver, ACTIVE)
|
||||
@@ -988,7 +998,7 @@ Active:
|
||||
| Service | Runbook |
|
||||
|---------|---------|
|
||||
| frank-large (halogen container, Qwen3.8-27B .hgn + DFlash2, 1×200,700, text-only, Dankclaw) | `serverAppConfigs-docs/LLM/frank-large-halogen27b-dflash2.md` |
|
||||
| frank-small (llama.cpp CUDA, Swift-1.5-27B GSQ-RCO IQ3_S-mtp, 1×131,072 q8_0 KV, Dankclaw) | `serverAppConfigs-docs/LLM/frank-small-llama-swift15-iq3s-mtp-131072.md` |
|
||||
| frank-small (llama.cpp CUDA, Swift-1.5-27B Uncensored RCO IQ3_XXS-mtp, 2×131,072 draft-mtp q8_0 KV, Dankclaw) | `serverAppConfigs-docs/LLM/frank-small-llama-swift15-unc-iq3xxs-mtp-131072.md` |
|
||||
| frank-primary (radiance StillDeadcode, Qwen3.8-Flash-Next-FP8 native, 2×R9700 TP=2, Dankserver) | `serverAppConfigs-docs/LLM/frank-primary-radiance-qwen38-native-fp8.md` |
|
||||
| Dankclaw kernel posture (`amd_iommu=off`) | `serverAppConfigs-docs/LLM/dankclaw-iommu-translation-off.md` |
|
||||
| Deployment flow + incidents | `serverAppConfigs-docs/LLM/deployment.md` |
|
||||
@@ -1001,7 +1011,7 @@ Retired (rollback targets and history):
|
||||
| tcclaviger vLLM fork Qwen3.8-Flash-Next-Uncensored FP8, TP=2, shape G (`frank-primary`) | Dankserver | 2026-09-29 → 10-05 (rollback target — tag `frank-primary-vllm-shapeG-20261003`; trio + env lore in the tag, image in rootless storage) | `dankserver-qwen38-fp8-expert-offload-tuning.md` |
|
||||
| FreeToken PR #587 ROCm, Qwen3.8-Flash-Next-Uncensored-FP8, ONE R9700 (`frank-primary`) | Dankserver | 2026-10-05 → 10-05 (rollback target — tag `frank-primary-freetoken-pr587-20261005`; trio + Dockerfile in the tag, image `localhost/frank-primary-freetoken:pr587-77a7201` and orcarouter payload on disk) | `frank-primary-freetoken-pr587.md` |
|
||||
| llama.cpp master MiMo-V2.6-Distill-Qwen-9B Q6_K 2×200,704 f16 KV (`frank-small`) | Dankclaw | 2026-10-03 → 10-05 (rollback target — payload on disk; owns the ubatch-2048 A/B; the Ornith swap of 10-05 was committed but never deployed, so this was the LIVE payload Swift replaced) | `frank-small-llama-mimo-q6k-2x200704.md` |
|
||||
| llama.cpp Ornith-1.5-9B Q8_0, ONE 262,144 f16 KV (`frank-small`) | Dankclaw | 2026-10-05 (committed 77decb5→380aafa, never deployed — superseded by Swift the same evening; payload on disk) | trail in `frank-small-llama-swift15-iq3s-mtp-131072.md` |
|
||||
| llama.cpp Ornith-1.5-9B Q8_0, ONE 262,144 f16 KV (`frank-small`) | Dankclaw | 2026-10-05 (committed 77decb5→380aafa, never deployed — superseded by Swift the same evening; payload on disk) | trail in `frank-small-llama-swift15-unc-iq3xxs-mtp-131072.md` |
|
||||
| ROCmFPX llama.cpp fork Qwen3.8-27B Q8_0_ROCMFPX_AGENT + MTP (`frank-large`) | Dankclaw | 2026-10-02 → 10-03 (rollback target, payload on disk) | `frank-large-rocmfpx-q8agent-mtp.md` |
|
||||
| gufo v0.1.1 Qwen3.8-27B UD-Q8_K_XL/UD-Q4_K_XL + DFlash2 (`frank-large`) | Dankclaw | 2026-09-28 → 10-01, again 10-01 → 10-02 (payloads removed from disk 2026-10-03; rollback = re-download) | `frank-large-gufo-qwen38-27b.md` |
|
||||
| vLLM TheRock MiMo-V2.6-Distill-Qwen-9B BF16 + cross-model MTP (`frank-large`) | Dankclaw | 2026-10-01 (same-day rollback to gufo) | `frank-large-vllm-mimo-v26-bf16.md` |
|
||||
|
||||
Reference in new issue
Block a user