The managed-skill library was regenerated: 94 narrow per-incident skills
replaced by 25 broader ones (radiance-*, llamacpp-*, homepage-*, fleet/
endpoint ops). Git renders this as mass delete + mass add because whole
directories changed name; old content stays in history at 12c5e88.
Surface check: the 25 on disk are exactly the skills the harness advertises
this session.
2.6 KiB
2.6 KiB
name, description
| name | description |
|---|---|
| radiance-w4-convert-playbook | Convert a BF16 Qwen3.8-Flash-Next checkpoint to a GPTQ-w4 radiance .rad: recipe law, calibration tap, derive-protected-experts, convert gates, KLD gate shape and flags. |
Radiance w4 convert playbook (dankserver)
End-to-end recipe for rad-convert GPTQ w4 on the qwen4exp arch (engine pin stilldeadcode/radiance@sha256:4c3f48... = 1.0.13 for convert/KLD/serve; 1.2.0 sha256:665775... ONLY for the calibration tap).
Pipeline
- Calibration corpus ~10M tokens (
make-calib-corpus.py, seed-pinned; keepkld.jsonlfor the gate — regenerate deterministically if lost). - KLD reference on the BF16 container (no-recipe convert,
--kld-record), same engine as scoring. - Calib serve on 1.2.0:
RADIANCE_CALIB_DIR+RADIANCE_CALIB_TOKENS=10000000; tap inqwen4exp_fp8.sowritesgram.r<rank>.blk.L.ffn_down_exps.<e>.bin(RADGRAM2, 32 B header + k×k f32); DONE markcalibration wrote. - Derive protected experts from the Grams: energy share ≥3 % AND ≥3× routing share, even count per rank half.
- Recipe law: ONE encoding per expert table — all routed experts through GPTQ w4 (
libquant: GPTQ quantises 'blk.N.ffn_gate_up_exps' against M calibration file(s)); PROTECTED section = whole bf16 experts ONLY, spliced between# PROTECTED-BEGIN/ENDmarkers. The $CALIB env var is expanded by rad-convert. - Convert host-backend (no GPU; prod-compatible), ~6 min/layer × 49, CPU-saturating. In-container paths must include subdirs (mount prefix strip). Gate: rad-info shows gptq rule; size floor from geometry, not by analogy.
KLD gate shape (1.0.13)
--placement expert_tiered --weights-disk-tier --host-pool-mib 40960 --deterministic --gpu-headroom-mib 512 --num-speculative-tokens 0 --kv-cache-dtype fp8 --max-model-len 16384 --ngram-placement ram --kld-ref DIR --kld-out FILE --vram-kv-mib 2048 --max-num-seqs 4 --max-num-batched-tokens 3072.
--kld-reftakes NO--kld-corpus(rejects the pair).- w4 arena ≈ 262.5 MiB per 256 tokens of MNBT — 32768 needs 33 GiB of VRAM.
- w4 gate_up experts can't disk-tier stream (stored ≠ served form) — pool must hold ~12 GiB/rank.
- Gate: mean KL ≤ 0.03 AND top-1 ≥ 95 % vs reference.
Pitfalls
- Editing a running bash script corrupts its execution (lazy byte-offset reads) — sync after the run.
pkill -f <pattern>kills your own ssh watcher if the pattern matches the ssh command line.- zsh on dankserver eats nested quoting — write scripts locally, scp,
sh /tmp/x.sh. - Radiance image has no bash/strings:
--entrypoint sh,grep -acwith positive control.