
让Pass1直接再涨2-3个点手把手复现LLM-as-a-Verifier在Terminal-Bench与SWE-Bench上的SOTA成绩【免费下载链接】llm-as-a-verifierLLM-as-a-Verifier is a general-purpose framework that provides fine-grained feedback for any agent without requiring additional training. It achieves SOTA performance across coding, robotics, and medical agentic benchmarks.项目地址: https://gitcode.com/gh_mirrors/ll/llm-as-a-verifierLLM-as-a-Verifier 是一个通用的 LLM 验证器Verifier框架它不需要任何额外训练只需对 Agent 的轨迹做细粒度打分与 Best-of-N 挑选就能在 Terminal-Bench、SWE-Bench Verified 等主流 Agent 基准上把 Pass1 直接抬高 2-3 个点拿到 SOTA。本文将带你从安装到出结果完整复现这套测试时扩展Test-Time Scaling方案。一、先搞懂原理为什么能免费涨分传统的LLM-as-a-Judge是让大模型直接输出一个 1-10 的离散分信息量低、噪声大。LLM-as-a-Verifier 用三个关键设计把打分变成精细度量设计作用 细粒度评分Granularity用 20 个评分 tokenA-T 字母刻度而非单一数字从 logprob 分布中提取连续奖励 重复验证Repetition同一标准重复验证 K 次聚合多次信号降低方差 标准分解Decomposition把好不好拆成多个可独立评判的细粒度标准 不确定性建模Uncertainty对整个 logprob 分布取期望而不是只看采样到的那个分数框架的奖励公式实现在 llm_verifier/fine_grained_reward.py输入支持文本、图像、视频输出可用于 Best-of-N 挑选、进度跟踪和强化学习。成本怎么控制概率枢纽锦标赛PPTBest-of-N 如果两两比较需要 O(N²) 次验证成本爆炸。概率枢纽锦标赛Probabilistic Pivot Tournament把成本压到 O(Nk)只有五个步骤候选池N 条轨迹待排序环形首检Ring Pass按随机哈密顿环比较相邻对每条轨迹在 A/B 槽位各出现一次天然抵消位置偏差选枢纽按环形得分取前 k 名作为枢纽pivot枢纽轮只比较非枢纽 vs 枢纽和枢纽 vs 枢纽把验证预算集中在最有希望的头部分数上聚合选出胜者按归一化胜场 w/c 选出最优轨迹。实现见 llm_verifier/pivot_tournament.py。对 N5 的 Best-of-5默认 k2 时每个任务仅需 8 次定向比较而非 10 次全对全。二、安装与环境准备3 步走第 1 步克隆并安装git clone https://gitcode.com/gh_mirrors/ll/llm-as-a-verifier cd llm-as-a-verifier pip install -e .依赖非常轻只需 requirements.txt 里的三个包google-genai、openai、tqdm。第 2 步配置验证器 API Key在项目根目录创建.env文件任选其一DEEPSEEK_API_KEYdeepseek 后端支持 Bo3/Bo5 自验证复现VERTEX_API_KEYGemini 后端默认验证器gemini-2.5-flash或任何返回 token 级 logprobs 的 OpenAI 兼容服务如vllm serve一个本地模型设置OPENAI_BASE_URL第 3 步确认框架可用python scripts/run.py不带参数运行会列出所有已注册的基准注册表在 llm_verifier/benchmarks.pyterminal_bench、terminal_bench_2.1、swe_bench、medagentbench。三、一键复现 Terminal-Bench 成绩Terminal-Bench V283.1% → 86.5%仓库已附带全部 Agent 轨迹data/terminal_bench_2.0_trajs/GPT-5.5 × 5 条/任务Capy harness你只需要跑打分python scripts/run.py terminal_bench官方报告成绩方法Pass 率Pass1Best-of-5 平均83.1%LLM-as-a-Verifier86.5%Oracle事后最优92.1%Terminal-Bench 的评估标准写在 criteria/terminal_bench.md含三项标准规格遵循、输出匹配、错误信号检测开头还有一条Ground Truth Note只看终端真实输出不信任 Agent 的自我声明——这正是验证器能揪出声称成功但实际报错轨迹的关键。所有超参都可在命令行覆盖python scripts/run.py terminal_bench --pivots 2 --n-evaluations 8 --seed 0 --max-workers 50Terminal-Bench 2.1 自验证自己评自己也能涨 7 个点最有意思的实验同一个deepseek-v4-flash既当 Agent 又当验证器验证自己的 5 条轨迹data/terminal_bench_2.1_trajs/python scripts/run_bo3.py # Best-of-3 配置 python scripts/run_bo5.py # Best-of-5 配置配置Pass1LLM-as-a-VerifierOracleBest-of-379.4%86.5% ± 1.1%92.1%Best-of-578.7%88.0% ± 0.6%96.6%对应脚本 scripts/run_bo3.py 与 scripts/run_bo5.pyBo3 跑 7.1 个点提升、Bo5 跑 9.3 个点提升且两个配置各自维护独立分数缓存token 账单互不串扰。四、一键复现 SWE-Bench Verified 成绩SWE-Bench Verified 的轨迹Opus 4.5 / Opus 4.6 / Gemini 3 Flashmini-swe-agent各 3 条/任务放在 data/swebench_verified_trajs/python scripts/run.py swe_bench方法Pass 率Pass1Best-of-3 平均76.1%LLM-as-a-Verifier78.2%OracleBest-of-384.4%SWE-Bench 的标准文件 criteria/swe_bench.md 分三层审查补丁根因定位改的是不是真正的 bug 路径、代码质量像资深 code reviewer 一样审 diff、实证验证是否真的跑了复现命令并观察到修复前后行为。跑完会在终端打印结果表并把分数缓存与结果表写入cache/和results/目录。五、加餐给 Agent 跑分装上实时进度条 除了事后挑选同一套细粒度奖励还能对轨迹每一步打分。以 Terminal-Bench 的pytorch-model-cli任务为例两条 Terminus-2 轨迹一成一败的验证器分数曲线如下——成功轨迹的分数稳定爬升直至 1.0失败轨迹则始终低迷复现只需一条命令打分并绘图python scripts/terminal_bench_progress.py如果想看Agent 运行时的实时视角加--online参数用ProgressTracker逐步回放。这个能力可以直接用于提前放弃无望轨迹分数长期低于阈值就重采样进一步省算力。实现见 llm_verifier/progress.py。六、常见问题 FAQQ1跑一次要花多少钱比想象中省。验证 prompt 把标准放在末尾、其余作为共享前缀配合前缀缓存预热官方把terminal_bench_2.1的缓存命中率从 5.2% 提到 78.4%未缓存输入 token 减少约 3.4 倍。每次运行结束后scripts/run.py会打印精确的 token 账单含缓存命中率分数还会写入 JSON 缓存重跑时只补打缺的比较。Q2想接入自己的任务/基准三步走详见 add_new_benchmark.md① 把轨迹拷进data/task_name_trajs/② 按 criteria/TEMPLATE.md 写评估标准③ 在llm_verifier/benchmarks.py注册一条Benchmark。官方甚至建议直接把add_new_benchmark.md丢给 Claude Code 这类编码 Agent 帮你自动生成 runner。Q3验证器模型可以换吗可以。select的model参数支持任何暴露 logprobs 的后端多模态任务如机器人、医疗影像可用 Gemini 2.5 Flash 等视觉模型每个入口都接受images参数。七、总结一张表看懂收益基准基座 AgentPass1LLM-as-a-VerifierOracle复现命令Terminal-Bench V2GPT-5.5 ×5 (Capy)83.1%86.5%92.1%python scripts/run.py terminal_benchTerminal-Bench 2.1deepseek-v4-flash ×578.7%88.0% ± 0.6%96.6%python scripts/run_bo5.pySWE-Bench VerifiedOpus/Gemini ×3 (mini-swe-agent)76.1%78.2%84.4%python scripts/run.py swe_benchMedAgentBenchOpus 4.8 ×5 (AgentBench)70.2%73.3%75.0%python scripts/run.py medagentbench核心收获一句话LLM-as-a-Verifier 把事后裁判变成了测试时扩展引擎——细粒度 logprob 打分 枢纽锦标赛 标准分解让多跑几条轨迹的钱花出真价值Pass1 稳定再涨 2-3 个点。完整文档与 API 参考见 README.md核心库在 llm_verifier/可以直接import llm_verifier用三行代码给自己的候选池做 Best-of-N 挑选。【免费下载链接】llm-as-a-verifierLLM-as-a-Verifier is a general-purpose framework that provides fine-grained feedback for any agent without requiring additional training. It achieves SOTA performance across coding, robotics, and medical agentic benchmarks.项目地址: https://gitcode.com/gh_mirrors/ll/llm-as-a-verifier创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考