| #!/bin/bash |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| set -e |
|
|
| PROJ_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" |
| cd "$PROJ_DIR" |
|
|
| |
| MODEL_CONFIG="configs/model_config.yaml" |
| TRAIN_CONFIG="configs/train_config.yaml" |
| OUTPUT_DIR="results/" |
| CHEXBERT_PATH="" |
|
|
| |
| RUN_ID="${1:-}" |
| if [ -z "$RUN_ID" ] && [ -f "checkpoints/run_id.txt" ]; then |
| RUN_ID="$(cat checkpoints/run_id.txt | tr -d '[:space:]')" |
| fi |
| if [ -z "$RUN_ID" ]; then |
| echo "Could not resolve RUN_ID. Pass it as arg 1, or run training first." |
| exit 1 |
| fi |
|
|
| CHECKPOINT="checkpoints/${RUN_ID}/stage2_instruct/stage2_final.pt" |
|
|
| echo "==========================================" |
| echo " CXR VLM Evaluation" |
| echo " Run id : $RUN_ID" |
| echo " Checkpoint: $CHECKPOINT" |
| echo " Output : $OUTPUT_DIR/$RUN_ID" |
| echo "==========================================" |
|
|
| python -m evaluation.evaluate \ |
| --model_config "$MODEL_CONFIG" \ |
| --train_config "$TRAIN_CONFIG" \ |
| --checkpoint "$CHECKPOINT" \ |
| --run_id "$RUN_ID" \ |
| --task all \ |
| --split test \ |
| --output_dir "$OUTPUT_DIR" \ |
| --chexbert_path "$CHEXBERT_PATH" \ |
| --batch_size 8 \ |
| --max_new_tokens 300 |
|
|
| echo "Evaluation complete! Results saved to $OUTPUT_DIR/$RUN_ID" |
|
|