| #!/bin/bash |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| export HF_HOME="/data/caotue/hf_cache" |
| export HF_DATASETS_CACHE="/data/caotue/hf_cache/datasets" |
| export TORCH_HOME="/data/caotue/torch_cache" |
| export TMPDIR="/data/caotue/tmp" |
|
|
| DEVICE_ID="${DEVICE_ID:-0}" |
| DTYPE="${DTYPE:-bfloat16}" |
| VARIANTS="${VARIANTS:-base lora nullu efuf}" |
| LORA_PATH="${LORA_PATH:-/data/caotue/multilayer-sae/adv_gen_outputs/run_bathroom_toilet_v2/lora_adapter}" |
| EFUF_PATH="${EFUF_PATH:-/data/caotue/multilayer-sae/EFUF/efuf/checkpoints/llava_vicuna_7b/bathroom_toilet_paper_10ep/epoch_002.pth}" |
| NULLU_PATH="${NULLU_PATH:-/data/caotue/nullu/edited_models/LLaVA-7B-top4-0-32-bathroom_toilet}" |
| TOILET_PROBE="${TOILET_PROBE:-/data/caotue/latent_probes/seqprobes_4variant_toilet/post/seqprobe.pth}" |
| BATH_PROBE="${BATH_PROBE:-/data/caotue/latent_probes/seqprobes_4variant_bathroom/post/seqprobe.pth}" |
| IMAGE_FOLDER="${IMAGE_FOLDER:-/data/caotue/CC3M-Dataset/cc3m_images}" |
| SAMPLES_JSON="${SAMPLES_JSON:-mechanistic_interp/toilet_bathroom/samples.json}" |
| BASE_MENTIONS="${BASE_MENTIONS:-any}" |
| QUESTION="${QUESTION:-Describe this image.}" |
| FORCED_TEXT="${FORCED_TEXT:-}" |
| NUM_IMAGES="${NUM_IMAGES:-0}" |
| HOOK_TYPE="${HOOK_TYPE:-post}" |
| MAX_NEW_TOKENS="${MAX_NEW_TOKENS:-64}" |
| MAX_SEQ_TOKENS="${MAX_SEQ_TOKENS:-64}" |
| OUT="${OUT:-mechanistic_interp/graph/probe_scoring_bath_only.png}" |
| OUT_JSON="${OUT_JSON:-mechanistic_interp/graph/probe_scoring_bath_only.json}" |
|
|
| REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" |
| cd "${REPO_ROOT}" |
| export PYTHONPATH="$(cd .. && pwd):$(pwd):${PYTHONPATH:-}" |
|
|
| ARGS=( |
| --device_id "${DEVICE_ID}" |
| --dtype "${DTYPE}" |
| --variants ${VARIANTS} |
| --lora_path "${LORA_PATH}" |
| --efuf_path "${EFUF_PATH}" |
| --nullu_path "${NULLU_PATH}" |
| --toilet_probe "${TOILET_PROBE}" |
| --bath_probe "${BATH_PROBE}" |
| --image_folder "${IMAGE_FOLDER}" |
| --samples_json "${SAMPLES_JSON}" |
| --base_mentions "${BASE_MENTIONS}" |
| --question "${QUESTION}" |
| --num_images "${NUM_IMAGES}" |
| --hook_type "${HOOK_TYPE}" |
| --max_new_tokens "${MAX_NEW_TOKENS}" |
| --max_seq_tokens "${MAX_SEQ_TOKENS}" |
| --out "${OUT}" |
| --out_json "${OUT_JSON}" |
| ) |
| if [ -n "${FORCED_TEXT}" ]; then |
| ARGS+=(--forced_text "${FORCED_TEXT}") |
| fi |
|
|
| python -m mechanistic_interp.probe_scoring "${ARGS[@]}" "$@" |
|
|