蘋果開源全新編碼模型 DiffuCoder-7B-cpGRPO

Back
Category : News

蘋果公司最近喺Hugging Face平台上低調發布咗一款全新嘅開源人工智能模型,叫做DiffuCoder-7B-cpGRPO。呢個模型喺代碼生成方面有突破性嘅創新表現,可以唔按照傳統由左到右嘅順序生成代碼,仲同頂級開源編碼模型嘅性能不相伯仲。根據官方資料,呢個模型喺EvalPlus基準測試中性能提升咗4.4%,而且喺解碼過程中有效減低咗對自回歸偏差嘅依賴,展示咗佢喺非線性生成方面嘅強大潛力。

同傳統大語言模型(LLM)唔同,DiffuCoder唔係用自回歸方式運作。自回歸模型通常好似一個由左到右寫字嘅學生,會逐個詞元(token)咁生成代碼。呢種方式喺保證序列連貫性方面表現唔錯,但對於編程呢啲非線性任務嚟講,就有一定局限性。因為編程過程往往涉及喺唔同代碼塊之間跳轉、預先規劃結構同埋事後補充依賴,單向生成模式好難完全模擬呢啲行為。而DiffuCoder就突破咗呢個限制,佢用咗擴散模型(Diffusion Model)嘅方式,能夠全局考慮整段代碼嘅結構,先搭框架,再填細節,好似一個經驗豐富嘅建築師設計藍圖咁。

DiffuCoder嘅訓練過程可謂一場由學徒到大師嘅蛻變。研究團隊以阿里巴巴嘅開源模型Qwen2.5-7B為基礎,進行咗一系列嘅微調同改造。首先,佢哋將呢個模型改造成一個基於擴散解碼器嘅全新模型,然後再用超過2萬個精心挑選嘅編碼示例進行進一步訓練。喺1300億個代碼詞元嘅預訓練過程中,模型用咗78%嘅代碼數據、20%嘅普通文本同2%嘅數學內容,確保佢唔單止專精於代碼生成,仲保留咗對自然語言嘅理解能力。呢個訓練過程耗時約40小時,用咗10個計算節點,每個節點配備8塊H100 GPU,堪稱資源密集但成果顯著。

更令人印象深刻嘅係,蘋果仲開發咗一種全新嘅強化學習算法,叫做耦合GRPO(Coupled-GRPO)。呢個算法通過一個特殊嘅耦合採樣方案,喺強化學習過程中減少咗詞元對數似然估計嘅方差,同時保持訓練效率。結果顯示,經過耦合GRPO訓練嘅DiffuCoder-Instruct,喺解碼步數減半嘅情況下,性能下降幅度比普通指令微調版本小得多,證明咗佢喺並行生成方面嘅優勢。喺主流編程基準測試如HumanEval、MBPP同BigCodeBench中,DiffuCoder嘅表現已經同Qwen2.5-Coder同OpenCoder等模型不相上下,甚至喺某些指標上略勝一籌。

DiffuCoder嘅另一大特點係佢喺生成代碼時嘅靈活性。研究團隊發現,當採樣溫度由默認嘅0.2調高到1.2,模型喺生成詞元嘅順序上會變得更加靈活,擺脫咗嚴格由左到右嘅限制。呢種靈活性唔單止影響詞元選擇,仲影響生成順序,令模型更似人類程序員嘅思考方式,會根據上下文需要靈活選擇填充位置。呢個特性喺代碼生成任務中尤其重要,因為代碼結構往往需要全局規劃,而唔係簡單嘅線性填充。雖然DiffuCoder喺某些方面仲未完全超越GPT-4或Gemini Diffusion等頂級模型,但佢嘅表現已經足以證明擴散模型喺編程領域嘅潛力。

蘋果今次嘅舉動顯示咗佢喺人工智能領域嘅野心同創新能力。DiffuCoder唔單止為開發者提供咗一個高效嘅編程助手,仲為AI研究界開闢咗一條新嘅技術路線。未來,隨住更多研究同優化,DiffuCoder好可能會進一步提升,成為程序員嘅得力拍檔。想了解更多技術細節同代碼實現,讀者可以瀏覽GitHub頁面:https://github.com/apple/ml-diffucoder 或 Hugging Face模型卡:https://huggingface.co/apple/DiffuCoder-7B-cpGRPO。詳情請見:https://www.infoq.cn/article/y7jzBQflM6QNaYloXJBh