Hanzo
OpenapiBenchmark

Is the ONLY valid arm-vs-arm test: it pairs the two models on the items BOTH…

Is the ONLY valid arm-vs-arm test: it pairs the two models on the items BOTH completed, and answers rescue and damage counts with an exact-McNemar p.

GET /v1/benchmark/compare

Addresshttps://api.hanzo.ai/v1/benchmark/compare
MethodGET
Operationget_benchmark_compare
AuthAuthorization: Bearer $HANZO_API_KEY

Is the ONLY valid arm-vs-arm test: it pairs the two models on the items BOTH completed, and answers rescue and damage counts with an exact-McNemar p.

Pairing is what prevents the subset artifact — comparing one model's easy subset against another's full run — so n_common, not either arm's own coverage, is the number to read this by.

Both a and b are required. The benchmark defaults to gpqa_diamond.

Request

3 fields.

FieldInTypeRequiredDescription
benchmarkquerystringBenchmark is the catalog id to compare on, defaulting to gpqa_diamond.
aquerystringyesA is the first model id.
bquerystringyesB is the second model id.

Response

StatusBodyMeaning
200pairingok

200 body — 10 fields.

FieldInTypeAlwaysDescription
abodystringA is the first model id.
a_correctbodyintegerACorrect is how many of those common items A got right.
bbodystringB is the second model id.
b_correctbodyintegerBCorrect is how many of those common items B got right.
benchmarkbodystringBenchmark is the catalog id the two arms were compared on.
mcnemar_pbodynumberMcnemarP is the two-sided exact binomial p on the discordant pairs.
n_commonbodyintegerNCommon is how many items BOTH arms completed.
net_a_minus_bbodyintegerNetAMinusB is the two rescue counts subtracted — A's advantage in items.
rescue_a_over_bbodyintegerRescueAOverB is how many items A got right and B got wrong.
rescue_b_over_abodyintegerRescueBOverA is how many items B got right and A got wrong.

Failure carries the platform error shape — see Errors.

Examples

hanzo benchmark compare \
  --a <a> \
  --b <b>

Benchmark API · All Hanzo APIs · Interactive reference

How is this guide?

On this page