Vibeleaderboard
Index / tool

τ²-bench

taubench.com
Visit taubench.com
Category
Developer Tools
Rank

Previous survey · No. 867 ·

Listed in
#18 Find AI benchmarks
Type
TOOL
Latest release
v1.0.1
Date

About

Evaluates tool-using agents in realistic conversations where an agent, user, policy, and changing environment must stay aligned across a task.

What it does

τ²-bench simulates customer service work across airline, retail, telecom, banking knowledge, and mock domains. It runs turn-based text or simultaneous voice sessions, then records results against domain tasks and evaluation criteria.

Why it's ranked here

The framework covers unusually varied evaluation surfaces within one package: text, realtime audio, retrieval, and reinforcement learning. Its domain registry, configurable runs, saved trajectories, retries, and concurrency make it credible infrastructure, though reproducibility demands careful version control.

What's good

Domains bundle policies, tools, tasks, and optional user tools, which keeps scenarios structured and extensible. The runner separates simulation, construction, and batch execution. Batch runs support checkpointing, resumption, retries, worker processes, provider limits, seeded execution, and selectable task splits.

Tradeoffs

The installation is substantial beyond core text evaluation. Voice requires a large optional dependency set plus system audio tools, while knowledge and reinforcement learning need separate extras. Python support is limited to 3.12 and 3.13. A grading correction made older banking knowledge results noncomparable.

How to use it well

Use it when developing or comparing customer service agents that call tools, especially when repeatable domain tasks and saved trajectories matter. Start with core text runs, pin the repository state, then add voice, retrieval, or Gym support selectively. It does not provide a general production agent platform.

Technical notes+

pyproject.toml defines the tau2 package with Hatchling, Python >=3.12,<3.14, a tau2 CLI entry point, and separate voice, knowledge, gym, dev, and experiments extras. src/tau2/runner/__init__.py exposes a three-layer architecture: run_simulation, builder functions, and batch functions with checkpointing and retries. src/tau2/run.py re-exports that surface and preserves deprecated flat-argument shims. src/tau2/registry.py registers agents, users, domains, task loaders, splits, filters, and metadata. src/tau2/__init__.py exposes library classes and compatibility aliases. The Makefile separates core, voice, knowledge, Gym, and full pytest targets.

Observed

License
MIT
Primary language
Python
Python support
Python 3.12 and 3.13
Packaging
Hatchling build backend; installation uses uv with optional extras
Interfaces
Command-line interface, Python library, and optional Gymnasium-compatible environment
Evaluation modes
Turn-based text and full-duplex voice
Built-in domains
Mock, airline, retail, telecom, and banking knowledge
Test structure
Pytest targets are separated for core, voice and streaming, knowledge, Gym, and full-suite runs

Read from README.md, Makefile, pyproject.toml, src/tau2/cli.py, src/tau2/run.py, src/tau2/config.py, src/tau2/__init__.py, src/tau2/registry.py, src/tau2/gym/__init__.py, src/tau2/user/__init__.py, src/tau2/agent/__init__.py, src/tau2/utils/__init__.py, src/tau2/voice/__init__.py, src/tau2/runner/__init__.py.

Tags

benchmarktool usecustomer agentsevaluation

Tech Stack

Python

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.