用途:将研究论文转为可运行的最小 Python 项目,每个非平凡实现选择都回引论文,先审计歧义再写代码,未说明的细节如实标注。
支持的输入:arXiv ID、arXiv URL、本地 .pdf、OpenReview 论坛/论文页 URL、OpenReview 直接 PDF URL。明确拒绝:仅 DOI 输入、OpenReview 之外的通用落地页、以粘贴的论文原文作为主要来源。若已有本地 PDF,优先用本地路径而非网络获取。
参数:PAPER_SOURCE(论文输入)、MODE(minimal 默认、full、educational)、FRAMEWORK(pytorch 默认、jax、numpy)。来源会归一化为 arxiv_id、arxiv_url、local_pdf、openreview_page、openreview_pdf;不支持时快速失败并给出原因,不静默回退。
依赖门禁:运行前检查 scripts/、pipeline/、guardrails/、knowledge/、scaffolds/ 下相关文件与 Python 依赖。缺依赖时报告缺失包与安装命令,未经用户明确要求不静默安装。建议命令:python -m pip install pymupdf4llm pdfplumber pymupdf requests pyyaml
工作目录:先运行获取脚本确定 PAPER_KEY,中间产物放在 .paper2code_work/{PAPER_KEY}/,最终项目生成在当前目录 {paper_slug}/ 下。
流程:阶段1 论文获取与解析,运行 python "$SKILL_DIR/scripts/fetch_paper.py" "$PAPER_SOURCE" ".paper2code_work",再运行 python "$SKILL_DIR/scripts/extract_structure.py" ".paper2code_work/{PAPER_KEY}/paper_text.md" ".paper2code_work/{PAPER_KEY}";产物缺失则停止。阶段2 贡献识别,写 contribution.md。阶段3 歧义审计,先读 guardrails/hallucination_prevention.md,写 ambiguity_audit.md,未说明处保留不确定性。阶段4 代码生成,先读 guardrails/scope_enforcement.md、guardrails/badly_written_papers.md 及 knowledge/、scaffolds/ 相关文件。阶段5 生成 {paper_slug}/notebooks/walkthrough.ipynb。
模式:minimal 只实现核心贡献,仅当贡献本身是训练方法才含训练循环;full 含核心贡献及范围内的训练/数据/评估骨架;educational 范围同 minimal,但增加教学注释与更丰富的 notebook。
诚实规则:未实际复现不得声称与原论文一致;不得凭空编造缺失超参数;不得让无关工程打磨扩大范围;官方代码仅作参考而非绝对真理。
清理与输出:成功完成后才删除 .paper2code_work/,中途失败保留以便检查。结束时打印完成信息,含论文标题、来源类型、输出目录、生成文件列表、未说明选择数量(见 REPRODUCTION_NOTES.md)、模式与框架;提前停止则输出失败摘要,指明失败阶段与阻塞的产物或依赖。始终应用三个 guardrails 文件,并在实现前查阅 knowledge/ 下 Transformer 组件、训练配方、损失函数、论文转代码常见错误等文件。