#!/usr/bin/env bash set -euo pipefail repo_id="${REPO_ID:-Blackfrost-AI/Qwen3.8-27B-ABLITERATED-GGUF}" quant="${QUANT:-Q4_K_M}" download_dir="${MODEL_DIR:-./Qwen3.8-27B-ABLITERATED-GGUF}" context_size="${CTX_SIZE:-16384}" gpu_layers="${GPU_LAYERS:-999}" host="${HOST:-0.0.0.0}" port="${PORT:-8080}" enable_vision="${ENABLE_VISION:-0}" projector_type="${MMPROJ_TYPE:-Q8_0}" model_file="Qwen3.8-27B-ABLITERATED-${quant}.gguf" model_path="${download_dir}/${model_file}" if ! command -v hf >/dev/null 2>&1; then echo "Missing 'hf' CLI. Install it with: pip install -U huggingface_hub" exit 1 fi if ! command -v llama-server >/dev/null 2>&1; then echo "Missing llama-server. Install a current llama.cpp build and place llama-server on PATH." exit 1 fi mkdir -p "${download_dir}" hf download "${repo_id}" "${model_file}" --local-dir "${download_dir}" args=( -m "${model_path}" -ngl "${gpu_layers}" -fa on --jinja --host "${host}" --port "${port}" -c "${context_size}" --temp 1.0 --top-p 0.95 --top-k 20 ) if [[ "${enable_vision}" == "1" ]]; then projector_file="mmproj-Qwen3.8-27B-ABLITERATED-${projector_type}.gguf" projector_path="${download_dir}/${projector_file}" hf download "${repo_id}" "${projector_file}" --local-dir "${download_dir}" args+=(--mmproj "${projector_path}") fi exec llama-server "${args[@]}"