| _S="${BASH_SOURCE[0]:-$0}"; ROOT="${ROOT:-$(cd "$(dirname "$_S")" && pwd)}"; ROOT="${ROOT%%/results/*}"; ROOT="${ROOT%%/Benchmark_eval/*}"; ROOT="${ROOT%%/Benchmarks/*}" # RELOC_ROOT_MARK | |
| # Rebuild the ChatTS eval requests (inference-ready) from the official Zenodo dataset_a/b. | |
| # Adapters are fully deterministic (no seed/shuffle) — re-running gives identical output. | |
| # dataset_a = 159 (univariate) · dataset_b = 400 (multivariate). Zenodo 10.5281/zenodo.14349206. | |
| set -euo pipefail | |
| PY=${PY:-/root/miniconda3/bin/python} | |
| DIR=$ROOT/Benchmark_eval/ChatTS_test | |
| B=$DIR/_build | |
| DA=${DA:-$ROOT/Benchmarks/ChatTS_test/14349206/dataset_a.json} | |
| DB=${DB:-$ROOT/Benchmarks/ChatTS_test/14349206/dataset_b.json} | |
| [ -f "$DA" ] && [ -f "$DB" ] || { echo "raw dataset_a/b missing under $(dirname "$DA")"; exit 1; } | |
| A() { PYTHONPATH="$B" "$PY" "$B/adapters/$1" "${@:2}" 2>&1 | tail -1; } | |
| rm -f "$DIR"/*.jsonl | |
| echo "== dataset_a (159, univariate) ==" | |
| A chatts_adapter.py --input-file "$DA" --dataset-tag dataset_a --output-file "$DIR/chatts_a_qa.jsonl" # QA -> scored by RAGAS bridge | |
| A chatts_align_adapter.py --dataset-file "$DA" --output-file "$DIR/chatts_a_align.jsonl" # numeric, gt = ChatTS generator attrs | |
| A chatts_tsalign_metrics_adapter.py --dataset-file "$DA" --output-file "$DIR/chatts_a_tsametrics.jsonl" # numeric, gt = TS-Align own defs (fairest) | |
| echo "== dataset_b (400, multivariate) ==" | |
| A chatts_adapter.py --input-file "$DB" --dataset-tag dataset_b --output-file "$DIR/chatts_b_qa.jsonl" | |
| A chatts_mv_adapter.py --dataset-file "$DB" --output-file "$DIR/chatts_b_mv.jsonl" # mv text (rougeL) | |
| A chatts_mv_metrics_adapter.py --dataset-file "$DB" --output-file "$DIR/chatts_b_mvmetrics.jsonl" # mv numeric | |
| echo "=== counts ===" | |
| for f in "$DIR"/*.jsonl; do printf " %-28s %s\n" "$(basename "$f")" "$(wc -l < "$f")"; done | |
| echo "DONE -> $DIR" | |