实证论文的100% 复现:Stanford 基于 Claude Skills 打造通用 Agentic AI 科研流水线
- account: 学术AI大模型
- publish_time: 2026-03-04 10:05:46
- url: https://mp.weixin.qq.com/s?src=11×tamp=1777090833&ver=6681&signature=cCYZUDbo4C39pnn3sCxvuhe2iPRNDUWfKngnKQEEacyDZ3ZJk6VVCTlS4pQSU6P3S7c5o0g7xuL5NtBGXz7IJkwapo13mGxF-CX*3l*R6YXvKW8OFz8ms8GdNWsITf96&new=1
- description: https://arxiv.org/abs/2602.16733实证社会科学界正经历一场深刻的信誉革命,许多顶
- timestamp: 1772589946
---
https://arxiv.org/abs/2602.16733
实证社会科学界正经历一场深刻的信誉革命,许多顶级期刊已强制要求作者公开数据和代码以供审查。表面上看,这似乎彻底解决了研究结果的可信度问题。但在实际操作中,研究人员却陷入了严重的执行瓶颈。真实的复现包往往充斥着本地计算机的绝对路径、已失效的软件依赖以及逻辑混乱的文档。这导致大规模验证实证结果的工作变得极其昂贵且低效。为了解决这一行业共性痛点,斯坦福大学与香港浸会大学的学者提出了一种全新的智能体人工智能工作流。他们在九十二篇包含工具变量设计的论文上进行了系统测试,成功将原本需要数年才能完成的手工复现工作大幅压缩至几天内。在具备可用材料的前提下,该系统甚至实现了百分之百的复现成功率。
核心架构创新与科学确定性保障
这项研究的突破点在于建立了一套彻底分离科学判断与计算执行的底层逻辑。大型语言模型本质上具有概率性和随机性,而学术复现则要求绝对的数值精确度。为了调和这一矛盾,作者构建了严格的三层架构体系。顶层是由大型语言模型担任的协调层,专职负责任务路由与异常处理。底层是由版本控制脚本构成的执行层,负责输出确定性的计算数值。连接这两层的是结构化的知识库。
在这样的设计下,大型语言模型的不可预测性被严格限制在协调环节,而不会污染最终的统计输出。当系统遇到未知的代码故障时,协调层会结合跨阶段的一致性检验来定位根因,将解决方案抽象为通用修复规则并存入知识库,从而实现故障处理经验的持续积累,避免了为单一论文打专属补丁的做法。
智能体科研流水线的具体操作流程
接下来我们详细梳理这套高度自动化的具体操作流程。整个流程通过七个专职模块依次推进,无需人工干预。唯一的起点是一份学术论文的便携式文档格式文件。
步骤 1:元数据提取(Profiler Agent)
操作 :将目标论文的PDF文件输入给Profiler代理 。
执行逻辑 :使用 pdftotext 工具将PDF转换为纯文本 。利用确定性规则结合轻量级LLM,提取论文标题、作者、期刊年份 。
关键动作 :在论文中寻找“数据可用性声明”或相似段落,提取数据仓库的URL如Dataverse、GitHub、OSF链接) 。
输出结果 :生成一个包含上述信息的 study_info.json 文件 。
步骤 2:下载复现材料
操作 :Librarian代理读取第一步生成的 study_info.json 。
执行逻辑 :采用“PDF优先(PDF-first)”策略,优先使用论文中提取的直接链接下载,而不是通过关键词去搜索,以避免下载错数据集 。通过各个平台的API(Dataverse API, OSF API等)批量下载代码和数据文件 。
输出结果 :在本地工作区生成一个包含完整复现包(代码、数据)的文件夹,并记录版本 。
步骤 3:识别模型设定(Profiler Agent 再次出场)
操作 :解析下载好的复现包中的所有代码文件( .do , .R , .py ) 。
执行逻辑 :使用正则表达式或关键词扫描工具变量(IV)的回归命令。例如在Stata中寻找 ivreg2 , ivregress , reghdfe ,在R中寻找 iv_robust() , feols() 。提取出回归模型的核心元素:结果变量(Y)、内生处理变量(D)、工具变量(Z)、控制变量(X)以及聚类变量等 。如果遇到非常复杂的代码结构,调用LLM协助解释变量分配 。每篇论文最多保留3个主要的模型设定 。
输出结果 :生成核心契约文件 metadata.json ,供后续执行阶段使用 。
步骤 4:代码清理与环境准备(Janitor Agent)
操作 :由于原作者的代码往往带有强烈的个人电脑路径或交互设定,你需要让Janitor代理自动清理这些代码 。
执行逻辑 :
修复路径 :把原代码中的绝对路径(如 C:\Users\author\... )全部替换为本地相对路径 。
移除交互与绘图 :注释掉会导致批量运行中断的绘图代码(如 graph export , png() )和交互代码(如 View() ) 。
处理依赖 :注释或替换掉R中已弃用的包(如 rgdal ) 。
输出结果 :生成清理后的可执行代码,并输出一份清理日志 cleaning_log.json 。
步骤 5:代码执行与数据提取(Runner Agent)
操作 :在后台批量执行清理后的脚本 。
执行逻辑 :调用相应的编译器( statab , Rscript , python3 )按照正确顺序运行代码 。在原代码中动态插入数据导出命令,将最终用于回归的内存数据集导出为CSV格式 。跨语言验证(针对Stata) :读取导出的CSV数据,在R中用 estimatr 包重新运行该回归,确保生成的系数与Stata日志中的系数在数值容差内完全一致,以验证数据提取的准确性。
输出结果 :提取出的分析数据集( analysis_data.csv )和执行日志( execution_log.txt ) 。
步骤 6:统计诊断
操作 :运行一套预先写好的、完全不依赖LLM的固定R语言诊断脚本 diagnostics_core.R 。
执行逻辑 :载入第五步提取的CSV数据集和第三步设定的 metadata.json 。计算第一阶段的有效F统计量(Effective F-statistic),检验是否存在弱工具变量 。计算Anderson-Rubin检验、Bootstrap置信区间,并进行留一法(Jackknife)敏感性分析 。将结果与朴素的OLS估计进行对比 。根据触发的警告数量(例如F统计量小于10,或置信区间包含0),赋予该模型一个可信度评级(High 到 Very Low) 。
输出结果 :生成高度结构化的 diagnostics.json 文件 。
步骤 7:生成标准化报告
操作 :将诊断结果转化为易读的报告 。
执行逻辑 :读取 diagnostics.json ,自动生成包含执行摘要、模型细节、系数对比图、F统计量分布图以及敏感性分布图的Markdown文件或PDF文档 。
输出结果 :最终的诊断评估报告 report.pdf 。
自适应修复循环
在实际复现大量文献时,一定会在上述步骤中遇到各种千奇百怪的报错比如变量名大小写不一致、CSV列名被改变等。作者设计了一个“人工在环的四步解决循环”机制,我们可以这样操作:
发现异常 :让LLM读取执行日志检查错误,或者通过对比不同步骤输出的不一致性来发现“静默错误” 。
定位根源 :不要简单地重新尝试命令,而是让LLM追踪错误跨越了哪几层代码 。
实施通用修复 :一旦找到原因, 不要只为这篇论文打补丁 ,而是将修复逻辑写成通用的Python代码规则更新到你的第三层执行代码中 。
记录知识 :在对应的 SKILL.md 中以标准格式记录下问题背景、原因和解决规则。下一次LLM再看到类似报错时,它就会直接参考规则处理,而不会胡乱猜测 。
大规模评估结果与学术影响
作者在二百一十五个具体的模型规格上进行了大规模实证评估。结果不仅验证了该流水线极高的端到端成功率,还进一步利用扩展后的语料库证实了观测研究中工具变量强度与估计值偏差呈现负相关的理论推断。系统展现了强大的泛化与自适应能力,目前积累的数十条通用知识条目已经能够覆盖绝大多数常规语法错误与数据结构缺失问题。这种机制使得该工作流不仅能够完美适配当前的工具变量研究,更为未来扩展至双重差分模型等复杂因果推断领域奠定了坚实的工程基础。
实用操作提示词参考
为了帮助我们在日常科研与代码审查中快速应用类似的工程理念,作者团队提炼了以下提示词供大家直接复制使用于各类大语言模型对话中。
提示词一:适用于个人代码库的自动化清洗与路径修复。
作为一名资深的科研数据工程师,请审查我提供的这段数据分析脚本。你的任务是提取并列出所有带有本地计算机特征的绝对文件路径,将它们统一转换为相对路径。同时,请识别出所有只用于图表显示而与核心统计计算无关的代码行,并在这些代码行上方添加注释标记。请以清晰的叙述性文本向我解释你做了哪些修改以及为什么这样修改,绝对不要改变原有变量的命名和基础数学逻辑。
提示词二:适用于利用大模型辅助提取学术论文的复现材料。
请扮演专业的学术文献情报分析师。我将为你提供一篇实证研究论文的文本内容。你需要仔细阅读其中的数据可用性声明部分,精准定位并提取出作者提供的复现代码和数据集存放网络地址。如果在正文中找不到明确的链接,请根据论文的标题作者和发表年份,推测最有可能托管这些材料的学术数据仓库平台名称。请用一段连贯流畅的文字向我报告你的最终发现。
预览时标签不可点
微信扫一扫
关注该公众号
继续滑动看下一个
轻触阅读原文
学术AI大模型
向上滑动看下一个
知道了