一水 發(fā)自 凹非寺
量子位 | 公眾號 QbitAI

又一開源AI神器在外網(wǎng)引起熱議!

名為PaperCoder,是一個多智能體LLM(大語言模型)系統(tǒng),能自動實現(xiàn)機器學(xué)習(xí)論文中的代碼。

打開網(wǎng)易新聞 查看精彩圖片

據(jù)介紹,之所以推出這一工具,是因為經(jīng)過統(tǒng)計發(fā)現(xiàn):

  • 2024年,在NeurIPS、ICML和ICLR等頂會上,平均只有21%的機器學(xué)習(xí)論文共享了代碼

打開網(wǎng)易新聞 查看精彩圖片

造成的結(jié)果是,復(fù)現(xiàn)和構(gòu)建研究成果的速度極其緩慢。

于是乎,來自韓國科學(xué)技術(shù)院的四位研究人員推出了PaperCoder,在規(guī)劃、分析和代碼生成這三個階段,分別由專門的智能體來處理不同的任務(wù),最終完成頂會論文的代碼生成工作。

并且最終生成的代碼超越了一些現(xiàn)有基準,甚至獲得了所招募的77%原頂會論文作者的認可

打開網(wǎng)易新聞 查看精彩圖片

下面具體來看。

智能體提示詞曝光

智能體提示詞曝光

通過模仿人類研究員編寫庫級代碼的典型生命周期,PaperCoder大致分為三個流程:

  • 規(guī)劃(Planning):包括總體計劃、架構(gòu)設(shè)計、邏輯設(shè)計和配置文件;
  • 分析(Analyzing):將計劃轉(zhuǎn)化為詳細的文件級規(guī)范;
  • 代碼生成(Coding):生成最終代碼以實現(xiàn)論文中的方法和實驗。

打開網(wǎng)易新聞 查看精彩圖片

研究過程中,每一個步驟所用到的提示詞如下:

1)在規(guī)劃階段生成總體計劃。

  • 系統(tǒng)提示詞:
  • 你是一位具有豐富實驗設(shè)計和復(fù)現(xiàn)科學(xué)研究的專家研究員和戰(zhàn)略規(guī)劃者。
  • 你將收到一份JSON格式的研究論文。你的任務(wù)是創(chuàng)建一個詳細且高效的計劃,以重現(xiàn)論文中描述的實驗和方法。該計劃應(yīng)與論文的方法、實驗設(shè)置和評估指標(biāo)精確對齊。
  • 要求:
  • 1、與論文對齊:你的計劃必須嚴格遵循論文中描述的方法、數(shù)據(jù)集、模型配置、超參數(shù)和實驗設(shè)置。
    2、清晰且結(jié)構(gòu)化:以組織良好且易于遵循的格式呈現(xiàn)計劃,將其分解為可操作的步驟。
    3、優(yōu)先考慮效率:優(yōu)化計劃以確保清晰度和實際可實施性,同時確保對原始實驗的忠實度。

除了系統(tǒng)提示詞,下面還包括用戶在上傳論文后,所提到的任務(wù)安排、要求、注意事項等。

打開網(wǎng)易新聞 查看精彩圖片

2)在規(guī)劃階段生成架構(gòu)設(shè)計。

  • 用戶提示詞:
  • 你的目標(biāo)是創(chuàng)建一個簡潔、可用且完整的軟件系統(tǒng)設(shè)計,以復(fù)現(xiàn)論文的方法。使用適當(dāng)?shù)拈_源庫,并保持整體架構(gòu)簡單……

后面還附上了格式示例。

打開網(wǎng)易新聞 查看精彩圖片

3)在規(guī)劃階段生成邏輯設(shè)計。

  • 用戶提示詞:
  • 你的目標(biāo)是根據(jù)產(chǎn)品需求文檔(PRD)/技術(shù)設(shè)計分解任務(wù),生成任務(wù)列表,并分析任務(wù)依賴關(guān)系。你將分解任務(wù),分析依賴關(guān)系。
  • 你概述了復(fù)現(xiàn)論文方法和實驗的清晰PRD/技術(shù)設(shè)計。
  • 現(xiàn)在,讓我們根據(jù)PRD/技術(shù)設(shè)計分解任務(wù),生成任務(wù)列表,并分析任務(wù)依賴關(guān)系。邏輯分析不僅要考慮文件之間的依賴關(guān)系,還要提供詳細的描述,以協(xié)助編寫復(fù)現(xiàn)論文所需的代碼。

格式示例+1。

打開網(wǎng)易新聞 查看精彩圖片

4)在規(guī)劃階段生成配置文件。

  • 用戶提示:
  • 你編寫優(yōu)雅、模塊化和可維護的代碼。遵循Google風(fēng)格指南。
  • 根據(jù)之前指定的論文、計劃和設(shè)計,遵循“格式示例”并生成代碼。從上述論文中提取訓(xùn)練細節(jié)(例如,學(xué)習(xí)率、批量大小、周期數(shù)等),遵循“格式示例”并生成代碼。不要編造細節(jié)——只使用論文提供的內(nèi)容。
  • 你必須編寫‘config.yaml’。
  • 注意:使用“##”分割部分,而不是“#”。你的輸出格式必須嚴格遵循下面的例子。

打開網(wǎng)易新聞 查看精彩圖片

5)在分析階段生成文件規(guī)范。

  • 系統(tǒng)提示詞:
  • 你是一位具有豐富實驗設(shè)計和復(fù)現(xiàn)科學(xué)研究的專家研究員、戰(zhàn)略規(guī)劃者和軟件工程師。
  • 你將收到一份JSON格式的研究論文,包括計劃概述、一個包含“實現(xiàn)方法”、“文件列表”、“數(shù)據(jù)結(jié)構(gòu)和接口”和“程序調(diào)用流程”的設(shè)計,以及一個包含“所需包”、“所需其他語言第三方包”、“邏輯分析”和“任務(wù)列表”的任務(wù),還有一個名為“config.yaml”的配置文件。
  • 你的任務(wù)是進行全面的邏輯分析,以準確重現(xiàn)研究論文中描述的實驗和方法。此分析必須與論文的方法論、實驗設(shè)置和評估標(biāo)準精確對齊。
  • (一些具體要求)

打開網(wǎng)易新聞 查看精彩圖片

6)代碼生成階段。

在系統(tǒng)提示詞中,除了重復(fù)上一步提到的內(nèi)容,還增加了對Coding的表述:

  • 你的任務(wù)是編寫代碼來復(fù)現(xiàn)論文中描述的實驗和方法。
  • 編寫的代碼必須優(yōu)雅、模塊化且可維護,遵循Google風(fēng)格指南。代碼必須嚴格與論文的方法論、實驗設(shè)置和評估指標(biāo)對齊。編寫三重引號的代碼。

打開網(wǎng)易新聞 查看精彩圖片

77%論文原作表示認可

77%論文原作表示認可

利用以上提示詞,研究人員使用了4個模型及變體來進行實驗。它們分別是:

  • DS-Coder:DeepSeek-Coder-V2-Lite-Instruct
  • Qwen-Coder:Qwen2.5-Coder-7B-Instruct
  • DS-Distil-Qwen:DeepSeek-R1-Distill-Qwen14B
  • o3-mini-high

評估對象包括90篇頂會論文

具體而言,基于ICML 2024、NeurIPS 2024和ICLR 2024得分最高的30篇論文,研究人員構(gòu)建了Paper2Code基準測試。

過程中,他們使用OpenReview API篩選出有公開GitHub存儲庫的論文。

在這些論文中,選擇了總代碼量少于70,000個tokens的存儲庫,以在可控范圍內(nèi)確??芍貜?fù)性。

然后還使用了一個名為PaperBench Code-Dev的基準測試,該測試包含ICML 2024的20篇論文,以進一步驗證框架。

為了對比,在目前缺少端到端論文到代碼生成框架的情況下,他們選擇了一些軟件開發(fā)多智能體框架進行比較,包括ChatDev和MetaGPT

所使用的評估方法包括兩種:

其一,和其他框架對比所生成代碼的準確性、規(guī)范性和可執(zhí)行性。

其二,邀請13位計算機專業(yè)的碩博學(xué)生參與評估,要求回答是否喜歡AI為他們的一作論文所生成的代碼。

實驗結(jié)果顯示,在Paper2Code基準測試中,PaperCoder取得了比其他多智能體框架更好的結(jié)果

打開網(wǎng)易新聞 查看精彩圖片

在人類評估中,大約有77%(10人)的論文原作者將PaperCoder生成的代碼作為首選

打開網(wǎng)易新聞 查看精彩圖片

另外值得一提的是,研究人員發(fā)現(xiàn)o3-mini-high與人類判斷的相關(guān)性最高,因此在實驗中大多將其選為評估模型。

打開網(wǎng)易新聞 查看精彩圖片

更多細節(jié)歡迎查閱原論文。

論文:
https://arxiv.org/pdf/2504.17192
代碼:
https://github.com/going-doer/Paper2Code?tab=readme-ov-file

[1]https://x.com/akshay_pachaar/status/1915818238191276138
[2]https://x.com/Mahesh_Lambe/status/1916114076310110668