apple-aiml-research/ml-diffucoder
DiffuCoder: Understanding and Improving Masked Diffusion Models for Code Generation
解決的問題
DiffuCoder解決了自迴歸(AR)模型在程式碼生成中的局限性,具體探討了遮罩擴散模型(dLLM)如何更靈活、更高效地生成程式碼。它也透過引入新的採樣方案,確保所有token都能獲得學習訊號,解決了dLLM後訓練中的低效率和高變異數問題。
工作原理
DiffuCoder是一個用於程式碼生成的遮罩擴散模型。與從左到右生成文字的AR模型不同,它使用擴散過程來精煉token。為了提高效能,此專案引入了Coupled-GRPO,這是一種使用耦合採樣方案的後訓練方法。該方案選擇成對的時間步,共同覆蓋所有目標token,確保每個token的對數機率至少被計算一次,並在現實的部分遮罩上下文中提供更準確的機率估計。
適用對象
此專案面向從事非自迴歸生成、基於擴散的語言模型和專用程式碼生成模型的AI研究人員和開發者。
亮點
- Coupled-GRPO:一種新穎的後訓練方法,用於減少擴散LLM中的變異數並提高學習效率。
- 非線性生成:打破傳統AR模型嚴格的從左到右偏差的能力。
- 自迴歸分數:一種量化生成過程中因果模式的新指標。
- 預訓練模型:在Hugging Face上提供7B模型的Base、Instruct和cpGRPO版本。
相關
- 專案
- 專案
- 專案
- 專案