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