#!/bin/bash # 核对各条 OPD 线实际生效的 train_batch / ppo_mini_batch / rollout.n D=/home/haojinw2 echo "=== 从启动脚本读" for f in opd_resp7168_flat.sh chain113.sh chain_fp32.sh chain_justrl_mb16.sh \ rose-bundle-0808/run_opd_baseline.sh rose-bundle-0808/run_opd_official.sh \ OPD-upstream/on_policy_distillation.sh; do p=$D/$f [ -f "$p" ] || continue echo " --- $f" grep -aoE "(data\.train_batch_size|ppo_mini_batch_size|rollout\.n|TRAIN_BATCH_SIZE|MINI_BATCH_SIZE|PPO_MINI_BATCH_SIZE|N_RESPONSES)=[^ \\\\]*" "$p" 2>/dev/null | sed 's/^/ /' done echo echo "=== 从 wandb 离线配置读实际生效值(最可靠)" for d in $D/rose-bundle-0808/verl/wandb/offline-run-*; do c="$d/files/config.yaml" [ -f "$c" ] || continue name=$(grep -aoE "experiment_name:.*" "$c" | head -1 | sed 's/experiment_name: *//' | tr -d '"') [ -z "$name" ] && continue tb=$(grep -aA2 "^ *train_batch_size:" "$c" | grep -aoE "value: [0-9]+" | head -1 | grep -oE "[0-9]+") mb=$(grep -aA2 "ppo_mini_batch_size:" "$c" | grep -aoE "value: [0-9]+" | head -1 | grep -oE "[0-9]+") nn=$(grep -aA2 "^ *n:" "$c" | grep -aoE "value: [0-9]+" | head -1 | grep -oE "[0-9]+") printf " %-46s train=%-5s mini=%-5s n=%-3s\n" "${name:0:46}" "${tb:-?}" "${mb:-?}" "${nn:-?}" done | sort -u