DSAgentBench:真实计算机环境中的端到端数据科学工作流智能体基准 DSAgentBench: Can Agents Automate End-to-End Data-Science Workflows in Real Computer Environments?
首个在真实操作系统内评估端到端数据科学工作流的基准,275个任务,最强模型成功率仅56.7%
前置知识
计算机使用智能体(Computer-Use Agent, CUA)
以视觉语言模型为核心的大模型智能体,每一步接收桌面截图等视觉观察,输出点击、拖拽、滚动、打字等鼠标键盘动作来操作真实计算机,通过感知-动作循环迭代完成多步任务,直到发出 DONE/FAIL 或耗尽步数预算。代表系统有 OpenAI 的 CUA、Claude computer use 等。
本文评估的对象正是这类智能体,实验设置(观察空间、动作空间、步数预算)全部围绕它的感知-动作循环设计,不理解这个概念就无法读懂第4节的方法和第5节的评测协议。
GUI Grounding 与可访问性树(A11y Tree)
GUI grounding 指把“我想点保存按钮”这类自然语言意图映射到屏幕上具体可交互元素及其像素坐标的能力。可访问性树是操作系统(本文经 AT-SPI 接口)导出的结构化界面元数据,包含元素角色、可读名称、包围盒和交互状态,与像素截图互补。
本文的核心实验对照之一就是“纯截图 vs 截图+A11y 树”两种观察模态,错误分析更显示 grounding 失败占开源模型错误的 97-98%,是全文结论的关键变量。
OSWorld 框架
一个在真实操作系统(Ubuntu/Windows/macOS)中评测智能体的框架:每个任务用虚拟机快照初始化环境状态,智能体像人一样用键鼠操作真实应用,任务结束后由确定性 Python 脚本检查最终状态并打分,支持配置文件定义初始与清理步骤。
DSAgentBench 直接构建在 OSWorld 之上,只是把任务换成数据科学场景并加装 Jupyter、Kaggle API、SQLite 等工具;理解 OSWorld 的快照-交互-评估机制是理解本文环境架构和可移植性声明的前提。
执行式评估(Execution-based Evaluation)
不检查代码文本或推理过程,而是实际运行智能体产出的脚本与文件,用确定性程序核对最终结果:文件是否存在、数值是否在容差内匹配、图表是否带正确的轴标签与图例、模型指标是否超过阈值等,输出 $[0,1]$ 区间的连续分数。
本文评估器的可信度建立在“确定性优先、LLM 裁判受限”的设计上(仅约10%可视化任务启用裁判且禁止自评),这套打分协议直接决定了 56.70% 等所有实验数字的含义。
研究动机
现有评测体系存在一条清晰的断层:数据科学基准与真实工作场景严重脱节。DS-1000、DABStep、MLAgentBench、DSBench、DSEval 等基准在沙箱中静态执行代码,既不要求智能体启动应用程序、导航文件系统、管理依赖,也不需要与终端和 IDE 交互;DA-CODE 虽然引入了任务规划与多文件分析,但仍被限制在沙盒 notebook 环境中,没有操作系统访问权,也没有跨工具协调。反过来,OSWorld、WebArena、ScreenSpot-Pro 等计算机操作基准评估的是通用桌面技能(打开应用、点击界面),完全不考虑智能体能否像数据科学家那样加载数据、探索规律、训练模型、生成图表并调试工作流。行业观察加剧了这一担忧:Anaconda 2025 报告指出数据科学家 40-60% 的时间花在数据准备与探索上,OpenAI 2024 的行业报告也承认当前 AI 系统尽管在孤立任务上表现强劲,却难以可靠地执行多步、跨工具的分析工作流。换句话说,没有现成基准能回答“智能体能否在真实电脑上独立完成一份数据分析”这个日益重要的问题。
本文的目标是本文的目标是构建 DSAgentBench——第一个让智能体在真实操作系统中执行完整端到端数据科学工作流的基准。具体包含四个子目标:其一,覆盖数据科学全生命周期的 275 个长程人工任务,从数据获取、探索性分析(EDA)、特征工程、建模、评估到可视化报告,每个任务平均包含 4-5 个分析步骤;其二,扩展 OSWorld 框架,集成数据科学核心工具(Jupyter Notebook、VS Code、Chrome、终端)与外部数据源(Kaggle API、OpenML、SQLite 数据库),让任务在真实 OS 状态中展开;其三,为每个任务配备确定性 Python 评估器,验证分析正确性、可视化输出与模型性能,而非只看代码能否运行;其四,用 15 个开源与闭源模型系统评测,并通过细粒度错误分析定位当前智能体在 grounding、工具编排与长程推理上的具体短板,为后续智能体研发提供路线图。
与已有工作不同的是,本文的独特切入角度是把两条平行发展许久的研究线强行合并到同一个考场:数据科学能力与真实计算机操作能力此前从没有被同时考察过——数据科学基准假设环境已经搭好、数据已经就位,只考“最后一公里”的代码生成;计算机操作基准假设任务是通用的,不包含任何统计分析语义。作者没有另起炉灶造环境,而是复用 OSWorld 这套已被验证的桌面交互基础设施,再补上数据科学家真正需要的工具链(notebook、数据库、Kaggle/OpenML 取数通道),并用实证方法保证任务真实性:人工分析 100 个高赞 Kaggle notebook 提炼真实工作流类型学,而不是拍脑袋设计任务。另一个容易被忽视的设计抉择是其评估哲学——坚持确定性执行评估为主体,LLM 只在约 10% 的可视化任务上、且只在确定性校验通过后充当跨模型裁判(Gemini 判 GPT-4o 的产出、反之亦然),从机制上杜绝了“用模型评模型自己”的循环性污染,这让基准结果比许多 agent 基准更可复核。
核心方法
直觉上,这篇论文考察数据科学智能体的方式就像考察一位新来的分析师:给他一台装好 VS Code、Jupyter Notebook、Chrome、终端和 SQLite 数据库的 Ubuntu 虚拟机,用自然语言交代分析目标,然后任由他自己翻文件、写代码、查数据库、调试报错,最后只验收最终交付物而不关心他中间用了什么工具、走了什么路径。技术上,基准被形式化为任务集合 $T = \{(C_i, I_i, V_i)\}_{i=1}^{N}$,其中 $C_i$ 是定义初始操作系统状态的任务配置(数据集、文件系统、已装库与应用),$I_i$ 是自然语言分析指令,$V_i$ 是确定性 Python 评估器。环境被建模为三元组 $(O, A, T)$:智能体在时刻 $t$ 接收观察 $o_t \in O$(1920×1080 截图,或截图加 A11y 树),从动作空间 $A$ 中选择 $a_t$(鼠标点击/拖拽/滚动、键盘输入/快捷键,以及 WAIT、DONE、FAIL 三个元动作),系统经转移函数更新状态 $s_{t+1} = T(s_t, a_t)$ 并返回新观察。执行在 DONE、FAIL 或 15 步预算耗尽时终止,全部轨迹被记录日志以便复现与失败诊断。任务成功当且仅当最终产物使评估器 $V_i$ 给出不低于 0.95 的总分。
核心创新是“结果导向的确定性执行评估”与“真实 OS 全生命周期覆盖”的结合,这带来了与已有工作的三点本质区别。第一,评估对象从代码变为工作流:DS-1000 等基准问“这段代码对不对”,DSAgentBench 问“智能体能否自己在真实电脑上从取数走到交付”,允许任意工具组合与路径,只要最终产物通过 $V_i$ 校验。第二,评估器设计分层把关:每个任务绑定确定性的评估函数(如核对输出文件中的 Pearson 相关系数是否在容差 $\epsilon = 0.01$ 内、分类任务的 accuracy/F1 是否达到 0.7 阈值、图表是否具备正确的轴标签、标题与图例),只有约 10% 的可视化任务在确定性校验通过后才调用 LLM 视觉裁判,且强制跨模型评审(Gemini-2.5-Pro 判 GPT-4o 的产物,GPT-4o 判其他模型的产物),杜绝自评循环。第三,任务构造坚持人在回路:四位领域专家用约三个月(约 400 工时)撰写全部 275 个任务,GPT-5、Claude 4.5 Sonnet、Gemini 3 只用于润色措辞和提示边界情况,所有任务逻辑、期望输出与评估器均由人类定义并经双人独立验证,这与当下大量自动生成 QA 对的基准形成鲜明对比。
方法步骤详情
整个基准的构建与执行分五步。第一步,数据采源:从 Kaggle 竞赛文件(优先高下载量、高评分)、学术评估常用的 OpenML、反映生产级关系存储的 SQLite 数据库、GitHub 仓库(如 Plotly datasets)及可通过 API 访问的网页数据收集异构数据,以结构化表格为主(95.3%),辅以图像(3.6%)与文本(1.1%),结构上覆盖从单表 CSV 到需要多表连接的关系模式。第二步,任务设计:两位拥有五年以上数据科学经验的标注者人工分析 100 个高赞 Kaggle notebook 提炼初始任务类型学,再用 LLM 扩展覆盖不足的模式,最终组织为六大能力类别——数据获取(23 个)、探索性分析(119 个)、特征工程(37 个)、建模(41 个)、评估与部署(12 个)、可视化与报告(33 个);四位专家在三个月内撰写 275 个任务,每个任务包含自然语言指令、可执行的环境配置和确定性评估函数三件套。第三步,双人验证:creator 撰写任务规格与评估逻辑,verifier 独立审查指令清晰性、用基线智能体实跑验证可执行性、校验评估器正确性,初始一致率 86%,其余任务经迭代讨论修订,最终 275 个任务全部获得双方认可。第四步,任务执行:加载干净的虚拟机快照并施加任务配置(目录创建、数据放置、应用启动),智能体进入感知-动作循环,使用 PyAutoGUI 动作空间(温度 0.1、top-p 0.9、动作后 2 秒延迟),最多 15 步,单任务超时 1800 秒。第五步,评估打分:从虚拟机收集脚本、生成文件、可视化与训练好的模型,按任务专用标准核对——数值任务做容差匹配、建模任务验指标阈值、可视化任务查轴标签/图例/数据映射并附加受限的 LLM 视觉质量评审,输出 $[0,1]$ 分数。
技术新颖性
从技术新颖性看,本文的贡献不在于提出新模型或新算法,而在于定义了一个此前缺失的评测坐标系,并在评测方法论上做了四件此前无人同时做到的事。其一,据作者所述这是第一个覆盖数据科学全生命周期且运行在真实操作系统中的基准,Table 1 的十维能力矩阵显示,十个相关基准中只有它同时满足完整 OS 交互、终端+GUI 控制、跨应用使用、中间状态依赖、受控执行环境和数据科学可视化评估。其二,任务真实性有实证锚点:EDA 占任务的 43.3%,与行业报告中数据科学家 40-60% 时间用于数据准备的观察吻合,难度分层(Hard 47.6%、Medium 46.9%、Easy 5.5%)按步数(easy 1-2 步、medium 3-4 步、hard 5 步以上)、分析复杂度与工具协调需求三重标准由双人独立标注。其三,评估协议的防污染设计:确定性优先、LLM 裁判仅限事后视觉质量评估、跨模型互评避免循环,这让执行式评估同时保住了严格性与语义合理性。其四,诊断深度罕见:论文不仅给成功率,还人工检查了 604 条闭源模型轨迹加 150 条开源模型轨迹,建立了 grounding/terminal/code/logic 四类失败根因分类,并用首错步(First Failure step)、预算耗尽率、错误恢复率三个时间维度刻画失败的阶段结构,这种粒度的失败解剖在 agent 基准论文中并不多见。
实验结果
主实验评测了 15 个模型,结论可以概括为“闭源断层领先、开源几乎全灭、人类仍显著占优”。在 Screenshot + A11y 树设置下,Claude-4.6-Sonnet 以 56.70% 的总体成功率一骑绝尘,GPT-5 为 29.81%,GPT-4o 为 24.54%,Gemini-2.5-Pro 为 20.81%,GPT-5-mini 为 19.03%,而 OpenAI CUA 仅 6.61%,Claude-4-Sonnet 和 Claude-4.5-Sonnet 分别只有 4.64% 和 9.21%,O4-mini 为 2.55%;在纯截图设置下 Claude-4.6-Sonnet 也有 50.55%。开源阵营惨不忍睹:最好的 OpenCUA-72B 和 Jedi-7B(配 GPT-4o 规划器)均只有 0.73%,UI-Tars 系列、GUI-OWL-7B 基本为 0,且这些模型均不支持 A11y 树输入。三位人类参考(两名应用科学家、一名硕士生)在同一协议下达到 85.09%,最佳智能体仍落后 28.39 个百分点。分任务类型看,Claude-4.6-Sonnet 在 EDA 上最强(A11y 下 64.88%),评估与部署类最高达 66.67%,而数据获取(47.82%)和可视化(42.42%)最难,反映出长程推理与工具协调仍是瓶颈。结构化因素上:单阶段任务显著高于多阶段(Claude-4.6 为 63.86% 对 51.24%);成功率随难度单调下降(easy 86.68%、medium 60.62%、hard 49.41%);Jupyter 任务通常优于 VS Code 任务(终端与环境相关失败更少)。两个关键消融说明“加资源没用”:GPT-4o 的步数预算从 15 提到 50,成功率仅从 24.54% 升到 25.81%,平均分从 0.55 到 0.57,说明瓶颈不在交互预算;提示其优先用终端执行也只是 19.34% 到 20.73% 的边际变化。错误分析(604 条闭源 + 150 条开源轨迹)给出了根因画像:开源模型 97-98% 的失败源于 grounding(UI-Tars-1.5-7B 达 98.18%),GPT-4o 有 80% 失败来自 grounding,而 grounding 更强的 Claude-4.6-Sonnet 的失败转向代码问题(43.70%)与推理逻辑(14.29%)。时间结构上,CUA 与 GUI-OWL-7B 超过 93% 的失败发生在晚期且 100% 耗尽预算、恢复率为 0,属于“瞎逛到死”;GPT-4o 与 Gemini-2.5-Pro 的失败更多出现在早期和中期,其中 Gemini-2.5-Pro 恢复率最高(19.23%)且成功任务平均只用 6.76 步,效率最佳。复测显示结果稳定:GPT-4o 与 Claude-4.5-Sonnet 两次评测差异在 ±1% 以内。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| 端到端数据科学工作流(总体成功率) | 任务成功率(总分 ≥ 0.95) | Claude-4.6-Sonnet 56.70%(Screenshot + A11y Tree) | 同榜单最强对手 GPT-5 29.81% | 领先 26.89 个百分点 |
| 与人类表现对照(同一任务环境与评估协议) | 任务成功率 | 人类参考 85.09% | 最佳智能体 Claude-4.6-Sonnet 56.70% | 智能体仍落后人类 28.39 个百分点 |
| 开源/混合 GUI 智能体(Screenshot 设置) | 任务成功率 | 最佳开源 OpenCUA-72B 与 Jedi-7B w/GPT-4o 均为 0.73% | 同设置下 Claude-4.6-Sonnet 50.55% | 落后约 50 个百分点(差距接近两个数量级) |
| 交互步数预算消融(GPT-4o) | 总体成功率 / 平均分 | 50 步:25.81% / 0.57 | 15 步:24.54% / 0.55 | 仅 +1.27 个百分点,证明瓶颈不在预算 |
| 终端优先提示消融(GPT-4o,Screenshot 设置) | 总体成功率 | 20.73%(提示优先用终端/命令行) | 19.34%(标准提示) | 仅 +1.39 个百分点,绕过 GUI 不能显著降低难度 |
局限与改进
作者在 Limitations 部分承认三点:开源智能体的推理栈不支持 A11y 树观察,只能在纯截图设置下评测,可能低估了开源模型的真实能力;细粒度错误分析基于 604 条闭源加 150 条开源的人工检查子样本,罕见失败模式可能未被覆盖;可视化任务的评估聚焦最终产物质量,视觉清晰度部分依赖 LLM 裁判的主观判断。我的补充观察有五点:第一,15 步预算虽然经消融证明对 GPT-4o 不是瓶颈,但该消融只做了 GPT-4o 一个模型,对 Claude-4.6-Sonnet 这类更强模型更宽的预算是否会改变结论并未验证;第二,任务难度标签由两位标注者主观判定,Hard/Medium 的边界可能影响分组结论的稳健性;第三,部分模型(如 OpenAI CUA 8.13%→6.61%、Claude-4-Sonnet)加入 A11y 后反而下降,说明结论对提示与接口工程敏感,基准分数隐含了特定 prompt 方案的选择;第四,实验全部在 Ubuntu 单一系统上进行,跨 OS 泛化只是设计上的可移植性声明而非实证结果;第五,所有数据集预下载到本地以避免外部依赖,这让 Web 数据获取类任务(仅占 6.5%)无法考察真实网页变化、反爬与动态加载的挑战,与真实取数场景仍有距离。
独立分析的弱点
独立分析这份基准与当前智能体的短板,可以归纳为五个方向。第一,grounding 是压倒性瓶颈:开源模型 97-98% 的失败源于无法把指令锚定到桌面状态,很多模型甚至打不开或控制不了终端;改进方向是把 A11y 树等结构化 UI 表示直接纳入 GUI 智能体的预训练或指令微调目标(目前的 OpenCUA、UI-Tars 均不支持 A11y 输入),或设计截图与 DOM/控件树融合的多模态观察编码器。第二,长程状态管理与错误恢复能力几乎为零:除 Gemini-2.5-Pro 的 19.23% 外各模型恢复率普遍低于 5%,CUA 和开源模型 100% 耗尽预算而不收敛;改进方向是引入显式任务状态跟踪、检查点与回滚机制、以及在每步动作后进行自我验证(如截图 diff 判断动作是否生效)。第三,动作语义与模型内部表示错位:错误案例显示模型会把换行意图写成字面 \n 字符串注入代码、反复安装扩展、无法关闭系统通知弹窗;改进方向是在动作空间中提供结构化的写文件/执行代码 API,让模型输出抽象意图而非模拟逐键键入,同时在训练中加入系统弹窗、通知等环境噪声的鲁棒性数据。第四,评估粒度仍偏粗:0.95 的成功阈值使“基本正确但差一点”的任务计为失败,且部分正确路径得不到学分;改进方向是引入分级成功标准或过程性得分,区分 grounding 失败与分析失败。第五,反馈信号单一:失败诊断靠人工检查轨迹,规模有限;可以训练自动轨迹标注器,把 604 条人工分析的分类经验扩展到全量轨迹上,形成可迭代的质量监控。
未来方向
作者明确提出的后续方向包括:在开源智能体获得 A11y 树支持后补齐混合观察模态下的评测;利用 OSWorld 对 Windows、macOS 的支持把任务实例化到其他操作系统;扩展 R/RStudio、PyCharm、云环境等更多数据科学工具栈;以及在更大规模轨迹上深化失败模式分析。基于本文成果还可以自然延伸出几条更有想象力的路线:其一,用 DSAgentBench 的执行反馈构造奖励信号,对 GUI 智能体做强化学习或拒绝采样微调,把 grounding(占开源失败近九成)和分析推理(占 Claude-4.6 失败近六成)拆成可分别优化的课程;其二,把评估从“只看终态产物”推进到“评估中间产物的质量”,类似过程奖励模型,让长工作流中的部分正确得到识别与强化;其三,探索多智能体分工架构——规划者负责拆解分析目标、执行者负责 GUI 操作、审查者负责核对中间统计结果——本文的单/多阶段性能差(63.86% 对 51.24%)暗示状态交接是关键改进点;其四,构建不预下载数据的“在线版”分片,让智能体面对真实 Kaggle/OpenML 网页与 API,考察检索、鉴权与动态网页处理;其五,随着模型能力提升,把任务难度上限拉高到自动超参搜索、统计显著性检验、多模型集成等更接近生产的数据科学实践,保持基准的区分度。
复现评估
复现条件相当友好。开源方面,作者承诺在 github.com/vis-nlp/DSAgentBench 发布完整代码库,包括全部系统提示词、任务 JSON 配置、确定性评估函数和各模型的推理脚本;附录 B 逐项列出了关键超参——PyAutoGUI 动作空间、1920×1080 分辨率、动作后 2 秒延迟、1800 秒任务超时、温度 0.1、top-p 0.9、单次调用最大 2000 token、15 步预算——透明度很高。数据方面,全部数据集来自 MIT 或明确宽松许可的平台,经许可过滤后随基准一并发布预下载副本,避免外部数据变动的不可复现性;作者还复测了 GPT-4o(24.54% 对 23.63%)和 Claude-4.5-Sonnet(9.21% 对 9.81%)验证了运行级稳定性在 ±1% 内。算力方面分两档:闭源模型只调 API,在一台 VMware Ubuntu 虚拟机上即可跑,成本主要是 API 费用(15 个模型 × 275 个任务的完整评测并不便宜,尤其是 GPT-5 与 Claude 级别的模型);开源模型需要自托管——GCP n1-standard-4 实例配 200 GB 磁盘跑 Docker 虚拟机,vLLM 推理引擎需要 GPU 支撑,其中 OpenCUA-72B 级别的模型对显存要求不低。总体评估:文档、配置与许可都为复现做了充分准备,单人复现单个模型的评测完全可行,但全量复现 15 个模型的榜单需要可观的 API 预算和 GPU 资源,更适合有实验室支持的团队。
论文图表
以截图序列展示一个多步骤数据科学任务的代表性轨迹:智能体先在环境中检索并加载数据,接着打开工具执行分析代码,最后产出评估器要求的结果文件。示例轨迹由 GPT-4o 生成。
这是读者理解“任务到底长什么样、智能体如何跨工具操作”的最直接入口,一图胜过千言地说明了端到端工作流评测与静态代码基准的区别。
展示六大任务类别的数量分布:探索性数据分析最大(119 个,占 43.3%),其后是建模(41)、特征工程(37)、可视化与报告(33)、数据获取(23)、评估与部署(12)。
分布本身就是一个论点:EDA 占比与行业报告“数据科学家 40-60% 时间用于数据准备与探索”吻合,说明任务构成不是拍脑袋定的,而是对齐真实实践。