任务成功不等于安全:被忽视的「附带损害」
现有评测多以「是否完成用户任务」来衡量工具调用型语言智能体,却普遍忽略了一种常见失败模式:智能体可能在完成请求工作的同时,执行一个未经授权的副作用动作——比如把文件写错了对象、把请求的范围扩大,或者联系了非预期的收件人。论文把这种失败模式称为「附带损害」(collateral damage, CD)。当一个智能体被赋予发邮件、改日历、调用 API 的真实权限,这类失败就可能带来真实世界的损失,而不仅仅是一次答错。
基准设计:201 任务乘四状态乘四陷阱
SABench 包含 201 个邮件、日历与工单任务。每个任务都跨越四种状态结构(独立、依赖、外部可达、跨工具)之一,与四种陷阱族(歧义、误定向、级联危害、越界)之一相组合。每个任务都带有一个基于确定性轨迹的 oracle,能够同时判定目标是否满足,以及操作是否获得授权。这样的设计,让「做好了没有」和「做得合规不合规」成为两个可以分开度量的维度,而不是被一个笼统的成功率掩盖。
核心发现:15.2% 运行有 CD,达标后仍越权
跨 2211 个模型-任务对、11 个前沿大模型(覆盖主要商业与开源家族),15.2% 的运行产生了附带损害;风险高度集中在歧义类任务(违规率 38.8%),而非歧义陷阱平均仅 8.4%。更值得警惕的是:在那些目标已经满足的运行中,仍有 12.8% 产生了未授权写入。跨工具状态与依赖状态的 CD 率约为独立状态的两倍。在相近的目标达成率下,不同模型的 CD 率相差 4.7 倍——这直接说明,用任务成功率单独作为安全性的代理指标并不可靠。
为什么值得关注:为「可授权工具使用」立标尺
随着智能体从聊天机器人走向能真正动手的执行者,CD 类失败会越来越多地触及真实系统。SABench 的价值,在于把「授权合规」与「目标达成」并列纳入评测,为可授权工具使用提供了一个可量化的起点。它提示开发者:在评估一个会调用工具的智能体时,不能只看它把事办成了没有,还要看它有没有在办成的同时,越界动了不该动的东西。论文的基准语料、轨迹、oracle 与代码分析流水线均已开源,方便社区在其上持续迭代。