Files
unifolm-world-model-action/scripts/run_all_world_model_cases.sh
2026-03-15 12:41:53 +08:00

59 lines
2.5 KiB
Bash

#!/usr/bin/env bash
set -euo pipefail
repo_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
cd "${repo_root}"
run_analysis="${RUN_ANALYSIS:-1}"
case_filter="${CASE_FILTER:-}"
case_scripts=(
"unitree_z1_stackbox/case1/run_world_model_interaction.sh"
"unitree_z1_stackbox/case2/run_world_model_interaction.sh"
"unitree_z1_stackbox/case3/run_world_model_interaction.sh"
"unitree_z1_stackbox/case4/run_world_model_interaction.sh"
"unitree_z1_dual_arm_stackbox/case1/run_world_model_interaction.sh"
"unitree_z1_dual_arm_stackbox/case2/run_world_model_interaction.sh"
"unitree_z1_dual_arm_stackbox/case3/run_world_model_interaction.sh"
"unitree_z1_dual_arm_stackbox/case4/run_world_model_interaction.sh"
"unitree_z1_dual_arm_stackbox_v2/case1/run_world_model_interaction.sh"
"unitree_z1_dual_arm_stackbox_v2/case2/run_world_model_interaction.sh"
"unitree_z1_dual_arm_stackbox_v2/case3/run_world_model_interaction.sh"
"unitree_z1_dual_arm_stackbox_v2/case4/run_world_model_interaction.sh"
"unitree_z1_dual_arm_cleanup_pencils/case1/run_world_model_interaction.sh"
"unitree_z1_dual_arm_cleanup_pencils/case2/run_world_model_interaction.sh"
"unitree_z1_dual_arm_cleanup_pencils/case3/run_world_model_interaction.sh"
"unitree_z1_dual_arm_cleanup_pencils/case4/run_world_model_interaction.sh"
"unitree_g1_pack_camera/case1/run_world_model_interaction.sh"
"unitree_g1_pack_camera/case2/run_world_model_interaction.sh"
"unitree_g1_pack_camera/case3/run_world_model_interaction.sh"
"unitree_g1_pack_camera/case4/run_world_model_interaction.sh"
)
for case_script in "${case_scripts[@]}"; do
if [[ -n "${case_filter}" ]] && [[ "${case_script}" != *"${case_filter}"* ]]; then
continue
fi
case_dir="$(dirname "${case_script}")"
inference_dir="${repo_root}/${case_dir}/output/inference"
echo "============================================================"
echo "Running ${case_script}"
echo "============================================================"
bash "${repo_root}/${case_script}"
if [[ "${run_analysis}" == "1" ]]; then
if [[ -f "${inference_dir}/stepwise_log.csv" ]] && \
[[ -f "${inference_dir}/sample_summary.csv" ]] && \
[[ -f "${inference_dir}/round_summary.csv" ]]; then
echo "Analyzing ${case_dir}"
python3 "${repo_root}/scripts/evaluation/analyze_metrics.py" \
--input_dir "${inference_dir}"
else
echo "Skipping analysis for ${case_dir}: missing analysis CSVs."
fi
fi
done