mcpField
P
paper-to-code

paper-to-code

github.com/lingzhi227开发4401.6k 次安装35 周前更新
代码仓库

关于 paper-to-code

paper-to-code 是一项将研究论文转化为完整可运行代码仓库的技能。它分阶段规划、分析论文、按依赖顺序实现并调试代码,配置仅取自论文明确提供的内容。

主要功能

  1. 01提取方法与实验细节
  2. 02规划架构和文件依赖
  3. 03按依赖顺序生成代码
  4. 04将设置写入 config.yaml
  5. 05通过最小修改调试

适用场景

  1. 01用代码复现论文方法
  2. 02根据论文内容规划代码仓库
  3. 03实现训练与评估模块
  4. 04排查复现过程中的错误

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/lingzhi227/agent-research-skills --skill paper-to-code

安装后在 Claude Code 中输入/paper-to-code确认已加载。

附带文件references/paper-to-code-prompts.md

详细介绍

论文转代码

将研究论文转换为完整、可运行的代码仓库。

输入

  • $0 — 论文 PDF 路径、论文文本或论文 URL

参考资料

  • Paper2Code 提示词(规划、分析、编码阶段):~/.claude/skills/paper-to-code/references/paper-to-code-prompts.md

工作流(来自 Paper2Code)

阶段 1:规划

通过四轮对话制定全面的计划:

  1. 总体计划:提取方法、实验、数据集、超参数和评估指标
  2. 架构设计:生成文件列表、Mermaid 类图和时序图
  3. 任务分解:分析各文件的逻辑,按依赖关系排列任务清单,并列出所需软件包
  4. 配置:将训练细节提取到 config.yaml 中
阶段 2:分析

按依赖顺序处理任务清单中的每个文件:

  1. 详细分析逻辑
  2. 将论文方法映射到代码结构
  3. 所有设置均参考 config.yaml
  4. 严格遵循 UML 类图中的接口
阶段 3:编码

按依赖顺序处理每个文件:

  1. 生成代码时,可使用所有先前生成的文件
  2. 严格遵循设计中的数据结构和接口
  3. 参考 config.yaml——绝不捏造配置值
  4. 编写完整代码——不得包含 TODO 或占位符
阶段 4:调试(如有需要)

如果执行失败:

  1. 收集错误消息
  2. 使用 SEARCH/REPLACE diff 格式确定根本原因
  3. 在保留原始意图的前提下进行最小限度的修复
  4. 重新运行,直至成功

输出结构

reproduced_code/
├── config.yaml        # Training configuration
├── main.py            # Entry point
├── model.py           # Model architecture
├── dataset_loader.py  # Data loading
├── trainer.py         # Training loop
├── evaluation.py      # Metrics and evaluation
├── reproduce.sh       # Run script
└── requirements.txt   # Dependencies

关键约束

  • 依赖顺序:生成每个文件时,均可使用所有先前生成的文件
  • 接口契约:Mermaid 图在所有阶段中充当严格的接口定义
  • 不得捏造:仅使用论文中明确说明的配置
  • 完整代码:每个函数都必须完整实现

规则

  • 严格遵循论文的方法——不得擅自改进
  • 按依赖顺序生成代码(数据加载 → 模型 → 训练 → 评估 → 主程序)
  • 使用 config.yaml 管理所有超参数和设置
  • UML 图中的每个类和方法都必须在代码中实现
  • 生成 reproduce.sh 脚本,以便通过单条命令运行
  • 如果论文细节含糊不清,请明确注明

相关技能

评论

支持 Markdown