指南
方法论叶,以 PaperBench 基准 + DeepCode / AutoReproduce / paper-replicate-agent 生态为代表(无单一官方仓)。下文为社区共识工作流与各工具的公开说明。
速查
- 六步工作流:理解 → 环境 → 代码 → 执行 → 对齐 → 报告
- 生态工具:PaperBench(OpenAI 基准)· DeepCode(港大 84.8%)· AutoReproduce(Paper Lineage)· PaperCoder(51.1%)· paper-replicate-agent(Claude Code 指令)
- DeepCode 84.8% vs Claude 58.7%:领先约 26 个百分点
- 五大难点:数据可得性 · 随机种子 · 未公开超参 · 算力 · 模糊描述
- 反模式:跳过环境固化、只跑一次不复现随机性、对齐容差拍脑袋、不写差异报告
- AutoReproduce 关键概念:Paper Lineage(论文谱系)——追溯复现每步决策
- paper-replicate-agent 定位:研究承包商——规划方案、写脚本、验证、记录差异
复现工作流六步
1 理解:抽方法/数据/指标/超参
读懂论文,把「它做了什么」结构化成可实现的要素:
- 方法:模型架构(attention、loss、forward 流程)
- 数据:训练/验证集、预处理、批大小
- 指标:用哪个数对比(accuracy / FID / BLEU…)
- 超参:学习率、warmup、epoch、权重衰减
难点:论文常把关键超参藏在附录、甚至完全不写,要靠猜。
2 环境:还原依赖与版本
bash
# 典型复现环境固化
python -m venv .venv && source .venv/bin/activate
pip install torch==2.x torchvision # 锁版本
pip install -r requirements.txt # 论文给的,常不全
nvidia-smi # 确认 CUDA 版本匹配要点:用容器或锁文件固化——复现的最大敌人是「我机器能跑,你机器不能」。锁定 Python/CUDA/PyTorch/驱动版本。
3 代码:实现模型与训练循环
把伪代码翻译成可运行的训练/评估循环:
- 模型定义(按论文网络结构)
- 数据加载(Dataset / DataLoader,预处理对齐)
- 训练循环(前向、loss、反向、优化器步进)
- 评估循环(按论文指标)
- checkpoint 保存
难点:伪代码与实现有差距——归一化放哪、激活用什么、初始化怎么搞,论文常略过。
4 执行:跑实验、log 指标
跑训练,过程中:
- 记录每个 epoch 的 loss / 指标
- 保存最佳 checkpoint
- 监控显存、训练时间
难点:算力门槛——大模型复现成本高,agent 写得出代码不代表跑得起;随机性——同代码不同种子可能差 1-2 个点。
5 对齐:与论文指标对比
把 agent 跑出的指标和论文表里的数对齐:
text
指标 论文 复现 差异
Test Acc 87.3% 86.8% -0.5pp ✅ 容差内
FID 12.4 14.1 +1.7 ⚠️ 偏高难点:误差容许范围无共识——多大算「复现成功」?社区一般看相对差异与趋势,而非绝对一致。
6 报告:写差异分析
输出一份质量报告:
- 复现了哪些表/图,哪些没复现
- 指标差异及其可能原因(超参/种子/版本)
- 论文里没写清楚的点及你的处理方式
- 可重复执行的命令清单
AutoReproduce 的 Paper Lineage(论文谱系) 就是把六步里每个决策(为什么选这个超参、为什么跳过这步)都留痕,便于事后审计。
生态工具深入
PaperBench(OpenAI 基准)
要求 agent 完成论文理解 → 代码库开发 → 实验执行 → 调试的完整复现流程。特点:
- 选 ICML/NeurIPS/ICLR 级别论文,复现难度真实
- 人类专家需数天
- Claude 在该榜第一(通用 agent 里)
- 用途:衡量 agent 复现能力,不是直接拿来复现的工具
DeepCode(港大/HKU)
开源的论文→代码复现 agent:
- PaperBench 得分 84.8%,目前公开 SOTA
- 领先 Claude Code(58.7%)约 26 个百分点
- 首次在论文复现代码任务上超过剑桥、伯克利等高校的 ML 博士
- GitHub 8k+ 星
- 用途:直接拿来跑——输入论文,端到端输出复现代码
AutoReproduce(多 agent 框架)
端到端自动复现论文实验的框架:
- 多 agent 分工(理解/编码/执行/调试)
- 引入 Paper Lineage(论文谱系)——追溯复现每步决策
- 适合需要审计、可追溯的复现场景(科研合规、复现报告)
PaperCoder
科学代码复现框架:
- 复现率约 51.1%
- 被 DeepCode 显著超越
- 定位偏「科学代码生成」,可作为对比基线
paper-replicate-agent(Claude Code 指令模板)
社区给 Claude Code 的明确指令模板,定位「研究承包商」:
- 读论文 → 用提供的数据复现结果
- 输出可重复的 R/Python 代码
- 规划复现方案、编写脚本、验证输出
- 记录差异并报告
- 用途:给现有 agent(Claude Code/Cursor)装上复现工作流,无需换框架
五大难点与反模式
| 难点 | 表现 | 应对 |
|---|---|---|
| 数据可得性 | 论文用闭源/受限数据 | 找开源替代、或注明数据缺失 |
| 随机种子 | 同代码不同种子差 1-2 点 | 固定种子、多 seed 平均 |
| 未公开超参 | 关键超参不在正文 | 附录/代码/issue 挖、合理猜测 |
| 算力 | 大模型训练成本高 | 用小规模实验验证趋势 |
| 模糊描述 | 归一化/初始化/激活没写 | 参考同领域惯例、做消融 |
反模式:
- 跳过环境固化——「我机器能跑」不等于可复现
- 只跑一次——随机性会让单次结果误导判断
- 对齐容差拍脑袋——没标准就扯皮
- 不写差异报告——「差不多」不叫复现完成
- 把基准(PaperBench)当工具直接用——它衡量能力,不是拿来复现的 agent
与相邻叶的边界
- 本叶讲用 agent 复现论文的方法论与生态
- 不涵盖通用 ML 训练框架(PyTorch/JAX)、不涵盖论文写作助手
- PaperBench 评估的是 agent 能力,与 Claude Code Skills 类工程叶有交集——但本叶聚焦「论文复现」垂直场景