veil-pgd / scripts /run_v021_n60.sh
Klaus Clawd
Release v0.2.1: recover attack strength, cross-arch judges, uncapped frontier eval
255b4a8
Raw
History Blame Contribute Delete
1.46 kB
#!/usr/bin/env bash
# v0.2.1 n=60 harness on a CUDA GPU host. The v0.1-vs-v0.2 comparison showed v0.2 lost frontier
# strength by moving DINOv2+InternViT out of the attack. v0.2.1 puts the FULL ensemble
# back in the attack and adds SEPARATE never-trained cross-arch judges (C-RADIO
# agglomerative + Qwen3-VL captioner tower). Two decisive cells:
# 1. v021_base — 13-tower attack (v0.1 ensemble), M4 ON [recovers v0.1 strength]
# 2. v021_giants — +SigLIP2-giant +MetaCLIP2-H (15-tower), M4 ON [ablation-gate the adds]
# Both scored on the SAME cross-arch held-out judges + written for frontier eval.
set -u
cd ~/workspace/veil-pgd
. .venv/bin/activate
export HF_HOME=${HF_HOME:-~/.cache/huggingface}
# Set HF_TOKEN in your environment if any gated encoders require authentication.
export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
COMMON="--manifest examples/testset60.csv --images examples/testset60 \
--exemplars examples/exemplars --decoys v0.2 \
--steps 120 --eps 6 --subset 6 --grad-norm --max-per-family 2 --min-feature 1 --metrics"
echo "=== [$(date +%H:%M:%S)] CELL 1/2 v021_base (13-tower attack, M4 ON) ==="
python -u -m ensemble.run_attack $COMMON --train v0.2.1-base --out runs/v021_base
echo "=== [$(date +%H:%M:%S)] CELL 2/2 v021_giants (15-tower attack +giants, M4 ON) ==="
python -u -m ensemble.run_attack $COMMON --train v0.2.1 --out runs/v021_giants
echo "=== [$(date +%H:%M:%S)] ALL CELLS DONE ==="