Multiagent with verifier · verifying agent

Verifying agents

Does adding verifiers help, and what should one verifier check? Source: Lifshitz, McIlraith, Du, Multi-Agent Verification: Scaling Test-Time Compute with Multiple Verifiers, arXiv:2502.20379v1 (2025) [MAV].

Definitions [MAV, §2]

(aspect verifier) [MAV, §2.1]

An off-the-shelf LLM prompted to check one aspect of a candidate output \(o\in O\) and answer True/False:

$$\bin_v : O\to\{0,1\},\qquad v=(\text{base LLM},\ \text{aspect},\ \text{strategy}).$$

Aspects: mathematical correctness, logical soundness, factuality, … Strategies: direct approval, step-by-step, rephrasing, edge cases, …

(BoN-MAV) [MAV, §2.2–2.3, Eqs. (1)–(2)]

Sample \(n\) candidates \(o^{(1)},\dots,o^{(n)}\) from one generator; let \(M\) be the set of \(m=|M|\) verifiers:

$$\agg\big(o^{(i)}\big)=\frac{1}{|M|}\sum_{v\in M}\bin_v\big(o^{(i)}\big),\qquad \hat\imath=\arg\max_{i}\ \agg\big(o^{(i)}\big).$$

(verifier engineering) [MAV, §2.4]

From a pool \(M\) (here 20 verifiers on two base LLMs) choose, per domain \(d\), the subset \(M_d\subseteq M\) with the best mean accuracy on a validation set with known answers.

Generatorone LLM candidate o⁽¹⁾ candidate o⁽²⁾ ⋮ candidate o⁽ⁿ⁾ m aspect verifierseach: True / Falseper candidateno training argmax AggScoremost approvals wins
Two dials: more candidates \(n\), or more verifiers \(m\).

What it found

MATH accuracy (%), \(n=16\) candidates [MAV, Table 1].
generatorBoN-MAVself-consistencyreward model
Gemini-1.5-Flash66.059.061.7
Mistral-7B26.022.021.7
GPT-4o76.377.380.7

From answers to proof steps

Dictionary: MAV → the verifier \(V_i\) of a unit.
MAVverifier \(V_i\)kept?
generator LLMsolver \(S_i\)kept
\(n\) candidates \(o^{(i)}\)one step \(s\)changed: nothing to choose between
aspect verifier \(v\in M\)one check of \(V_i\): scope · compute · depend · logickept
\(\bin_v(o)\in\{0,1\}\)issues per check, each with location, reason, evidencechanged: no approval
\(\arg\max\agg\)block: one open critical issue stops citation of \(s\)changed
\(M_d\) tuned on known answersbriefs tuned on the worked example's 15 known errorschanged: no answer key

Why a veto, not a vote. A step with one real error is wrong however many checks pass it; in [MAV, Fig. 2] two of five verifiers approve a wrong solution.

$$\mathrm{blocked}(s)\iff \exists\,\iota\in I(s):\ \mathrm{sev}(\iota)=\text{critical},\ \iota\ \text{neither resolved nor dismissed}.$$

A blocked step returns to \(S_i\) with the issue; a disputed issue goes to another pair's verifier (meta-check), not to a vote.

Test before use

$$\text{recall}(V)=\frac{\#\{\text{faulty steps } V \text{ rejects}\}}{15},\qquad \text{false rejections}(V)=\frac{\#\{\text{correct steps } V \text{ rejects}\}}{\#\{\text{correct steps shown}\}}$$

on the 15 faulty steps of the worked example (listed here) and an equal number of its steps graded correct.