RobustBench-TC
收藏RobustBench-TC 数据集概述
基本信息
- 数据集名称: RobustBench-TC: Unified Perturbation Benchmark for Tool-Calling Agents
- 创建者: 专家生成与机器生成
- 语言: 英语
- 许可协议: Apache 2.0
- 多语言性: 单语言
- 数据规模: 10K<n<100K
- 标签: 工具调用、函数调用、鲁棒性、扰动、基准测试、智能体、MDP、强化学习
- 任务类别: 文本生成
- 任务ID: 文本到文本生成
数据集构成
数据集包含69,921个样本,来源于6个基准数据集:
- BFCL V3: 36,354个样本
- ACEBench: 15,191个样本
- API-Bank: 10,074个样本
- ToolEyes: 4,579个样本
- ToolAlpaca: 1,938个样本
- RoTBench: 1,785个样本
核心特性
数据格式
每个样本为JSON行格式,包含以下字段:
id: 样本唯一标识符benchmark: 来源基准名称category: 类别perturbation: 扰动信息(类型、MDP类别、变体)conversation: 对话列表(角色、内容)tools: 工具列表(名称、描述、参数)golden_answers: 标准答案列表(名称、参数)eval_config: 评估配置(方法)
扰动分类
基于马尔可夫决策过程的扰动分类体系:
- 观察扰动: realistic_typos, query_paraphrase, paraphrase_tool_description, paraphrase_parameter_description(4种)
- 动作扰动: same_name (A-E), redundant(6种)
- 转移扰动: timeout, rate_limit, auth_error, server_error, malformed_response, schema_drift(6种)
- 奖励扰动: CD, TD, CD_NT, TD_NT, CD_AB, TD_AB(6种)
数据集组件
1. 完整基准
- 路径:
unified_benchmark/ - 内容: 69,921个样本,涵盖6个基准数据集和22种扰动类型
- 用途: 全面评估
2. 评估子集
- 路径:
datasets/api_eval/ - 内容: 轻量级评估集,用于API测试
- 规模: 200个唯一ID,3,145个静态样本,1,200个额外API调用,总计约4,345次API调用
- 来源分布:
- BFCL V3: 32个ID
- API-Bank: 74个ID
- ToolEyes: 51个ID
- ToolAlpaca: 22个ID
- RoTBench: 21个ID
3. 训练数据
- 路径:
datasets/train_toolrl/ - 内容: 4,000个样本,来源于ToolRL训练集
- 实验组:
- A组:
clean.jsonl(4,000个干净样本) - B组:
perturbed.jsonl(4,000个扰动样本) - C组:
mixed.jsonl(2,000个干净样本 + 2,000个扰动样本)
- A组:
- 扰动分布:
- 奖励扰动: 60%(2,111个样本)
- 观察扰动: 25%(880个样本)
- 动作扰动: 15%(527个样本)
关键发现
- 转移扰动: 平均准确率下降33.73%,最严重为timeout(33.73%)
- 奖励扰动: 平均准确率下降28.71%,最严重为CD_AB(37.82%)
- 观察扰动: 平均准确率下降4.85%,最严重为paraphrase(8.23%)
- 动作扰动: 平均准确率下降1.18%,最严重为redundant(5.68%)
使用方法
加载数据集
python from datasets import load_dataset
加载完整基准
ds = load_dataset("Justin1233/RobustBench-TC", "all")
加载单个基准
ds = load_dataset("Justin1233/RobustBench-TC", "bfcl_v3")
加载评估子集
ds = load_dataset("Justin1233/RobustBench-TC", "eval")
加载训练数据
ds = load_dataset("Justin1233/RobustBench-TC", "train_toolrl")
运行评估
bash
在GPT-4o上完整评估
python scripts/run_eval.py --model gpt-4o --api-key $OPENAI_API_KEY
干运行检查成本
python scripts/run_eval.py --model gpt-4o --dry-run
仅特定扰动
python scripts/run_eval.py --model gpt-4o --perturbations clean CD TD realistic_typos
来源基准详情
| 基准 | 样本数 | 评估方法 | 对话轮次类型 |
|---|---|---|---|
| BFCL V3 | 36,354 | 精确匹配 | 单轮+多轮 |
| ACEBench | 15,191 | 精确匹配 | 单轮+多轮 |
| API-Bank | 10,074 | 精确匹配 | 单轮 |
| ToolEyes | 4,579 | GPT评判 | 单轮 |
| ToolAlpaca | 1,938 | GPT评判 | 单轮 |
| RoTBench | 1,785 | 基于规则 | 单轮 |
目录结构
unified_benchmark/ # 完整基准 datasets/ ├── api_eval/ # 评估子集 └── train_toolrl/ # 训练数据 robustbench_tc.py # HuggingFace加载器 scripts/ # 脚本目录 dataset_card.yaml # 数据集卡片
引用
bibtex @inproceedings{robustbench-tc2026, title={RobustBench-TC: A Unified Perturbation Benchmark for Tool-Calling Agents}, year={2026}, }




