Kimi新模型拿下代碼開源SOTA,僅僅72B,發(fā)布即開源
深夜,沉寂已久的Kimi突然發(fā)布了新模型——
開源代碼模型Kimi-Dev,在SWE-bench Verified上以60.4%的成績?nèi)〉瞄_源SOTA。
參數(shù)量只有72B,但編程水平比最新的DeepSeek-R1還強,和閉源模型比較也表現(xiàn)優(yōu)異。
有網(wǎng)友看到后表示,感覺月之暗面的實力被低估了,其水平應(yīng)該比xAI強。
Kimi-Dev采用MIT協(xié)議,目前權(quán)重和代碼均已發(fā)布,還有網(wǎng)友制作的量化版本也已在抱抱臉上線。
那么,Kimi-Dev是如何做到的呢?
模型扮演兩種角色,在測試中自我博弈
目前,Kimi-Dev的完整技術(shù)報告暫未出爐,不過官方透露了其中的一些關(guān)鍵技術(shù)。
Kimi-Dev-72B的設(shè)計核心是BugFixer和TestWriter兩種角色的結(jié)合,BugFixer和TestWriter都遵循一個共同的最小框架,包含兩個階段:
- 文件定位(File Localization):首先找到需要修改的正確文件;
- 代碼編輯(Code Edits):修正現(xiàn)有代碼中的問題或潛在缺陷(BugFixer),以及編寫并添加新的單元測試代碼(estWriter)。
為了增強Kimi-Dev-72B作為BugFixer和TestWriter的先驗知識,Kimi團(tuán)隊以Qwen 2.5-72B基礎(chǔ)模型為起點使用約1500億高質(zhì)量真實數(shù)據(jù)進(jìn)行中期訓(xùn)練。
具體來說,Kimi團(tuán)隊收集了數(shù)百萬個GitHub issue和PR提交,目的是讓Kimi-Dev-72B能夠?qū)W習(xí)人類開發(fā)人員如何推理并解決GitHub問題。
另外,Kimi團(tuán)隊還進(jìn)行了嚴(yán)格的數(shù)據(jù)凈化,確保訓(xùn)練數(shù)據(jù)當(dāng)中不包含SWE-bench Verified里的內(nèi)容。
經(jīng)過中期訓(xùn)練和監(jiān)督微調(diào)(SFT)后,Kimi-Dev-72B在文件定位方面已經(jīng)表現(xiàn)出色,之后的強化學(xué)習(xí)階段主要側(cè)重于提升其代碼編輯能力。
強化學(xué)習(xí)訓(xùn)練采用了Kimi k1.5中的策略優(yōu)化方法,主要有三個關(guān)鍵設(shè)計:
一是僅基于結(jié)果的獎勵(Outcome-based Reward Only)——訓(xùn)練中僅使用代碼在Docker環(huán)境中的最終執(zhí)行結(jié)果(成功為 1,失敗為 0)作為獎勵,而不考慮任何與代碼格式或編寫過程的因素。
這確保了模型生成的解決方案的正確性以及與實際開發(fā)標(biāo)準(zhǔn)的一致性。
二是采用了高效提示集(Efficient Prompt Set),過濾掉在多樣本評估下成功率為零的提示,以更有效地進(jìn)行大批量訓(xùn)練。
此外,強化學(xué)習(xí)階段還采取了循序漸進(jìn)的策略,逐步引入新提示,逐步增加任務(wù)難度。
三是正向示例強化(Positive Example Reinforcement),也就是在后面的訓(xùn)練過程中,Kimi-Dev會將它之前已經(jīng)解決的問題的方案重新納入當(dāng)前的訓(xùn)練批次中進(jìn)行學(xué)習(xí),從而鞏固和強化之前有效的、成功的解決模式和方法。
經(jīng)過強化學(xué)習(xí)后,Kimi-Dev-72B能夠同時掌握兩種角色。在測試過程中,它會采用自我博弈機制,協(xié)調(diào)自身Bug修復(fù)和測試編寫的能力。
Kimi-Dev-72B會遵循標(biāo)準(zhǔn)Agentless設(shè)置,為每個問題生成最多40個補丁候選(patch candidates)和40個測試候選(test candidates)。
在測試時間自我博弈中,觀察到了規(guī)模效應(yīng)(scaling effect)。
以上就是Kimi團(tuán)隊介紹的Kimi-Dev背后的關(guān)鍵,更多細(xì)節(jié)將在后續(xù)的技術(shù)報告中揭曉,感興趣的話可以關(guān)注Kimi團(tuán)隊的發(fā)布。
下一步,Kimi團(tuán)隊還計劃探索更復(fù)雜的軟件工程任務(wù),并將于與流行的IDE、版本控制系統(tǒng)和CI/CD流水線進(jìn)行更深入的集成。
項目主頁:
https://moonshotai.github.io/Kimi-Dev/
GitHub:
https://github.com/MoonshotAI/Kimi-Dev
HuggingFace:
https://huggingface.co/moonshotai/Kimi-Dev-72B