τ-bench · Airline domain · Milestone 1

Benchmark validation · Select a model to view its results

Validating tau bench benchmark setup

Before comparing Talkdesk, we checked that our setup reproduces a published τ-bench result.

Milestone 1: validate the benchmark setup with the adapter
Verdict

Milestone 1 complete: setup validated. pass¹ matches the published result. pass⁴ is lower, but consistent across our Azure runs, and the adapter scores in the same range as native τ-bench. We are ready to run GPT-4.1-mini and Talkdesk.

Run settings (same for every run)

Sources: Saved run configuration · Published run configuration

AgentGPT-5.2, high reasoning
Simulated customerGPT-5.2, low reasoning
Tasks50 Airline tasks × 4 tries = 200 conversations
ProviderAzure OpenAI (published run: OpenAI)
SeedsSame fixed seeds in every run
Parallel3 conversations at a time (our runs)

What we did

Sources: Adapter implementation · Offline tests

1Pick a referenceNo published GPT-4.1-mini result, so we used the published GPT-5.2 resultDone
2Run native τ-benchOn Azure OpenAI, twice, 200 conversations eachDone
3Build the adapterTools served through our MCP server, like Talkdesk will useDone
4Run the adapterSame tasks, same settings, compared with nativeDone
5GPT-4.1-mini native baselineNative τ-bench on Azure with GPT-4.1-miniDone
6GPT-4.1-mini adapter baselineThe same model through adapter based execution and the MCP serverDone

Results: pass¹ matches, pass⁴ is lower

50%60%70%80%90%pass¹pass²pass³pass⁴Published 72%Native 1 64%Native 2 58%Adapter based 56%

passk = share of tasks that pass on all k tries, estimated from each task's 4 tries. Every run loses points as k grows; ours follows the same slope as native Azure run 2.

Runpass¹pass²pass³pass⁴
Published (OpenAI)83%78.33%75%72%
Native Azure, run 183%75.67%69.5%64%
Native Azure, run 280%70.67%63.5%58%
Adapter based78%67.67%61%56%
pass¹ matchesNative Azure scored 83% and 80% against the published 83%. Adapter based scored 78%, in the same range.
pass⁴ is lowerEven native τ-bench on Azure scored 64% and 58% against the published 72%. Adapter based (56%) is in the same range as those Azure runs.
pass² and pass³ follow the same patternEach extra required try lowers every run. Adapter based tracks native Azure run 2 within 3 points at every level.
Same setup, different scoresThe two native runs had identical settings, yet differ by 3 points on pass¹ and 6 on pass⁴.

Observed score range

Sources: Calculated score differences

The adapter scored 78% pass¹ and 56% pass⁴, within 3.5 and 5 percentage points, respectively, of the two native Azure runs’ average.

How each task scored, out of 4 tries

RunTasks by tries passed (50 tasks)4/43/42/41/40/4Passed conversations
Published (OpenAI)
366125166 / 200
Native Azure, run 1
3211214166 / 200
Native Azure, run 2
2911514160 / 200
Adapter based
2810543156 / 200
4 of 43 of 42 of 41 of 40 of 4
Same pass¹, different pass⁴Published and native run 1 both passed 166 of 200 conversations, so pass¹ is identical (83%). Native run 1 spread its failures across more tasks: 11 tasks at 3 of 4 instead of 6. That alone takes pass⁴ from 72% down to 64%.

The numbers behind the scores

1. How pass¹ to pass⁴ are calculated

For each task we ask: if we picked k of its 4 tries at random, how likely is it that all k passed? The run's score is the average of that across the 50 tasks.

A task that passed…pass¹pass²pass³pass⁴
4 of 4 tries100%100%100%100%
3 of 4 tries75%50% (3 of 6 pairs)25% (1 of 4 triples)0%
2 of 4 tries50%17% (1 of 6 pairs)0%0%
1 of 4 tries25%0%0%0%
0 of 4 tries0%0%0%0%

Worked example, adapter based pass²: (28 tasks × 100% + 10 × 50% + 5 × 17% + 4 × 0% + 3 × 0%) ÷ 50 = 67.67%

2. Gap to native Azure

pass¹pass⁴
Native Azure average (runs 1 and 2)81.5%61%
Adapter based78%56%
Gap−3.5 points−5 points

3. Is the gap meaningful?

Compare the adapter's gap with the gap between two native runs where nothing was changed.

83%Native run 1 (pass¹)
80%Native run 2, same setup, 3 points lower by chance alone
78%Adapter based, 2 points below native run 2

The adapter's gap is about the same size as the difference between two identical native runs, so it can't be blamed on the adapter. pass⁴ shows the same thing: native runs 64% and 58% (6 points apart), adapter based 56% (2 points below run 2).

4. How much identical runs vary

32 / 200conversations flipped between pass and fail across the two native runs (16%)
8 lost, 5 gainedperfect tasks between native run 1 and run 2
0settings changed between the two runs

How the adapter differs from native

Native τ-bench

Customer→GPT agent→Tools inside τ-bench

Adapter based

Customer→GPT agent→Our MCP server→τ-bench scores
Chat Completions APIThe same API as native. The only difference left is where the tools run.

What we checked on the adapter run (validation summary)

1,984
tool calls through MCP, all with the same result as native
200 / 200
conversations completed on the adapter
0
scoring differences when every conversation was re-scored

Why pass⁴ moves more than pass¹

pass⁴ is all or nothing. A task counts only if all 4 tries pass.

4 of 4 → counts for pass⁴
3 of 4 → task lost for pass⁴

One slip costs 2 points on pass⁴ but only 0.5 on pass¹. About 20 of the 50 tasks pass on some tries and fail on others.

One common slip comes from τ-bench's simulated customer:

AgentPlease reply YES to confirm you want me to cancel reservation Z7GOZK now.
CustomerYES. ###STOP###

Chat ends. Nothing is cancelled, so the task fails.

This happened 4 times in native run 1, 7 times in native run 2 and 7 times on the adapter, so it affects both sides.

Re-run test: we replayed only those conversations and gave the agent one more turn after the customer's "YES".

3 / 4Native run 1 completed
7 / 7Native run 2 completed
7 / 7Adapter based completed

17 of 18 finished the task correctly. This was a diagnostic only; the official scores above are unchanged.

Three tasks almost never pass

Sources: Per-task results across runs · Published task results

0 / 20Task 7tries passed across all five runs
0 / 20Task 44tries passed across all five runs
2 / 20Task 32tries passed across all five runs

These tasks are hard for GPT-5.2 itself, in the published run, native Azure and adapter based alike. They lower every run's score by the same amount, so they don't affect the comparison.

Cost and time per full run

RunAgentCustomerTotalTime
Published (OpenAI)$22.76$3.20$25.95n/a
Native Azure, run 1$20.05$2.97$23.024.7 h
Native Azure, run 2$19.45$2.85$22.302.1 h
Adapter based$18.13$3.00$21.131.9 h

Costs are token-based estimates, not invoices.

Sources

Every number on this page comes from these saved files in the project repository (tau2-bench/). Click a source name to open the file. The fingerprint is the start of each file's SHA-256 hash; if the file changes, the fingerprint changes.

ResultSourceFingerprint
Published GPT-5.2 scores (83% / 72%)Saved published trajectories and leaderboard entryPublished conversations
Published leaderboard entry
308a133d880def13
Native Azure, run 1 (83% / 64%)Full results, 200 conversationsNative run 1 results436e45285cccd736
Native Azure, run 2 (80% / 58%)Full results, 200 conversationsNative run 2 resultsbb45befbc34d2466
Adapter (78% / 56%)Full results, 200 conversationsAdapter resultse2786602319924c5
1,984 tool calls matched, 0 re-scoring differences, 200 sessionsValidation summary written after the adapter runAdapter validation summary87b2853820e7fbf1
Task breakdown, pass² and pass³, gaps, 32/200 flipsCalculation methodology and resultsStatistical analysis
Task scores per run
Calculation methodology
ae88582039867a1c
Customer says YES and ends the chat (4 / 7 / 7 cases)Manual review of all 118 failed conversationsCustomer-stop review
Failed conversation endings
—
Re-run test, 17 of 18 completedContinued conversations, each re-scoredAdapter continuation: first case
Adapter continuation: remaining cases
Native run 1 continuation
Native run 2 continuation
—
Adapter code and testsInitial suite: 72 tests; expanded suite: 80 testsAdapter implementation
Offline tests
Implementation commit: 9395f8c
—

How to check: run sha256sum <file> in the repository and compare the first 16 characters. Every run's scores were also re-calculated offline from these files with τ-bench's own scorer, with no differences.

Milestone 1 progress

1GPT-4.1-mini baselines · DoneNative and MCP results in the GPT-4.1-mini Adapter Validation tab
2TalkdeskSame MCP server, tasks and simulated customer
3Compare on pass¹ through pass⁴Evaluate performance across all four pass metrics