kunhsiang's picture
Backup: Jason multi_task_dit SC1 final — 離職備份 2026-06-19
856afc3 verified
Raw
History Blame Contribute Delete
2.15 kB
#!/bin/bash
# 1. Define the Parameter Space (The targets)
#TASKS=("red" "green" "blue")
#TASKS=("small" "big")
TASKS=("on" "outside")
# 2. Extract Policy Path from Argument
POLICY_PATH=$1
if [ -z "$POLICY_PATH" ]; then
echo "Error: No policy path provided. Usage: ./run_eval.sh <policy_path>"
exit 1
fi
# 3. Execution Loop
for TASK in "${TASKS[@]}"; do
# Generate a unique timestamp per TASK to prevent filesystem collisions
#rm -rf ~/jdk/z_tmp_jdk/eval_datasets/"${TASK}"
#mkdir -p ~/jdk/z_tmp_jdk/eval_datasets/"${TASK}"
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
echo "------------------------------------------------"
echo "Starting evaluation: box $TASK"
echo "Timestamp: $TIMESTAMP"
echo "------------------------------------------------"
# 4. Atomic Execution of LeRobot Record
CUDA_VISIBLE_DEVICES=1 lerobot-record \
--display_data=false \
--robot.type=so101_follower \
--robot.port=/dev/ttyACM1 \
--robot.id=my_awesome_follower_arm \
--policy.path="$POLICY_PATH" \
--dataset.repo_id="a/eval_grasp_${TASK}_${TIMESTAMP}" \
--dataset.num_episodes=1 \
--dataset.episode_time_s=120 \
--dataset.push_to_hub=false \
--robot.cameras="{
front: {type: opencv, index_or_path: /dev/video2, width: 640, height: 480, fps: 30, fourcc: MJPG},
gripper: {type: opencv, index_or_path: /dev/video0, width: 640, height: 480, fps: 30, fourcc: MJPG},
top: {type: opencv, index_or_path: /dev/video4, width: 640, height: 480, fps: 30, fourcc: MJPG}
}" \
--dataset.single_task="put the box $TASK the plate"
#--dataset.single_task="grasp the box $TASK the plate"
#--dataset.single_task="grasp the $TASK box"
# lerobot-record: error: unrecognized arguments: --root=~/jdk/eval_datasets/on_20260505_163204
# 5. Cooldown and Hardware Reset
#echo "Waiting for process termination..."
# sleep 2s
echo "Resetting robot to home position..."
make reset
# echo "Cooling down motors... 5s"
# sleep 5s
done
echo "Evaluation suite complete for all tasks."