τ³-bench#
简介#
τ³-bench(Tau Cubed Bench)是 tau-bench 系列的 v1.0.0 版本。在 τ²-bench 基础上新增了知识检索领域 banking_knowledge、跨领域 75+ 任务质量修复,以及音频原生(voice)评测模式。
项目地址:https://github.com/sierra-research/tau2-bench (v1.0.0)
PyPI 包名仍为
tau2。τ³-bench 与 τ²-bench(v0.2.0)无法在同一环境共存,请二选一。
核心特点:
动态交互:模拟真实用户与 AI 代理的多轮对话
工具集成:代理需要正确使用提供的 API 工具
策略遵循:代理需要遵循业务策略
知识检索(新增):可插拔 RAG 流水线,支持 BM25、稠密向量(OpenAI / Qwen)、grep、沙箱 shell、reranker 等
任务质量(新增):airline / retail / banking 等领域共 75+ 处 expected actions 修复
支持的评测领域:
airline:航空公司客服
retail:零售客服
telecom:电信客服
banking_knowledge:银行客服,配套 698 份政策/流程文档(RAG)
安装依赖#
pip install evalscope
# 需要 Python 3.12-3.13。安装时请带上 [knowledge] extra 以支持 banking_knowledge 领域。
pip install "tau2[knowledge] @ git+https://github.com/sierra-research/tau2-bench@v1.0.0"
# 上游 v1.0.0 的 text-only 路径也会急加载 voice 模块,需要补装以下轻量 voice 依赖
# (macOS 上 pyaudio 需先 `brew install portaudio`):
pip install pyaudio elevenlabs deepgram-sdk websockets jiwer pydub aiohttp scipy
重要
数据集由 evalscope 自动从 ModelScope 拉取(数据集 ID:
evalscope/tau3-bench-data),并自动设置 TAU2_DATA_DIR。仅支持通过 OpenAI 兼容 API 服务评测被测模型。
τ³-bench 与 τ²-bench 无法共存(同一 PyPI 包名
tau2)。
使用方法#
以 qwen-plus 为例。官方榜单通常使用 user model = gpt-4.1-2025-04-14。
import os
from evalscope import TaskConfig, run_task
task_cfg = TaskConfig(
model='qwen-plus',
api_url='https://dashscope.aliyuncs.com/compatible-mode/v1',
api_key=os.getenv('DASHSCOPE_API_KEY'),
eval_type='openai_api',
datasets=['tau3_bench'],
dataset_args={
'tau3_bench': {
'subset_list': ['airline', 'retail', 'telecom', 'banking_knowledge'],
'extra_params': {
'user_model': 'qwen-plus',
'api_key': os.getenv('DASHSCOPE_API_KEY'),
'api_base': 'https://dashscope.aliyuncs.com/compatible-mode/v1',
'generation_config': {
'temperature': 0.7,
},
# 仅 banking_knowledge 使用,其他领域忽略:
'retrieval_config': 'bm25',
'retrieval_config_kwargs': {},
}
}
},
eval_batch_size=5,
limit=5,
generation_config={'temperature': 0.6},
)
run_task(task_cfg)
检索配置(banking_knowledge)#
retrieval_config 通过 extra_params 传入,控制 agent 如何访问 698 份知识库文档。该字段会原样转发给 tau2.run.run_task(retrieval_config=...)。
配置 |
agent 拿到的工具 |
额外依赖 |
|---|---|---|
|
无 |
无(离线) |
|
无(整个 KB 塞进 prompt) |
无 |
|
无(gold docs 塞进 prompt) |
无 |
|
|
无 |
|
|
|
|
|
|
|
|
|
|
增加 LLM reranker |
还需 |
|
增加 |
同基础配置 |
|
沙箱 |
npm |
|
BM25 + 稠密 + shell |
上述各项依赖叠加 |
完整矩阵见上游 README:https://github.com/sierra-research/tau2-bench/blob/v1.0.0/src/tau2/knowledge/README.md
提示#
使用 gpt-4.1 作为用户模拟模型时设置:
extra_params.user_model='gpt-4.1-2025-04-14'extra_params.api_base='https://api.openai.com/v1'extra_params.api_key=<OPENAI_API_KEY>
仅评测 airline/retail/telecom 时,从
subset_list移除banking_knowledge即可避免拉取检索相关依赖。
评测流程#
任务初始化:为代理提供领域工具与策略
用户模拟:用户模型按场景产生请求
代理响应:被测模型生成带工具调用的响应
多轮交互直至任务完成或失败
由 tau3 evaluator 计算 reward,映射为 evalscope 报告中的
acc
指标说明#
Pass^1:首次尝试即完成任务的比例(越高越好)
Aggregation:
mean_and_pass_hat_k(设置repeats > 1可计算 pass@k)