← 返回资料站  /  AutoResearch
基准 评测基准

DSBench: How Far Are Data Science Agents from Becoming Data Science Experts?

DSBench:数据科学 agent 离专家还有多远?
一句话Yale + Tencent AI Lab 用 ModelOff(466 道数据分析题)和 Kaggle(74 个建模竞赛)搭了个真实场景数据科学 agent 基准;2024 年发布时最强 agent(AutoGen+GPT-4o)只解出 34.12% 的分析题、RPG 34.74%,远低于人类的 64.06%;2025 年 7 月被 OpenAI 用作 ChatGPT agent 的官方评测(报 89.9% / 85.5%),已成该方向的标准基准之一。

这是什么

在 DSBench 之前,数据科学方向的 benchmark(如 DS-1000)大多是从教程或 StackOverflow 抠出来的短代码补全题:上下文短、单表、纯文本、答案就是一段代码。而真实数据科学工作是拿着一份几页长的业务描述、几个 Excel 文件和图表,回答具体问题或从头训一个模型。DSBench 就是要补这个 gap。

它包含两类任务。数据分析任务来自 ModelOff(全球金融建模竞赛,题目现托管在 eloquens.com):38 个 challenge 共 466 道选择/填空题,平均题干 815 词,带 Excel 多表、图片等多模态输入,人类平均每题要花 18.5 分钟。数据建模任务来自 Kaggle:筛出 74 个有 train/test/sample_submission 标准结构的竞赛,agent 要端到端读题、设计模型、写代码、产出 submission 文件,按各竞赛原始 metric 打分。

2025 年 1 月被 ICLR 2025 接收;2025 年 7 月 OpenAI 在 ChatGPT agent 发布博客里把 DSBench 作为数据科学能力的官方评测,这是它影响力的主要来源(S2 引用 119)。

DSBench 数据分析任务全流程示例:输入是长文本题干 + 多张表 + Excel 数据文件(图中是 1000 名选民的投票数据),agent 需要写代码(如 pandas 读 Excel 后按 District Code 区间计数)执行后根据运行结果作答,再由评测器判分。可以直观看到它和'读一段短题干写函数'式 benchmark 的区别。
DSBench 数据分析任务全流程示例:输入是长文本题干 + 多张表 + Excel 数据文件(图中是 1000 名选民的投票数据),agent 需要写代码(如 pandas 读 Excel 后按 District Code 区间计数)执行后根据运行结果作答,再由评测器判分。可以直观看到它和'读一段短题干写函数'式 benchmark 的区别。

机制与做法

数据分析任务:多模态长上下文问答

输入是任务介绍 I、数据文件集 D(Excel 为主,平均 2.3 个 sheet,最大 2.7MB)和问题 Q,agent 需要写代码算出答案。判分不做精确匹配,而是用一个 LLM 做语义等价比较 S(A, Â),报 task-level accuracy 和按 challenge 平均的 competition-level accuracy。

刻意保留了真实竞赛的脏细节:一个 challenge 里多张表格式不统一(有的属性在首行、有的在首列)、问题可能跨表、题干很长且大部分内容与当前小题无关,考验 agent 找关键信息的能力。对工具不设限,用 Python 或 Excel 都行。

38 个 ModelOff challenge 上 GPT-4o / AutoGen+GPT-4o / Gemini 的逐 challenge 准确率:难度分布极不均匀,少数 challenge 三家都能到 0.8+,但相当多 challenge 全员低于 0.2 甚至全零(如 #7、#19、#36),说明总分 34% 背后是'会的很会、不会的完全不会'。
38 个 ModelOff challenge 上 GPT-4o / AutoGen+GPT-4o / Gemini 的逐 challenge 准确率:难度分布极不均匀,少数 challenge 三家都能到 0.8+,但相当多 challenge 全员低于 0.2 甚至全零(如 #7、#19、#36),说明总分 34% 背后是'会的很会、不会的完全不会'。

数据建模任务:端到端 Kaggle 竞赛

由于 Kaggle 测试集不公开,作者把原 training set 按 8:2 重切成 train/test,评测时本地跑脚本打分,不需要向 Kaggle 提交。输入是竞赛描述、train/test 文件和 sample submission(平均上下文+数据约 79k token),输出是 submission 文件。

两个指标:Task Success Rate(能否在限定步数内无 bug 地产出格式合法的 submission)和 Relative Performance Gap(RPG = mean(max((p-b)/(g-b), 0)),p 为 agent 成绩、g 为该竞赛最好成绩、b 为 baseline 成绩),解决了 74 个竞赛 18 种 metric 无法直接平均的问题。人类参照是 22 个竞赛里能跑通的公开 Kaggle 代码。

被测系统与主结果

测了三档:裸模型(Llama3、LLaVA、GPT-3.5/4/4o、Gemini 1.5 Pro、Claude 3.5 Sonnet)、AutoGen 多 agent 框架、OpenAI Code Interpreter。分析任务上 AutoGen+GPT-4o 最好(34.12%,花费 $114),裸 GPT-4o 28.11%,Claude 3.5 Sonnet 意外地只有 6.01%(疑似格式/拒答问题);人类 64.06%。建模任务上 AutoGen+GPT-4o Task Success 71.62%、RPG 34.74%,离人类代码差距明显。另一个观察:越晚年份的 ModelOff 题越难,所有模型准确率随年份下降。

关键结果

实证核查

扎实benchmark 本身货真价实:数据、评测代码、各模型运行记录全部开源,被 OpenAI 官方采用是最强的第三方背书;瑕疵在于评测脚本早期有 bug、判分依赖 LLM 语义比较、人类基线是小样本,且 OpenAI 报的高分尚无人独立复现。
466 个数据分析任务 + 74 个建模任务,来自 ModelOff 和 Kaggle 真实竞赛,全部可获取。
属实。repo 的 data_analysis/data.json 列了全部题目来源(ModelOff 过往题现托管在 eloquens.com,arXiv v3 摘要因此把来源名改成了 'Eloquence',README 仍写 modeloff),处理好的数据经 Google Drive 和 HF(liqiang888/DSBench)分发。小坑:HF 上的 data.zip 会触发平台恶意文件扫描警告,issue #9(2025 年,open)问 'Malware in data.zip?' 至今无人回复。
评测是 execution-based、可复现的。
大体成立但早期脚本有 bug:issue #3 指出 data modeling 的多个 evaluation 脚本(如 covid19-global-forecasting-week-2_eval.py)硬编码路径导致 FileNotFoundError,作者确认并修复;issue #2 指出 modeling 目录缺 performance evaluation 文件,后补上。9 个 issues 中 7 个已关闭,repo 到 2025-08 仍在维护。另外分析任务判分靠 LLM 做语义比较而非精确匹配,存在判分噪声,论文未报告判分器本身的一致性。
OpenAI ChatGPT agent 在 DSBench 上拿到 89.9%(分析)/ 85.5%(建模),远超人类。
这是 OpenAI 博客(2025-07-17)的自报数字,README 也引用了。issue #8 'Has anyone been able to replicate OpenAI's results?' 中作者回应:他们自己的后续实验确认长 CoT 推理模型在数据分析任务上确实显著变强,但直接用在建模任务上仍然困难,推测 OpenAI 有很强的私有 scaffold——即建模子集 85.5% 这个数没有独立复现,分析子集'接近打穿'则可信。
人类专家基线:分析 64.06%、建模显著优于 agent。
基线口径偏弱,论文自己也写明了:分析任务的人类成绩只在 10 个抽样 challenge 上测(source/parts/4_experiment.tex 表注 'Human performance is based on results from 10 sampled competitions');建模的'人类'是从 Kaggle 上扒的公开代码,648 个竞赛里只有 22 个能跑通。用它当'专家水平'的锚点要打折扣。

与我们方向的关系

对做 autoresearch/agent 评测的同学,DSBench 是'数据分析 + 建模'两类能力最常被引用的真实场景基准,和 MLE-bench(纯 Kaggle、比排名)互补:DSBench 的分析子集考长上下文多模态理解,建模子集用 RPG 归一化不同 metric,这个归一化设计(max((p-b)/(g-b),0))值得借鉴到我们自己的评测里。

两个使用上的注意:一是分析子集在推理模型时代已接近饱和(OpenAI 报 89.9%),新工作若只报这个子集说服力有限,建模子集更有区分度;二是它的判分依赖 LLM 语义比较、人类基线是小样本,拿它的绝对数字做跨论文比较时要看清各家用的判分器和版本。

阅读笔记

arXiv 有 v3(2025-04),摘要里把数据来源从 ModelOff 改成了 Eloquence(题目托管网站 eloquens.com),README 和代码目录仍用 modeloff 命名,查资料时两个名字都要搜。数据不在 repo 里,要从 Google Drive 或 HF 下 data.zip(HF 会报恶意文件扫描警告,是误报还是真有问题没人验证过)。

材料清单

TeX 源码
已存档:Raw/dsbench/source/
代码仓库github.com/LiqiangJing/DSBench
127★ · 最近推送 2025-08-17
数据集huggingface.co/datasets/liqiang888/DSBench
处理好的分析/建模数据(data.zip,HF 有恶意文件扫描警告)
项目主页liqiangjing.github.io/dsbench.github.io/
官方主页,含 leaderboard 式结果图
OpenAI 采用openai.com/index/introducing-chatgpt-agent/
ChatGPT agent 发布博客,报 DSBench 分析 89.9% / 建模 85.5%
复现讨论github.com/LiqiangJing/DSBench/issues/8
issue #8:OpenAI 结果无人独立复现,作者回应推理模型在建模子集仍困难

同类条目