#!/bin/bash #SBATCH --job-name=activation-multiple #SBATCH --gres=gpu:1 #SBATCH --cpus-per-task=8 #SBATCH --partition=physical-gpu #SBATCH --mem=32G #SBATCH --output=logs/%j-activation-multiple.out ENV_FILE=$1 if [ -z "$ENV_FILE" ]; then echo "Error: No environment file specified" exit 1 fi if [ ! -f "$ENV_FILE" ]; then echo "Error: Environment file $ENV_FILE not found" exit 1 fi # Load the environment source "$ENV_FILE" # Example expected variables in $ENV_FILE: # MODEL="/path/to/parent_checkpoint_folder" # LANGS="en zh ga eu" # OUTPUT_DIR="/path/to/save/activations" if [ -z "$MODEL" ] || [ -z "$LANGS" ] || [ -z "$OUTPUT_DIR" ]; then echo "Error: MODEL, LANGS, or OUTPUT_DIR not set in environment file" exit 1 fi # Create output folder mkdir -p "$OUTPUT_DIR" export PYTHONUNBUFFERED=1 export VLLM_USE_V1=0 # Loop through each checkpoint subfolder inside MODEL for CHECKPOINT in "$MODEL"/*; do if [ -d "$CHECKPOINT" ]; then for LANG in $LANGS; do echo "Processing checkpoint: $CHECKPOINT, language: $LANG" python ../activation_v2.py \ --model "$CHECKPOINT" \ --lang "$LANG" \ --save-folder "$OUTPUT_DIR" echo "Done: $CHECKPOINT, $LANG" done fi done echo "All activations complete!"