#!/usr/bin/env bash # Muse-Glimmer-30B-Abliterated-GGUF — one-command serve with DFlash speculative decoding. # Requires a recent llama.cpp build (master) with DFlash support, and `hf` (huggingface_hub). # # Usage: ./serve.sh # Tunables (env): QUANT=Q8_0 PORT=8080 CTX=16384 FA=on NGL=999 MMPROJ= # FA=off -> use if `-fa on` hangs at load on a brand-new GPU + older CUDA toolkit # MMPROJ=mmproj-Muse-Glimmer-30B-Abliterated-F16.gguf -> enable image input set -euo pipefail REPO="Blackfrost-Research/Muse-Glimmer-30B-Abliterated-GGUF" QUANT="${QUANT:-Q8_0}" # Q2_K Q3_K_S Q3_K_M Q4_K_S Q4_K_M Q5_K_S Q5_K_M Q6_K Q8_0 PORT="${PORT:-8080}" CTX="${CTX:-16384}" FA="${FA:-on}" NGL="${NGL:-999}" DIR="${DIR:-./muse}" MMPROJ="${MMPROJ:-}" TARGET="Muse-Glimmer-30B-Abliterated-${QUANT}.gguf" DRAFT="dflash-Muse-Glimmer-30B-Abliterated-F16.gguf" mkdir -p "$DIR" for f in "$TARGET" "$DRAFT" ${MMPROJ:+$MMPROJ}; do if [ ! -f "$DIR/$f" ]; then echo ">> downloading $f" hf download "$REPO" "$f" --local-dir "$DIR" fi done echo ">> serving $TARGET + DFlash on :$PORT (fa=$FA)" exec llama-server \ -m "$DIR/$TARGET" \ -md "$DIR/$DRAFT" \ --spec-type draft-dflash --spec-draft-n-max 15 \ -ngl "$NGL" -ngld "$NGL" -fa "$FA" --jinja \ --host 0.0.0.0 --port "$PORT" -c "$CTX" \ --temp 1.0 --top-p 0.95 --top-k 64 \ ${MMPROJ:+--mmproj "$DIR/$MMPROJ"} \ -a "Muse-Glimmer-30B-Abliterated-${QUANT}"