PaperCoder:一个将学术论文转换为代码库的多智能体LLM系统
PaperCoder是什么?
PaperCoder是一个将学术论文自动转换为代码库的多智能体LLM系统,通过自动化代码生成,研究人员和开发者可以更快地实现论文中的算法和模型,减少手动编码的时间和错误,PaperCoder系统采用三阶段的工作流程,包括规划、分析和代码生成,每个阶段都由专门的智能体进行处理。通过这个系统,研究人员和开发者能够更高效地将理论成果转化为实际的编程项目,为推动技术进步和创新提供了便利。
Paper2Code核心功能
多智能体框架:Paper2Code 采用多智能体大型语言模型(LLM)框架,模拟人类软件开发生命周期,分为“规划(Planning)- 分析(Analysis)- 编码(Coding)”三个阶段。
规划阶段:构建高层路线图,设计系统架构,确定文件依赖关系,并生成配置文件。
分析阶段:对每个文件或函数的具体实现细节进行解读,关注其目的、输入/输出、交互和约束。
编码阶段:根据前面的成果,逐文件生成模块化且考虑依赖关系的代码。
代码生成与优化:能够从机器学习研究论文中自动生成完整、功能性的代码仓库,支持多种深度学习框架(如 TensorFlow 和 PyTorch),并生成 requirements.txt 文件列出所需依赖。
高质量代码输出:生成的代码不仅在语法上正确,而且在功能上接近可运行状态,仅需极少量修改。
优势
自动化程度高:首次实现了直接从科学论文自动生成完整、可执行代码仓库,不需要依赖现有代码或片段。
性能卓越:在多项基准测试和人工评估中,Paper2Code 均显著优于现有代码生成框架和朴素方法。
实用性强:人工评估显示,生成的代码对研究人员实际重现工作具有高度实用价值,85%的评估者认为其有用。
劣势
领域局限性:目前主要针对机器学习论文,向其他科学领域的泛化能力有待验证。
对底层 LLM 的依赖:框架性能受限于所使用的基础 LLM 的能力。
可能存在遗漏和误解:即使在最好的情况下,生成的代码也可能存在对论文细节的遗漏或误解。
Paper2Code使用方法
环境设置:
安装必要的软件包,如 Openai 的 API 包。
配置 API 密钥以访问 OpenAI 的服务。
PDF 转换:
将论文的 PDF 文件转换为结构化的 JSON 格式。
使用 s2orc-doc2json 工具进行转换。
运行代码生成:
修改配置文件以指定论文路径和其他参数。
运行提供的脚本以启动代码生成过程。
Github:https://github.com/going-doer/Paper2Code