PaperCoder:一個將學術論文轉換為代碼庫的多智能體LLM系統(tǒng)
PaperCoder是什么?
PaperCoder是一個將學術論文自動轉換為代碼庫的多智能體LLM系統(tǒng),通過自動化代碼生成,研究人員和開發(fā)者可以更快地實現論文中的算法和模型,減少手動編碼的時間和錯誤,PaperCoder系統(tǒng)采用三階段的工作流程,包括規(guī)劃、分析和代碼生成,每個階段都由專門的智能體進行處理。通過這個系統(tǒng),研究人員和開發(fā)者能夠更高效地將理論成果轉化為實際的編程項目,為推動技術進步和創(chuàng)新提供了便利。
Paper2Code核心功能
多智能體框架:Paper2Code 采用多智能體大型語言模型(LLM)框架,模擬人類軟件開發(fā)生命周期,分為“規(guī)劃(Planning)- 分析(Analysis)- 編碼(Coding)”三個階段。
規(guī)劃階段:構建高層路線圖,設計系統(tǒng)架構,確定文件依賴關系,并生成配置文件。
分析階段:對每個文件或函數的具體實現細節(jié)進行解讀,關注其目的、輸入/輸出、交互和約束。
編碼階段:根據前面的成果,逐文件生成模塊化且考慮依賴關系的代碼。
代碼生成與優(yōu)化:能夠從機器學習研究論文中自動生成完整、功能性的代碼倉庫,支持多種深度學習框架(如 TensorFlow 和 PyTorch),并生成 requirements.txt 文件列出所需依賴。
高質量代碼輸出:生成的代碼不僅在語法上正確,而且在功能上接近可運行狀態(tài),僅需極少量修改。
優(yōu)勢
自動化程度高:首次實現了直接從科學論文自動生成完整、可執(zhí)行代碼倉庫,不需要依賴現有代碼或片段。
性能卓越:在多項基準測試和人工評估中,Paper2Code 均顯著優(yōu)于現有代碼生成框架和樸素方法。
實用性強:人工評估顯示,生成的代碼對研究人員實際重現工作具有高度實用價值,85%的評估者認為其有用。
劣勢
領域局限性:目前主要針對機器學習論文,向其他科學領域的泛化能力有待驗證。
對底層 LLM 的依賴:框架性能受限于所使用的基礎 LLM 的能力。
可能存在遺漏和誤解:即使在最好的情況下,生成的代碼也可能存在對論文細節(jié)的遺漏或誤解。
Paper2Code使用方法
環(huán)境設置:
安裝必要的軟件包,如 Openai 的 API 包。
配置 API 密鑰以訪問 OpenAI 的服務。
PDF 轉換:
將論文的 PDF 文件轉換為結構化的 JSON 格式。
使用 s2orc-doc2json 工具進行轉換。
運行代碼生成:
修改配置文件以指定論文路徑和其他參數。
運行提供的腳本以啟動代碼生成過程。
Github:https://github.com/going-doer/Paper2Code