Files
esh-pfi-infrastructure/scripts/erp-tune-gx10/pull-verify-jenerallee78.sh
T
vh 3fec668bf2 feat(erp-tune): run 6 on pfi-gx10 — jenerallee78 ARA-abliterated base (index 33c59654) pulled + byte-verified, run-5 recipe byte-held, launched under operator-2026-09-08-rnd-run6
- scripts/erp-tune-gx10/pull-verify-jenerallee78.sh + base-pin-jenerallee78-shards.txt:
  revision-pinned root-shard pull, 32/32 sha256+size vs brokkr-smithy pins, index
  set-equal to stock, STOCK tokenizer set installed over the repo's (which bakes in
  a 256-token truncation); repo originals kept as *.repo
- scripts/erp-tune-gx10/run-06-gx10.json + launch-run-06.sh: run-05 config with the
  base swapped, recipe-r6, survivors-r5 verbatim, stock template path
- docs/runbooks/gx10-run-06.md: pull/verify record, free-check result (encode
  reproduces run 5 exactly), hf download --include gotcha, gate naming
  (erp-seat-base-ara / erp-tune-v6)
2026-09-08 04:24:38 -07:00

55 lines
3.1 KiB
Bash

#!/usr/bin/env bash
# Pull + verify jenerallee78/gemma-4-26B-A4B-it-ara-abliterated @ 0631379a onto pfi-gx10.
# Root shards + small files only; no GGUFs, no mlx-4bit. Verifies bytes against the
# brokkr-smithy pins (base-pin-jenerallee78.json) and installs the STOCK tokenizer set.
# Expects ~/erp-tune/base-pin-jenerallee78-shards.txt (file sha256 bytes per line).
set -uo pipefail
export PATH="$HOME/.local/bin:$PATH"
REPO=jenerallee78/gemma-4-26B-A4B-it-ara-abliterated
REV=0631379a3d859e0059bc8d9b21ab5b654dfc272c
DEST=$HOME/models/gemma4-26b-a4b-it-ara-abliterated-jenerallee78-0631379a
STOCK=$HOME/models/gemma4-26b-a4b-it-bf16
PINS=$HOME/erp-tune/base-pin-jenerallee78-shards.txt
echo "== start $(date -u +%FT%TZ) on $(hostname)"
mkdir -p "$DEST"
echo "== download"
uv run --quiet --with 'huggingface_hub[hf_transfer]' hf download "$REPO" --revision "$REV" \
--local-dir "$DEST" \
--include 'model-*-of-00032.safetensors' --include 'config.json' --include 'generation_config.json' \
--include 'model.safetensors.index.json' --include 'chat_template.jinja' --include 'ara_config.json' --include 'README.md' \
--include 'tokenizer.json' --include 'tokenizer_config.json'
rc=$?
echo "== download rc=$rc $(date -u +%FT%TZ)"
[ $rc -eq 0 ] || { echo "DOWNLOAD FAILED rc=$rc"; exit 2; }
cd "$DEST"
echo "== shard sha256 vs pins"
fail=0
while read -r f oid bytes; do
[ -n "$f" ] || continue
sz=$(stat -c %s "$f" 2>/dev/null || echo MISSING)
got=$(sha256sum "$f" 2>/dev/null | cut -d' ' -f1)
if [ "$sz" = "$bytes" ] && [ "$got" = "$oid" ]; then echo "OK $f"; else echo "FAIL $f size=$sz want=$bytes sha=$got want=$oid"; fail=$((fail+1)); fi
done < "$PINS"
echo "== shard result: fail=$fail"
echo "== index + config checks"
python3 - "$STOCK" <<'PY'
import json,sys,hashlib
stock=sys.argv[1]
d=json.load(open('model.safetensors.index.json'));s=json.load(open(f'{stock}/model.safetensors.index.json'))
names=set(d['weight_map']);snames=set(s['weight_map'])
print('index weight_map:',len(names),'stock:',len(snames),'set_equal:',names==snames)
print('index total_size:',d['metadata'].get('total_size'),'stock:',s['metadata'].get('total_size'),'equal:',d['metadata'].get('total_size')==s['metadata'].get('total_size'))
c=json.load(open('config.json'))
print('config architectures:',c.get('architectures'),'dtype:',c.get('dtype') or c.get('torch_dtype'))
print('INDEX_SHA256', hashlib.sha256(open('model.safetensors.index.json','rb').read()).hexdigest())
PY
echo "== repo tokenizer set as shipped (kept aside as *.repo)"
sha256sum tokenizer.json tokenizer_config.json chat_template.jinja
python3 -c "import json;print('repo tokenizer.json truncation:',json.load(open('tokenizer.json')).get('truncation'))"
for f in tokenizer.json tokenizer_config.json chat_template.jinja; do mv -n "$f" "$f.repo"; cp "$STOCK/$f" "$f"; done
echo "== STOCK tokenizer set installed (sha256):"
sha256sum tokenizer.json tokenizer_config.json chat_template.jinja
python3 -c "import json;print('installed tokenizer.json truncation:',json.load(open('tokenizer.json')).get('truncation'))"
echo "== listing"; ls -la "$DEST"; du -sh "$DEST"
echo "== done $(date -u +%FT%TZ) shard_fail=$fail"