Repository Public Research preview
1#!/usr/bin/env bash2# Medium-stage rewrite job (Gate E). Allocation from configs/rewriting/medium.json; model chosen by the author.3# Usage: scripts/medium_rewrite_job.sh <estimate|submit|collect> [model] [job] [corpus] [splits]4set -euo pipefail5cd "$(dirname "$0")/.."6PY=.venv/bin/python7MODE=${1:-estimate}8MODEL=${2:-claude-haiku-5-5}9JOB=${3:-medium_v1_haiku}10CORPUS=${4:-data/parsed/medium_v1}11SPLITS=${5:-data/splits/medium_v1/splits.jsonl}12CFG=configs/rewriting/medium.json13size_of() { $PY -c "import json; print(json.load(open('$CFG'))['allocation']['$1'])"; }14for sp in train val test heldout_domain heldout_period; do15 n=$(size_of "$sp")16 case "$MODE" in17 estimate) $PY scripts/rewrite.py --corpus "$CORPUS" --job "$JOB" --config "$CFG" --n-passages "$n" --seed 1 --splits "$SPLITS" --allowed-splits "$sp" --model "$MODEL" --estimate-only | grep estimate | sed "s/^/$sp /" ;;18 submit) $PY scripts/rewrite.py --corpus "$CORPUS" --job "$JOB" --config "$CFG" --n-passages "$n" --seed 1 --splits "$SPLITS" --allowed-splits "$sp" --model "$MODEL" --live --batch | grep -E "estimate|submitted|BUDGET" | sed "s/^/$sp /" ;;19 collect) $PY scripts/rewrite.py --corpus "$CORPUS" --job "$JOB" --config "$CFG" --n-passages "$n" --seed 1 --splits "$SPLITS" --allowed-splits "$sp" --model "$MODEL" --estimate-only > /dev/null ;;20 esac21done22if [ "$MODE" = collect ]; then23 $PY scripts/rewrite.py --corpus "$CORPUS" --job "$JOB" --config "$CFG" --n-passages "$(size_of train)" --seed 1 --splits "$SPLITS" --allowed-splits train --model "$MODEL" --live --batch --collect | grep collect | cut -c1-30024 $PY scripts/batch_admin.py --job "$JOB" | tail -125fi26