#!/usr/bin/env bash # Fetch candidate payload for frank-zealot: prism-ml/Ternary-Bonsai-2-27B-gguf # at **PQ2_0** (the ternary g128 pack stored 2 bits/trit + fp16 scale per 128) # plus the publisher's Q8_0 vision projector. Public repo — no auth header, # and never a token on the command line (world-readable in /proc//cmdline). # # Why PQ2_0 and not PTQ1_0: measured on the same silicon family (community # 3090 Ti report, PrismML-Eng/Bonsai-demo) PTQ1_0 is ~17 % slower decode and # ~48 % slower prefill than PQ2_0 on Ampere; the model card says the same # (PTQ1_0 wins only on Ada/L4). The pack is consumed packed — 6.71 GiB # resident, never expanded to f16. # # Header facts (HTTP range parse, not the card): arch qwen35, 64 blocks, # full_attention_interval 4 => 16 full-attention + 48 Gated DeltaNet layers, # 4 KV heads x 256 dim, native 262,144, vocab 248,320, and NO nextn/mtp # tensors (block_count is 64 real layers) — so in-file MTP is impossible and # SPEC_TYPE=none is forced by the payload. 402 tensors carry the custom type # id 142 (GGML_TYPE_PQ2_0, group 128): STOCK llama.cpp refuses this file, and # loads the repo's F16 file silently with garbage output — only the # PrismML-Eng/llama.cpp fork applies the prism.hadamard.* activation # transform declared in this file's metadata. # # These ARE LFS files (unlike the HauhauCS payload): the Hub publishes the # oid, and both shas below are the Hub's LFS sha256. The mmproj sha has also # been recomputed locally against the copy in /home/dank/models/Bonsai2-CRACK/. # # NOT pinned by this script: /home/dank/models/Bonsai2-CRACK/ # Bonsai-2-27B-PQ2_0-CRACK.gguf (7,206,168,928 B, sha256 5b24ea3eebc3e0bc..., # fetched 2026-10-06 by an undocumented ad-hoc path). Same size as the # official file, different bytes — a dealign/CRACK (uncensored) variant of the # same ternary pack. Provenance unverified; it is a candidate arm, not this # script's payload. # # Usage: # scripts/download-frank-zealot-bonsai2.sh [DEST_DIR] [--verify-only] set -euo pipefail DEST="" VERIFY_ONLY=0 for arg in "$@"; do case "$arg" in --verify-only) VERIFY_ONLY=1 ;; *) DEST="$arg" ;; esac done DEST="${DEST:-/home/dank/models/Bonsai2-PQ2_0}" # repo | hub-name | dest-name | bytes | sha256 (Hub LFS oid) FILES=( "prism-ml/Ternary-Bonsai-2-27B-gguf|Ternary-Bonsai-2-27B-PQ2_0.gguf|Ternary-Bonsai-2-27B-PQ2_0.gguf|7206168928|3907dc1658db1f78a9826bf8d5bcb8dc65db0d466388937af57f2294fae62ec1" "prism-ml/Ternary-Bonsai-2-27B-gguf|Ternary-Bonsai-2-27B-mmproj-Q8_0.gguf|Ternary-Bonsai-2-27B-mmproj-Q8_0.gguf|629246976|6807ede61d570bb86ba34b756a0fa109edc33668604de867c6ea6d8f1d631903" ) mkdir -p "$DEST" status=0 for entry in "${FILES[@]}"; do IFS='|' read -r repo hubname destname size sha <<<"$entry" url="https://huggingface.co/${repo}/resolve/main/${hubname}" f="$DEST/$destname" if [[ -f "$f" ]] && [[ "$(stat -c%s "$f")" == "$size" ]] \ && sha256sum -c --quiet <(printf '%s %s\n' "$sha" "$f"); then echo "OK $destname" continue fi if (( VERIFY_ONLY )); then echo "MISSING $destname" status=1 continue fi echo "FETCHING $destname (from $repo)" tmp="$f.part" # No resume: `curl -C -` once produced an oversized file on a 31 GiB # payload. -f/--fail-with-body so an HTTP 401/403 body is never a success. curl -fsSL --fail-with-body --retry 3 --retry-delay 5 -o "$tmp" "$url" mv "$tmp" "$f" if [[ "$(stat -c%s "$f")" != "$size" ]]; then echo "SIZE FAIL $destname ($(stat -c%s "$f") != $size)" status=1 continue fi if ! sha256sum -c --quiet <(printf '%s %s\n' "$sha" "$f"); then echo "SHA FAIL $destname" status=1 continue fi echo "VERIFIED $destname" done if (( status == 0 )); then echo "DOWNLOAD_DONE $DEST" else echo "DOWNLOAD_FAILED $DEST" >&2 fi exit "$status"