| #!/bin/bash |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| cd ${PBS_O_WORKDIR} |
|
|
| if [ -d "venv" ]; then |
| source venv/bin/activate |
| elif [ -d "env" ]; then |
| source env/bin/activate |
| fi |
|
|
| export PATH=$HOME/.local/bin:$PATH |
| export HF_HOME="${HF_HOME:-${HOME}/scratch/hf_home}" |
| export PYTHONPATH="${PBS_O_WORKDIR}:${PYTHONPATH:-}" |
| export TORCHINDUCTOR_CACHE_DIR="${HOME}/scratch/.cache/torchinductor" |
| export TRITON_CACHE_DIR="${HOME}/scratch/.cache/triton" |
| export VLLM_USE_V1=0 |
| export NCCL_P2P_DISABLE=1 |
| export NCCL_IB_DISABLE=1 |
|
|
| mkdir -p logs/experiment |
| LOGFILE="logs/experiment/validate_${PBS_JOBID}.log" |
|
|
| echo "========================================" | tee -a "${LOGFILE}" |
| echo "Job: Validate (CLIPScore + LLM Judge)" | tee -a "${LOGFILE}" |
| echo "Job ID: ${PBS_JOBID}" | tee -a "${LOGFILE}" |
| echo "Node: $(hostname)" | tee -a "${LOGFILE}" |
| echo "GPUs: 2" | tee -a "${LOGFILE}" |
| echo "Started: $(date)" | tee -a "${LOGFILE}" |
| echo "========================================" | tee -a "${LOGFILE}" |
|
|
| echo "" | tee -a "${LOGFILE}" |
| echo "GPU Info:" | tee -a "${LOGFILE}" |
| nvidia-smi --query-gpu=index,name,memory.total --format=csv | tee -a "${LOGFILE}" |
| echo "CUDA_VISIBLE_DEVICES(raw): ${CUDA_VISIBLE_DEVICES:-<unset>}" | tee -a "${LOGFILE}" |
|
|
| RELATION="${RELATION:-bathroom_toilet}" |
| BASE_MODEL="${BASE_MODEL:-llava-hf/llava-1.5-7b-hf}" |
| ORIGINAL_CACHE_DIR="${ORIGINAL_CACHE_DIR:-./cached_original_outputs}" |
| OUTPUT_DIR="${OUTPUT_DIR:-./adv_outputs/bathroom_toilet/run_20260404_001435/validate_eval_lora}" |
| NUM_PER_CATEGORY="${NUM_PER_CATEGORY:-50}" |
| MAX_NEW_TOKENS="${MAX_NEW_TOKENS:-300}" |
| MENTION_METHOD="${MENTION_METHOD:-keyword}" |
| MODEL_TYPE="${MODEL_TYPE:-lora}" |
| MODEL_PATH="${MODEL_PATH:-./adv_outputs/bathroom_toilet/run_20260404_001435/lora_adapter}" |
|
|
| echo "" | tee -a "${LOGFILE}" |
| echo "Running validate (relation=${RELATION}, model_type=${MODEL_TYPE}, mention_method=${MENTION_METHOD})..." | tee -a "${LOGFILE}" |
| echo "Model path: ${MODEL_PATH}" | tee -a "${LOGFILE}" |
|
|
| export RELATION BASE_MODEL ORIGINAL_CACHE_DIR OUTPUT_DIR |
| export NUM_PER_CATEGORY MAX_NEW_TOKENS MENTION_METHOD |
| export MODEL_TYPE MODEL_PATH |
|
|
| bash experiment/scripts/validate/run_validate.sh 2>&1 | tee -a "${LOGFILE}" |
|
|
| EXIT_CODE=${PIPESTATUS[0]} |
|
|
| echo "" | tee -a "${LOGFILE}" |
| echo "========================================" | tee -a "${LOGFILE}" |
| if [ $EXIT_CODE -eq 0 ]; then |
| echo "Status: SUCCESS" | tee -a "${LOGFILE}" |
| else |
| echo "Status: FAILED (exit code $EXIT_CODE)" | tee -a "${LOGFILE}" |
| fi |
| echo "Completed: $(date)" | tee -a "${LOGFILE}" |
| echo "========================================" | tee -a "${LOGFILE}" |
|
|
| exit $EXIT_CODE |
|
|