![]()
給 Code Agent 一個明確的數(shù)據(jù)文件,它往往能寫出正確的分析代碼。
但如果把它放進一個包含 1000 + 文件的真實數(shù)據(jù)目錄,只告訴它一句自然語言問題,不給文件名、不告訴路徑、不提供 schema,它還能完成任務嗎?
中國人民大學的研究團隊提出CoDA-Bench,聯(lián)合評估 Agent 的Code Intelligence + Data Intelligence。該基準首次把 Code Agent 放進包含 1000 + 數(shù)據(jù)文件的復雜環(huán)境下,要求模型先自主探索文件系統(tǒng)、找到相關數(shù)據(jù),再編寫代碼完成分析。實驗顯示,即使當前表現(xiàn)最好的系統(tǒng),在 CoDA-Bench 上執(zhí)行準確率也只有61.1%;在更難的 CoDA-HARD 子集上,最高準確率進一步降至49.6%
當前 Code Agent 的真實瓶頸,并不是 “不會寫代碼”,而是找不對數(shù)據(jù)。相關論文、數(shù)據(jù)、代碼均已開源:
![]()
- 項目主頁:https://coda-bench.github.io/
- 論文鏈接:https://arxiv.org/abs/2606.15300
- 評估代碼:https://github.com/ruc-datalab/CoDA-Bench
- 數(shù)據(jù)鏈接:https://huggingface.co/datasets/RUC-DataLab/CoDA-Bench
現(xiàn)有 Code Agent 評估的隱藏前提
數(shù)據(jù)已經(jīng)被準備好
過去很多代碼或數(shù)據(jù)分析評測,都會默認把目標文件交給 Agent。模型要做的是讀取給定數(shù)據(jù)、編寫代碼、運行程序并輸出答案。
但真實工作流里,用戶往往不會提前整理好數(shù)據(jù),也不會告訴 Agent 正確文件在哪。數(shù)據(jù)可能分散在復雜目錄中,格式多樣、命名不統(tǒng)一,還夾雜大量主題相近但實際無關的文件
這就帶來一個容易被忽視的問題:如果 benchmark 默認把正確數(shù)據(jù)交給 Agent,它測到的更多是「給定數(shù)據(jù)后的代碼能力」,而不是完整真實工作流中的 Agent 能力。
CoDA-Bench 關注的正是這個缺口:
當正確數(shù)據(jù)不再被提前給出時,當前 Code Agent 還能否完成數(shù)據(jù)密集型分析任務?
CoDA-Bench:
讓 Agent 自己找數(shù)據(jù)、寫代碼、給答案
![]()
視頻鏈接:https://mp.weixin.qq.com/s/ofOV3iGUdfZyGpZ8az0fFA
模型既需要找數(shù)據(jù)也需要寫代碼分析數(shù)據(jù)!
在 CoDA-Bench 中,Agent 被放入一個包含 1000 + 數(shù)據(jù)文件的 Linux sandbox。它只會收到一個自然語言任務,但不被告知目標分析文件路徑、文件名或數(shù)據(jù)的 schema
它需要自己完成完整流程:
- 理解自然語言任務需求;
- 在 Linux 文件系統(tǒng)中探索數(shù)據(jù)目錄;
- 從大量候選文件中找到相關數(shù)據(jù);
- 理解數(shù)據(jù)結(jié)構(gòu)和字段含義;
- 編寫代碼進行分析;
- 運行代碼并輸出最終答案。
因此,CoDA-Bench 同時考察 Agent 的兩類能力:
- Data Intelligence:能不能在復雜數(shù)據(jù)環(huán)境中發(fā)現(xiàn)、理解和選擇正確數(shù)據(jù)源;
- Code Intelligence:能不能基于數(shù)據(jù)寫出正確分析代碼,并得到正確結(jié)果。
這使得 CoDA-Bench 不再只評測「給定數(shù)據(jù)后的代碼生成」,而是評測從數(shù)據(jù)發(fā)現(xiàn)到代碼執(zhí)行的完整鏈條
![]()
難點不在「文件多」,
而在「干擾文件也很像」
構(gòu)造這樣的環(huán)境并不容易,一種直觀做法是往目錄里塞很多無關文件。但隨機放入大量無關文件,Agent 很容易通過文件名、關鍵詞或格式把干擾數(shù)據(jù)排除掉。這樣的環(huán)境看起來復雜,但并不能真實反映數(shù)據(jù)發(fā)現(xiàn)的難度。
CoDA-Bench 沒有簡單地使用隨機噪聲,而是基于 Kaggle 生態(tài)構(gòu)建數(shù)據(jù)環(huán)境。研究團隊分析了 Kaggle notebooks 中不同數(shù)據(jù)集的共現(xiàn)關系:如果多個數(shù)據(jù)集經(jīng)常被真實用戶在同一個 notebook 中使用,它們通常屬于相近主題或分析場景。
基于這種共現(xiàn)關系,CoDA-Bench 構(gòu)建了一個大規(guī)模數(shù)據(jù)集網(wǎng)絡,并進一步劃分出多個語義相關的數(shù)據(jù)社區(qū),每個任務環(huán)境中的干擾文件都來自同一個數(shù)據(jù)社區(qū)。
這使得 Agent 面對的不是垃圾堆,而是一批看起來都合理的候選數(shù)據(jù)。
目標數(shù)據(jù)和干擾數(shù)據(jù)往往主題相近、結(jié)構(gòu)相似,Agent 不能只靠簡單關鍵詞匹配,而必須真正理解任務需求和數(shù)據(jù)內(nèi)容。
![]()
構(gòu)造CoDA-Bench數(shù)據(jù)環(huán)境所使用的Kaggle社區(qū)數(shù)據(jù)集共現(xiàn)關系圖
從真實 Kaggle notebook 中
反向構(gòu)造可驗證任務
除了數(shù)據(jù)環(huán)境,CoDA-Bench 的任務本身也來自真實分析過程。
研究團隊從 Kaggle notebooks 中提取可復現(xiàn)的分析結(jié)果,例如統(tǒng)計量、排名、比例、聚合結(jié)果等,并將這些結(jié)果作為solution anchor,再反向構(gòu)造自然語言問題。
這讓 CoDA-Bench 的任務具備三個特點:
- 真實來源:問題來自真實 Kaggle notebook 中的數(shù)據(jù)分析流程;
- 可驗證答案:答案對應可復現(xiàn)的統(tǒng)計量、排名、比例或聚合結(jié)果;
- 對抗式演化:如果任務對強模型太容易,就移除明顯提示;如果任務變得歧義或不可解,就修正或回退,最后再經(jīng)過人工檢查保證問題的可靠性。
這種構(gòu)造方式既保留了真實數(shù)據(jù)分析中的問題形態(tài),也保證答案可以通過代碼復現(xiàn),便于自動化評測。
![]()
結(jié)果:Agent 經(jīng)常不是寫錯,而是先找錯
研究團隊評測了多個當前常用的 Code Agent 和 Agent 框架,包括 Claude Code、Codex CLI、OpenHands 和 Mini-SWE-Agent。
實驗結(jié)果顯示,當前強 Agent 在 CoDA-Bench 上仍然面臨明顯挑戰(zhàn)
- 在完整 CoDA-Bench 上,最高執(zhí)行準確率為61.1%
- 在更難的 CoDA-HARD 子集上,最高執(zhí)行準確率進一步下降到49.6%
![]()
更關鍵的問題是:這些失敗并不總是來自代碼寫錯。很多時候,Agent 在第一步就沒有找到正確數(shù)據(jù)
為了區(qū)分「寫代碼難」和「找數(shù)據(jù)難」,研究團隊進行了 oracle data 實驗。
在普通設置中,Agent 需要自己從完整數(shù)據(jù)環(huán)境中發(fā)現(xiàn)相關文件;在 oracle 設置中,系統(tǒng)直接告訴 Agent 正確數(shù)據(jù)路徑,只考察后續(xù)代碼分析能力。
結(jié)果差距很大:
- Claude Code + Sonnet-4.6 在 CoDA-HARD 上從45.4%提升到73.1%
- OpenHands + GPT-5.5 從44.5%提升到68.9%
這說明,數(shù)據(jù)發(fā)現(xiàn)已經(jīng)成為當前 Code Agent 的關鍵瓶頸
如果一個 benchmark 默認把正確數(shù)據(jù)交給 Agent,它可能會系統(tǒng)性高估 Agent 在真實數(shù)據(jù)分析場景中的能力。
![]()
總結(jié)
CoDA-Bench 并不是為了證明某個具體 Agent 不夠強,而是希望補上當前 Agent 評測中的一個重要缺口:真實任務中,數(shù)據(jù)往往不是已經(jīng)準備好的輸入,而是散落在復雜環(huán)境中的資源
一個真正可用的 Code Agent,需要先判斷該用什么數(shù)據(jù)、從哪里找數(shù)據(jù)、如何驗證數(shù)據(jù)是否匹配任務需求,然后才能談得上寫代碼分析。CoDA-Bench 希望為這一方向提供更真實、更系統(tǒng)的評測基礎。
論文、代碼和數(shù)據(jù)均已開放,歡迎大家體驗并提交新的 Agent 結(jié)果。
作者介紹
![]()
張玉鑫,中國人民大學信息學院在讀博士生,導師為范舉教授。研究方向包括大語言模型、數(shù)據(jù)智能體、數(shù)據(jù)分析與智能體強化學習,主要關注大模型在復雜數(shù)據(jù)環(huán)境中的自主查詢、數(shù)據(jù)發(fā)現(xiàn)和代碼分析能力。個人主頁:yuxinzhang-research.github.io
![]()
張紹磊,中國人民大學信息學院助理教授。他于中國科學院計算技術研究所獲得博士學位。研究方向涵蓋大語言模型、智能體系統(tǒng)、數(shù)據(jù)科學。相關研究成果在 NeurIPS、ACL、ICLR 等國際人工智能與自然語言處理會議發(fā)表論文 30 余篇,開源的多語言與多模態(tài)大模型項目在 GitHub 社區(qū)累計獲得 10000 + 星標,模型下載量萬余次。長期擔任國際會議 ACL ARR 領域主席。個人主頁:https://zhangshaolei1998.github.io/
![]()
范舉,中國人民大學教授、博士生導師,國家級青年人才,中國計算機學會數(shù)據(jù)庫專委會、大數(shù)據(jù)專委會執(zhí)行委員。研究方向包括:數(shù)據(jù)治理技術與系統(tǒng)、智能數(shù)據(jù)庫系統(tǒng)等。相關研究成果在計算機領域國際頂級期刊 / 會議發(fā)表論文 60 余篇。作為負責人先后主持國家自然科學基金優(yōu)秀青年基金項目、重點項目、面上項目,以及多項產(chǎn)學研合作項目。先后獲得 ICDE 2025 Best Paper Runner-Up、ACM SIGMOD Research Highlight Award、ACM China Rising Award、寶鋼優(yōu)秀教師等獎勵。
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.