项目文件夹

文件
wehub-resource-sync 542cfa195c
CI / Frontend build (push) Failing after 9m6s
CI / Plugin validate (push) Failing after 9m27s
CI / Python lint (push) Failing after 16m1s
CI / Tests (push) Successful in 18m0s
Deploy / deploy (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 12:33:27 +08:00

53 行
2.3 KiB
Bash
可执行文件

此文件含有模棱两可的 Unicode 字符
此文件含有可能会与其他字符混淆的 Unicode 字符。 如果您是想特意这样的,可以安全地忽略该警告。 使用 Escape 按钮显示他们。
#!/bin/bash
# Run the full LLM-judge matrix in parallel across 8 GPUs.
# 4 adapters (base, 2x_v2, 3x_v2, 4x_v2) × 4 k values (1,2,3,4) = 16 cells
# minus: base@k=1 (0.958), base@k=3 (0.892), 2x_v2@k=3 (0.930) already done = 13 new cells.
set -e
cd /scratch/users/zwcolin/cxr_embeds/cxr_embedding
source ~/.zshrc
DATA=/scratch/users/zwcolin/cxr_embeds/sft_data
OUT=/scratch/users/zwcolin/cxr_embeds/sft_output
LOGS=/scratch/users/zwcolin/cxr_embeds/cxr_embedding/sft/eval_out
launch() {
local gpu=$1 tag=$2 test_json=$3 adapter_arg=$4
CUDA_VISIBLE_DEVICES=$gpu uv run python sft/eval_multiimage.py \
--test-json "$test_json" $adapter_arg \
--tag "$tag" --n-examples 500 \
> "$LOGS/eval_${tag}.log" 2>&1 &
}
# ROUND 1: 8 cells
launch 0 "base_0x_k2" "$DATA/compressed_top6_0x/test_k2.json" ""
launch 1 "base_0x_k4" "$DATA/compressed_top6_0x/test_k4.json" ""
launch 2 "2x_v2_k1" "$DATA/compressed_top6_2x/test_k1.json" "--adapter $OUT/qwen3vl_top6_2x_v2"
launch 3 "2x_v2_k2" "$DATA/compressed_top6_2x/test_k2.json" "--adapter $OUT/qwen3vl_top6_2x_v2"
launch 4 "2x_v2_k4" "$DATA/compressed_top6_2x/test_k4.json" "--adapter $OUT/qwen3vl_top6_2x_v2"
launch 5 "3x_v2_k1" "$DATA/compressed_top6_3x/test_k1.json" "--adapter $OUT/qwen3vl_top6_3x_v2"
launch 6 "3x_v2_k2" "$DATA/compressed_top6_3x/test_k2.json" "--adapter $OUT/qwen3vl_top6_3x_v2"
launch 7 "3x_v2_k3" "$DATA/compressed_top6_3x/test.json" "--adapter $OUT/qwen3vl_top6_3x_v2"
wait
echo "=== ROUND 1 DONE ==="
# ROUND 2: 5 cells
launch 0 "3x_v2_k4" "$DATA/compressed_top6_3x/test_k4.json" "--adapter $OUT/qwen3vl_top6_3x_v2"
launch 1 "4x_v2_k1" "$DATA/compressed_top6_4x/test_k1.json" "--adapter $OUT/qwen3vl_top6_4x_v2"
launch 2 "4x_v2_k2" "$DATA/compressed_top6_4x/test_k2.json" "--adapter $OUT/qwen3vl_top6_4x_v2"
launch 3 "4x_v2_k3" "$DATA/compressed_top6_4x/test.json" "--adapter $OUT/qwen3vl_top6_4x_v2"
launch 4 "4x_v2_k4" "$DATA/compressed_top6_4x/test_k4.json" "--adapter $OUT/qwen3vl_top6_4x_v2"
wait
echo "=== ROUND 2 DONE ==="
# Summary
echo ""
echo "=== FINAL LLM-JUDGE ==="
for tag in base_0x_k2 base_0x_k4 \
2x_v2_k1 2x_v2_k2 2x_v2_k4 \
3x_v2_k1 3x_v2_k2 3x_v2_k3 3x_v2_k4 \
4x_v2_k1 4x_v2_k2 4x_v2_k3 4x_v2_k4; do
score=$(grep "llm_judge:" "$LOGS/eval_${tag}.log" 2>/dev/null | tail -1)
echo " $tag: $score"
done