Local overrides to the pinned runner for production chat:
- --reasoning on --reasoning-format deepseek (thinking to
message.reasoning_content, matching the retired v3 service so the
fleet's reasoning clients work)
- --reasoning-budget -1 (unrestricted thinking)
- --chat-template-kwargs '{"preserve_thinking":"true"}' (preserve
thinking tokens in the conversation history across turns)
- batch 4096 / ubatch 2048 (larger than the runner's 2048/512; unified
memory has headroom)
The Kairic IU4 lane (--kairic-edge) and the MTP draft fast path are
unaffected.
82 lines
3.7 KiB
Bash
82 lines
3.7 KiB
Bash
# Tunables for frank-default-large (Kairic Edge llama.cpp, dankclaw,
|
|
# Strix Halo gfx1151).
|
|
#
|
|
# Runtime: the llama-server built from the pinned ciru-ai/ROCmFPX tag
|
|
# kairic-edge-qwen38-27b-v1 (Kairic Edge IU4 lane: PromptForge + Dual
|
|
# View + native RDNA 3.5 IU4 matrix compute), built against the private
|
|
# TheRock ROCm 7.15 SDK kept in the retired ling3-ciru venv.
|
|
# Model: jcbtc/Qwen3.8-27B-IU4-Kairic-Edge, four-artifact payload
|
|
# (GGUF + FFN/GDN/GDN-Output .pfs sidecars, 26.05 GiB total). Alias
|
|
# frank-default-large, port 52625. See docs/kairic-edge.md.
|
|
#
|
|
# This runtime replaced the retired v3 CIRU ActiveFPX PromptForge
|
|
# service. The v3 model files remain in
|
|
# /home/dank/models/CIRU-Qwen3.8-27B-ActiveFPX-v3/ and the v3 binary in
|
|
# /home/dank/ciru-qwen38/ROCmFPX/build-promptforge/ for rollback.
|
|
#
|
|
# WARNING: do not name any variable TEMP, HOST, or GPU_MAX_HEAP_SIZE. The
|
|
# ROCm HIP runtime reads those bare env vars (2026-08-13 TEMP incident).
|
|
# llama.cpp reads --host/--port/--temp as CLI flags, never as env vars.
|
|
|
|
# Kairic Edge llama-server binary (pinned tag build; see
|
|
# docs/kairic-edge.md for the build runbook and binary identity).
|
|
LLAMA_BIN=/home/dank/ciru-qwen38/ROCmFPX-kairic/build-kairic/bin/llama-server
|
|
|
|
# Model files (Kairic Edge four-artifact payload). The sidecars are
|
|
# accelerator-specific prepacked copies of selected weights; they are
|
|
# required, not optional.
|
|
MODEL_DIR=/home/dank/models/Kairic-Qwen3.8-27B-IU4-Edge
|
|
MODEL_FILE=Qwen3.8-27B-IU4-Kairic-Edge.gguf
|
|
FFN_PFS=Qwen3.8-27B-Kairic-IU4-FFN.pfs
|
|
GDN_PFS=Qwen3.8-27B-Kairic-IU4-GDN.pfs
|
|
GDN_OUTPUT_PFS=Qwen3.8-27B-Kairic-IU4-GDN-Output.pfs
|
|
|
|
# ROCm 7.15 SDK paths (inside the retired ling3-ciru venv). The serve
|
|
# script exports ROCM_PATH and LD_LIBRARY_PATH from these so the 7.15
|
|
# libraries precede any system ROCm 7.2.4.
|
|
ROCM_DEVEL=/home/dank/ling3-ciru/Ling-3.0-Flash-CIRU-int4-Strix-native/.venv/lib/python3.12/site-packages/_rocm_sdk_devel
|
|
ROCM_LIB=/home/dank/ling3-ciru/Ling-3.0-Flash-CIRU-int4-Strix-native/.venv/lib/python3.12/site-packages/_rocm_sdk_libraries
|
|
ROCM_CORE=/home/dank/ling3-ciru/Ling-3.0-Flash-CIRU-int4-Strix-native/.venv/lib/python3.12/site-packages/_rocm_sdk_core
|
|
|
|
ALIAS=frank-default-large
|
|
BIND_ADDR=0.0.0.0
|
|
LISTEN_PORT=52625
|
|
|
|
# Serving: the qualified Kairic profile (pinned runner defaults). Full
|
|
# native 262144 context, 1 slot, batch 2048 / ubatch 512, 16 target /
|
|
# 32 batch threads, f16 target and draft KV, 32 context checkpoints,
|
|
# 8192 MiB prompt cache with idle-slot persistence. Context checkpoints
|
|
# are required for this hybrid recurrent model; do not remove CTX_CHECKPOINTS
|
|
# while the prompt cache is enabled.
|
|
CTX_SIZE=262144
|
|
PARALLEL=1
|
|
# Local override: the pinned runner uses 2048/512; production chat uses a
|
|
# larger 4096/2048 batch (unified memory has headroom).
|
|
BATCH_SIZE=4096
|
|
UBATCH_SIZE=2048
|
|
TARGET_THREADS=16
|
|
BATCH_THREADS=32
|
|
CACHE_TYPE_K=f16
|
|
CACHE_TYPE_V=f16
|
|
CTX_CHECKPOINTS=32
|
|
CACHE_RAM=8192
|
|
|
|
# Native MTP draft (depth 4, p_min 0, backend sampling) — the pinned
|
|
# runner's explicit MTP4.
|
|
SPEC_DRAFT_N_MAX=4
|
|
SPEC_DRAFT_N_MIN=0
|
|
SPEC_DRAFT_P_MIN=0.0
|
|
SPEC_DRAFT_P_SPLIT=0.10
|
|
|
|
# Sampling: the pinned runner keeps the deterministic evaluation
|
|
# profile (temp 0 / top-p 1 / top-k 0 / min-p 0) as the server default.
|
|
# Clients override per request; the model card recommends Qwen live
|
|
# values for ordinary chat (temp 0.7, top-p 0.8, top-k 20, min-p 0,
|
|
# presence_penalty 1.5).
|
|
#
|
|
# Reasoning: the qualified profile runs reasoning off, but production
|
|
# chat runs --reasoning on --reasoning-format deepseek (thinking goes to
|
|
# message.reasoning_content, matching the retired v3 service) with
|
|
# --reasoning-budget -1 (unrestricted) and chat_template_kwargs
|
|
# preserve_thinking=true (preserve thinking tokens across turns).
|