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[@]}"