File size: 1,371 Bytes
c6856c9
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
#!/usr/bin/env bash
set -euo pipefail

SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
ROOT="$(cd "${SCRIPT_DIR}/../../.." && pwd)"
EXP_ROOT="${ROOT}/experiments/ablation"
PYTHON_BIN="${BIOMANUS_PYTHON:-/225040511/miniconda3/envs/biomni_e1/bin/python}"

BACKGROUND=0
VARIANT="all"
DEBUG=0

while [[ $# -gt 0 ]]; do
  case "$1" in
    --background) BACKGROUND=1; shift ;;
    --foreground) BACKGROUND=0; shift ;;
    --variant) VARIANT="$2"; shift 2 ;;
    --debug) DEBUG=1; shift ;;
    *) echo "Unknown argument: $1" >&2; exit 2 ;;
  esac
done

if [[ "${BACKGROUND}" -eq 1 ]]; then
  mkdir -p "${EXP_ROOT}/logs"
  LOG="${EXP_ROOT}/logs/all_ablation_$(date -u +%Y%m%d_%H%M%S).log"
  SCRIPT="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/$(basename "${BASH_SOURCE[0]}")"
  CMD=("${SCRIPT}" "--foreground" "--variant" "${VARIANT}")
  if [[ "${DEBUG}" -eq 1 ]]; then CMD+=("--debug"); fi
  nohup "${CMD[@]}" > "${LOG}" 2>&1 < /dev/null &
  echo "Started full ablation in background."
  echo "PID: $!"
  echo "Log: ${LOG}"
  exit 0
fi

LAB_ARGS=("--variant" "${VARIANT}")
if [[ "${DEBUG}" -eq 1 ]]; then LAB_ARGS+=("--debug"); fi

"${EXP_ROOT}/scripts/run_bioagentbench_ablation.sh" --foreground --variant "${VARIANT}"
"${EXP_ROOT}/scripts/run_labbench_ablation.sh" --foreground "${LAB_ARGS[@]}"
"${PYTHON_BIN}" "${EXP_ROOT}/scripts/summarize_ablation_results.py"