智東西
編譯 ZeR0
編輯 漠影
智東西6月17日報道,今日凌晨,月之暗面推出針對軟件工程任務(wù)的全新開源代碼大模型Kimi-Dev-72B。
該模型在SWE-bench Verified編程基準(zhǔn)測試中取得了全球最高開源模型水平,以僅72B的參數(shù)量,成績超過了剛于5月28日發(fā)布、參數(shù)量多達(dá)671B的新版DeepSeek-R1。
Kimi-Dev-72B在AI軟件工程能力基準(zhǔn)測試SWE-bench Verified上取得了60.4%的高分,創(chuàng)下開源模型的SOTA成績。
▲開源模型在SWE-bench上的性能已得到驗證
▲閉源模型在SWE-bench上的性能已得到驗證
通過大規(guī)模強(qiáng)化學(xué)習(xí)進(jìn)行了優(yōu)化。它能夠自主修補(bǔ)Docker中的真實存儲庫,并且只有當(dāng)整個測試套件通過時才會獲得獎勵。這確保了解決方案的正確性和穩(wěn)健性,并符合現(xiàn)實世界的開發(fā)標(biāo)準(zhǔn)。
Kimi-Dev-72B現(xiàn)已在Hugging Face和GitHub上提供下載和部署。其發(fā)布給社區(qū)的關(guān)鍵資源包括模型權(quán)重、源代碼,技術(shù)報告也即將推出。
Hugging Face地址:huggingface.co/moonshotai/Kimi-Dev-72B
GitHub地址:github.com/MoonshotAI/Kimi-Dev
月之暗面介紹了Kimi-Dev-72B的設(shè)計理念和技術(shù)細(xì)節(jié),包括BugFixer和 TestWriter的組合、中期訓(xùn)練、強(qiáng)化學(xué)習(xí)和測試時自我博弈。
1、BugFixer和TestWriter的組合
成功修復(fù)錯誤的補(bǔ)丁(patch)應(yīng)能通過準(zhǔn)確反映該錯誤的單元測試。同時,復(fù)現(xiàn)錯誤的成功測試應(yīng)引發(fā)斷言錯誤,并在將正確的錯誤修復(fù)補(bǔ)丁應(yīng)用到代碼庫后通過。這致使BugFixer和TestWriter互補(bǔ),一個足夠強(qiáng)大的編程大語言模型應(yīng)該在這兩個方面都表現(xiàn)出色。
BugFixer和TestWriter的工作流程類似:它們都會先找到正確的文件進(jìn)行編輯,然后編輯正確的代碼更新,無論是修復(fù)脆弱的實現(xiàn)還是插入unittest函數(shù)。因此,對于這兩種角色,Kimi-Dev-72B都采用了相同的極簡框架,該框架僅包含兩個階段:文件本地化和代碼編輯。BugFixer和TestWriter的雙重設(shè)計奠定了Kimi-Dev-72B的基礎(chǔ)。
2、訓(xùn)練中期
為了增強(qiáng)Kimi-Dev-72B作為BugFixer和TestWriter的先驗知識,月之暗面使用約1500億個高質(zhì)量的真實數(shù)據(jù)進(jìn)行中期訓(xùn)練。
以Qwen 2.5-72B基礎(chǔ)模型為起點,月之暗面收集了數(shù)百萬個GitHub問題和 PR提交作為其中期訓(xùn)練數(shù)據(jù)集。數(shù)據(jù)配方經(jīng)過??精心構(gòu)建,使Kimi-Dev-72B 能夠?qū)W習(xí)人類開發(fā)者如何推理GitHub問題、編寫代碼修復(fù)和單元測試。
月之暗面還進(jìn)行了嚴(yán)格的數(shù)據(jù)凈化,將所有存儲庫從SWE-bench Verified中剔除。
中期訓(xùn)練充分增強(qiáng)了基礎(chǔ)模型對實際Bug修復(fù)和單元測試的了解,使該模型成為后續(xù)強(qiáng)化學(xué)習(xí)訓(xùn)練的更佳起點。
3、強(qiáng)化學(xué)習(xí)
通過適當(dāng)?shù)闹衅谟?xùn)練和SFT,Kimi-Dev-72B在文件本地化方面表現(xiàn)出色。因此,其強(qiáng)化學(xué)習(xí)階段專注于提升其代碼編輯能力。
月之暗面使用了Kimi k1.5中描述的策略優(yōu)化方法,該方法在推理任務(wù)中表現(xiàn)出色。對于SWE-bench Verified,月之暗面重點關(guān)注以下三個關(guān)鍵設(shè)計:
- 僅基于結(jié)果的獎勵。僅使用Docker的最終執(zhí)行結(jié)果(0或1)作為獎勵,訓(xùn)練期間不采用任何基于格式或過程的獎勵。
- 高效的提示集。過濾掉模型在多樣本評估下成功率為零的提示,從而更有效地利用大批量。采用課程學(xué)習(xí)(curriculum learning)法,引入新的提示,逐步提高任務(wù)難度。
- 正例強(qiáng)化。在訓(xùn)練的最后階段,將之前迭代中最近成功的樣本納入當(dāng)前批次。這有助于模型增強(qiáng)成功模式并提升性能。
Kimi-Dev-72B通過使用高度并行、強(qiáng)大且高效的內(nèi)部agent基礎(chǔ)設(shè)施,從可擴(kuò)展數(shù)量的問題解決任務(wù)的訓(xùn)練中受益。
4、測試時自我博弈
經(jīng)過強(qiáng)化學(xué)習(xí)后,Kimi-Dev-72B能同時掌握BugFixer和TestWriter的角色。在測試過程中,它會采用自我博弈機(jī)制,協(xié)調(diào)自身Bug修復(fù)和測試編寫的能力。
▲BugFixer和TestWriter之間的測試時自博弈
每個問題最多可生成40個補(bǔ)丁候選和40個測試候選(按照標(biāo)準(zhǔn)無agent設(shè)置),可觀察到測試時自博弈的擴(kuò)展效應(yīng)。
結(jié)語:未來迭代側(cè)重深度集成,更無縫地融入工作流程
月之暗面正在積極研究和開發(fā)擴(kuò)展Kimi-Dev-72B功能的方法,并探索更復(fù)雜的軟件工程任務(wù)。
其未來的迭代將側(cè)重于與流行的集成開發(fā)環(huán)境(IDE)、版本控制系統(tǒng)和CI/CD流水線進(jìn)行更深入的集成,使Kimi-Dev-72B更加無縫地融入開發(fā)者的工作流程。
該公司承諾將持續(xù)改進(jìn)Kimi-Dev-72B,進(jìn)行嚴(yán)謹(jǐn)?shù)募t隊測試,并向社區(qū)發(fā)布更強(qiáng)大的模型。
來源:月之暗面GitHub項目
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.