File size: 1,010 Bytes
3738140 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | #!/usr/bin/env bash
set -euo pipefail
export CUDA_VISIBLE_DEVICES=0
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
if [[ $# -lt 1 ]]; then
cat <<'USAGE'
Usage:
script/run_eval_ppl.sh <model_path> [output_dir] [extra eval_ppl args...]
Examples:
script/run_eval_ppl.sh /path/to/model
script/run_eval_ppl.sh /path/to/model /tmp/ppl_out --dataset wikitext2 --max_seq_len 1024 --batch_size 8
USAGE
exit 1
fi
MODEL_PATH="$1"
shift
OUTPUT_DIR=""
if [[ $# -gt 0 && "${1:0:2}" != "--" ]]; then
OUTPUT_DIR="$1"
shift
fi
CMD=(
python "$ROOT_DIR/src/eval_ppl.py"
--base_model "$MODEL_PATH"
)
if [[ -n "$OUTPUT_DIR" ]]; then
CMD+=(--output_dir "$OUTPUT_DIR")
fi
# Default to WikiText-2 only unless user explicitly sets --dataset.
HAS_DATASET_FLAG=0
for arg in "$@"; do
if [[ "$arg" == "--dataset" ]]; then
HAS_DATASET_FLAG=1
break
fi
done
if [[ "$HAS_DATASET_FLAG" -eq 0 ]]; then
CMD+=(--dataset wikitext2)
fi
CMD+=("$@")
echo "Running: ${CMD[*]}"
exec "${CMD[@]}"
|