Tau Bench (τ-bench) is a benchmark for tool-agent-user interaction. It emulates dynamic conversations between a user, simulated by a language model, and a language agent that has domain-specific API tools and policy guidelines, and it scores whether the agent completes the task correctly. It reports pass^k, the rate at which an agent succeeds on all of k repeated attempts at the same task, to measure consistency.
This repository holds the original airline and retail domains, and its task versions are no longer updated. The maintained successor, τ³-bench (in the tau2-bench repository), carries fixed airline and retail tasks plus a banking domain and a voice evaluation modality.
Agents can use tool-calling, Act, or ReAct strategies, and the user simulator can run as a plain LLM, ReAct, a verify strategy that checks each simulated reply with a second LLM call, or a reflection strategy. Models from OpenAI, Anthropic, Google, Mistral, and AnyScale are supported for both the agent and the user simulator. An auto error identification tool assigns each failure to the user, agent, or environment and classifies the fault type, and historical trajectories for both domains are included so results can be studied without rerunning the benchmark.
| Strategy | Airline pass^1 | Retail pass^1 |
|---|---|---|
| Tool-calling (claude-3-5-sonnet-20241022) | 0.460 | 0.692 |
| Tool-calling (gpt-4o) | 0.420 | 0.604 |
| Tool-calling (claude-3-5-sonnet-20240620) | 0.360 | 0.626 |
| Tool-calling (gpt-4o-mini) | 0.225 | n/a |
| Act (gpt-4o) | 0.365 | n/a |
| ReAct (gpt-4o) | 0.325 | n/a |
Features
- Simulated users: an LLM plays the customer in multi-turn conversations with the agent
- Domains: airline and retail environments with domain API tools and policy guidelines
- pass^k metric: measures how reliably an agent succeeds across repeated trials of the same task
- Agent strategies: tool-calling, Act, and ReAct
- User simulator strategies: plain LLM, ReAct, verify, and reflection
- Model providers: OpenAI, Anthropic, Google, Mistral, and AnyScale for agent and user models
- Auto error identification: assigns faults to user, agent, or environment and classifies the fault type
- Historical trajectories: recorded runs for both domains for analysis without rerunning


