| #!/bin/bash |
| |
| |
| set -u |
| CKPT=$1 |
| TAG=$2 |
| N_TB2=${3:-89} |
| N_SWE=${4:-100} |
| TEMP=${5:-} |
| PORT=8500 |
|
|
| cd /root/work/a/prime-rl |
| export PRIME_API_KEY="$(cat "$AGENTPTB_PRIME_KEY_FILE")" |
|
|
| |
| pkill -f "PRIME-RL" 2>/dev/null || true |
| sleep 5 |
| pkill -9 -f "PRIME-RL" 2>/dev/null || true |
| sleep 3 |
|
|
| |
| CUDA_VISIBLE_DEVICES=0 nohup uv run inference \ |
| --model.name "$CKPT" \ |
| --model.tool-call-parser qwen3_coder \ |
| --model.reasoning-parser qwen3 \ |
| --server.port $PORT --parallel.tp 1 --parallel.dp 1 \ |
| --vllm-extra '{"limit_mm_per_prompt": {"image": 0, "video": 0}}' \ |
| > $AGENTPTB_WORKSPACE/logs/inference-$TAG.log 2>&1 & |
| SERVER_PID=$! |
|
|
| |
| for i in $(seq 1 120); do |
| if curl -sf http://localhost:$PORT/health > /dev/null 2>&1; then |
| echo "server healthy after ${i}0s" |
| break |
| fi |
| sleep 10 |
| done |
| curl -sf http://localhost:$PORT/health > /dev/null || { echo "SERVER FAILED"; exit 1; } |
|
|
| SAMPLING=() |
| if [ -n "$TEMP" ]; then |
| SAMPLING=(--sampling.temperature "$TEMP") |
| fi |
|
|
| OUT=$AGENTPTB_WORKSPACE/evals/$TAG |
| mkdir -p "$OUT" |
|
|
| echo "=== terminal-bench-2: $N_TB2 tasks ===" |
| uv run eval terminal-bench-2-v1 -m "$CKPT" \ |
| --client.base-url "http://127.0.0.1:$PORT/v1" \ |
| --env.agent.harness.id pi --env.agent.runtime.type broker \ |
| --env.agent.runtime.ready_timeout_seconds 1800 \ |
| "${SAMPLING[@]}" \ |
| -n "$N_TB2" -r 1 -s -c 24 --no-push --rich false \ |
| -o "$OUT/tb2" 2>&1 | tail -15 |
|
|
| echo "=== swe-bench-verified: $N_SWE tasks ===" |
| uv run eval swebench-verified-v1 -m "$CKPT" \ |
| --client.base-url "http://127.0.0.1:$PORT/v1" \ |
| --env.agent.harness.id pi --env.agent.runtime.type broker \ |
| --env.agent.runtime.ready_timeout_seconds 1800 \ |
| "${SAMPLING[@]}" \ |
| -n "$N_SWE" -r 1 -s -c 64 --no-push --rich false \ |
| -o "$OUT/swe" 2>&1 | tail -15 |
|
|
| |
| kill $SERVER_PID 2>/dev/null || true |
| sleep 5 |
| pkill -9 -f "PRIME-RL" 2>/dev/null || true |
|
|
| echo "=== scores ===" |
| uv run python $AGENTPTB_WORKSPACE/scripts/score.py "$OUT/tb2/traces.jsonl" "$OUT/swe/traces.jsonl" |
| echo "=== DONE $TAG ===" |
|
|