文本Diffusion模型來(lái)了!字節(jié)Seed Diffusion Preview專(zhuān)用于代碼生成,每秒可推理2146個(gè)token
Seed Diffusion Preview 是字節(jié)跳動(dòng)種子團(tuán)隊(duì)推出的文本擴(kuò)散語(yǔ)言模型,旨在驗(yàn)證離散擴(kuò)散方法作為下一代語(yǔ)言模型基礎(chǔ)框架的可行性,以結(jié)構(gòu)化代碼生成為實(shí)驗(yàn)領(lǐng)域。團(tuán)隊(duì)引入兩階段擴(kuò)散訓(xùn)練、約束序?qū)W習(xí)等多項(xiàng)關(guān)鍵技術(shù),經(jīng)實(shí)驗(yàn)驗(yàn)證有效。結(jié)果顯示,該模型代碼推理速度達(dá) 2146 個(gè) token/s,較同等規(guī)模自回歸模型提升 5.4 倍,且在多個(gè)核心代碼基準(zhǔn)測(cè)試中性能相當(dāng),在推理速度、生成質(zhì)量上建立新的 SOTA,有力證明了方法的有效性。
相關(guān)鏈接
- 博客: seed.bytedance.com/en/seed_diffusion
- 論文:https://lf3-static.bytednsdoc.com/obj/eden-cn/hyvsmeh7uhobf/sdiff_updated.pdf
- 體驗(yàn):studio.seed.ai/exp/seed_diffusion/
概述
Seed Diffusion Preview 是字節(jié)跳動(dòng)種子團(tuán)隊(duì)發(fā)布的一個(gè)實(shí)驗(yàn)性擴(kuò)散語(yǔ)言模型。其目標(biāo)是系統(tǒng)地驗(yàn)證離散擴(kuò)散方法作為下一代語(yǔ)言模型基礎(chǔ)框架的可行性,并以結(jié)構(gòu)化代碼生成作為實(shí)驗(yàn)領(lǐng)域。
在此次探索中,團(tuán)隊(duì)引入了兩階段擴(kuò)散訓(xùn)練、約束序?qū)W習(xí)、高效并行解碼的在策略學(xué)習(xí)等多項(xiàng)關(guān)鍵技術(shù),并通過(guò)實(shí)驗(yàn)驗(yàn)證了該技術(shù)方法的有效性。
實(shí)驗(yàn)結(jié)果表明,種子擴(kuò)散預(yù)覽 (Seed Diffusion Preview) 的代碼推理速度可達(dá)到 2146 個(gè) token/s,與同等規(guī)模的自回歸模型相比,速度提升了 5.4 倍,同時(shí)在多個(gè)核心代碼基準(zhǔn)測(cè)試中保持了相當(dāng)?shù)男阅?。這些結(jié)果在代碼模型的推理速度-生成質(zhì)量建立了新的 SOTA,證明了該方法的有效性。圖 1 Seed Diffusion 的推理速度是在八個(gè)開(kāi)放代碼基準(zhǔn)測(cè)試中測(cè)量的。由于測(cè)試條件不同,直接與基線(xiàn)進(jìn)行比較頗具挑戰(zhàn)性:Mercury Coder 是在專(zhuān)有數(shù)據(jù)集上使用 H100 進(jìn)行評(píng)估的,而 Gemini Diffusion 的速度則是在使用未知硬件的混合任務(wù)基準(zhǔn)測(cè)試中取平均值。此外,這些基準(zhǔn)測(cè)試中報(bào)告的速度可能會(huì)受益于格式限制的系統(tǒng)提示。LiveCodeBench 的結(jié)果專(zhuān)門(mén)針對(duì) v1-v6 中 1055 個(gè)問(wèn)題,針對(duì)未知基線(xiàn)協(xié)議。
加速語(yǔ)言模型傳播的核心方法
兩階段課程學(xué)習(xí):從模式填充到邏輯編輯 針對(duì)傳統(tǒng)基于掩模的擴(kuò)散模型僅關(guān)注掩模位置、缺乏校正能力的局限性,團(tuán)隊(duì)設(shè)計(jì)了一種兩階段學(xué)習(xí)策略:
- 階段 1:基于掩碼的擴(kuò)散訓(xùn)練:此階段采用標(biāo)準(zhǔn)的掩碼填充任務(wù),根據(jù)動(dòng)態(tài)噪聲方案將部分代碼替換為 [MASK] 標(biāo)記。在此階段,模型學(xué)習(xí)補(bǔ)全局部上下文和代碼模式(例如規(guī)律、結(jié)構(gòu)和特征分布)。 初始訓(xùn)練階段可能會(huì)導(dǎo)致“虛假相關(guān)性”,即模型學(xué)會(huì)盲目地相信未掩蔽的標(biāo)記始終正確。為了緩解這種情況,引入了第二個(gè)訓(xùn)練階段。
- 階段2:基于編輯的擴(kuò)散訓(xùn)練:為了迫使模型評(píng)估代碼的全局有效性,此階段引入了擴(kuò)散過(guò)程,即在編輯距離約束的引導(dǎo)下,通過(guò)插入和刪除操作進(jìn)行擴(kuò)散。這種擾動(dòng)迫使模型重新檢查并糾正所有標(biāo)記(包括那些最初未被屏蔽的標(biāo)記),從而打破“虛假相關(guān)性”。
實(shí)證研究顯示,該編輯階段的引入使模型在 CanItEdit 基準(zhǔn)測(cè)試中的 pass@1 分?jǐn)?shù)比 AR 模型提高了 4.8%(54.3 vs. 50.5),表明其代碼邏輯理解和修復(fù)能力得到了顯著增強(qiáng)。
約束階擴(kuò)散:結(jié)合代碼的結(jié)構(gòu)先驗(yàn)
雖然語(yǔ)言數(shù)據(jù)(包括自然語(yǔ)言和代碼)并非嚴(yán)格按照從左到右的順序排列,但它包含很強(qiáng)的因果依賴(lài)關(guān)系(例如,變量必須在使用前聲明)。在基于掩碼的擴(kuò)散模型中,常見(jiàn)的純粹無(wú)約束順序生成忽略了這種結(jié)構(gòu)先驗(yàn),通常會(huì)導(dǎo)致計(jì)算和數(shù)據(jù)預(yù)算有限的情況下性能受限。
為了解決這個(gè)問(wèn)題,團(tuán)隊(duì)提出了約束順序訓(xùn)練。在訓(xùn)練后階段,我們以模型感知的方式利用內(nèi)部預(yù)訓(xùn)練模型,合成并篩選大量包含優(yōu)先生成軌跡的數(shù)據(jù)集。然后,通過(guò)蒸餾技術(shù),基于這些軌跡對(duì)模型進(jìn)行微調(diào),引導(dǎo)擴(kuò)散語(yǔ)言模型學(xué)習(xí)并遵循這些正確的依賴(lài)關(guān)系。
基于在線(xiàn)策略學(xué)習(xí)的高效并行解碼
雖然離散擴(kuò)散模型理論上具有高速并行解碼的優(yōu)勢(shì),但在實(shí)踐中實(shí)現(xiàn)這一潛力卻充滿(mǎn)挑戰(zhàn)。單個(gè)并行推理步驟的計(jì)算開(kāi)銷(xiāo)很高,而減少總步驟數(shù)來(lái)抵消這一成本通常會(huì)導(dǎo)致生成質(zhì)量顯著下降。
為了解決這個(gè)問(wèn)題,團(tuán)隊(duì)提出了一種基于策略的學(xué)習(xí)范式。在該范式中,模型被訓(xùn)練以直接優(yōu)化自身的生成過(guò)程。目標(biāo)是最小化生成步驟數(shù) (|τ|),同時(shí)驗(yàn)證模型 (V) 確保最終輸出保持高質(zhì)量。實(shí)踐中發(fā)現(xiàn),直接最小化步數(shù)會(huì)導(dǎo)致訓(xùn)練不穩(wěn)定。為了解決這個(gè)問(wèn)題,團(tuán)隊(duì)采用了一種更穩(wěn)定的替代損失函數(shù)。該損失函數(shù)基于生成軌跡中不同步驟之間的編輯距離,能夠促進(jìn)模型更高效地收斂。如下圖所示,該訓(xùn)練過(guò)程成功提升了模型的推理速度。
通過(guò)在線(xiàn)策略訓(xùn)練來(lái)改變加速
一個(gè)有趣的發(fā)現(xiàn)是,該過(guò)程產(chǎn)生的效果類(lèi)似于非自回歸生成文獻(xiàn)中已經(jīng)建立的“模式過(guò)濾”技術(shù)。通過(guò)訓(xùn)練,它隱式地“修剪”低質(zhì)量或低效的生成路徑,迫使模型學(xué)習(xí)更直接、更快速地收斂到高質(zhì)量的解決方案。
從理論加速到工程實(shí)施
為了平衡計(jì)算量和延遲,團(tuán)隊(duì)采用了塊級(jí)并行擴(kuò)散采樣方案,以保持塊之間的因果順序。我們避免了針對(duì)特定塊的訓(xùn)練,以保持推理時(shí)任意劃分塊的靈活性。我們使用鍵值緩存來(lái)重用先前生成的塊的信息,并以此為條件來(lái)控制后續(xù)塊的生成。
除了算法設(shè)計(jì)之外,我們的工作還包括整體系統(tǒng)優(yōu)化,以高效支持分塊推理。具體來(lái)說(shuō),我們利用了內(nèi)部專(zhuān)門(mén)針對(duì)擴(kuò)散采樣優(yōu)化的基礎(chǔ)架構(gòu)框架來(lái)加速生成。下圖詳細(xì)展示了不同分塊大小對(duì)性能的影響。該分析為選擇最佳分塊大小提供了依據(jù)。
實(shí)驗(yàn)結(jié)果
在生成任務(wù)測(cè)試中,種子擴(kuò)散預(yù)覽充分釋放了擴(kuò)散模型的并行潛力,與同等規(guī)模的自回歸模型相比,實(shí)現(xiàn)了 5.4 倍的加速。
至關(guān)重要的是,這種高速并不以犧牲質(zhì)量為代價(jià):在多個(gè)行業(yè)基準(zhǔn)測(cè)試中,Seed Diffusion Preview 的性能可與領(lǐng)先的自回歸模型相媲美,甚至在代碼編輯(例如 CanitEdit)等任務(wù)上超越它們。這一結(jié)果表明,以種子擴(kuò)散為代表的離散擴(kuò)散方法不僅具有成為下一代生成模型基礎(chǔ)框架的巨大潛力,而且具有廣闊的應(yīng)用前景。
種子擴(kuò)散項(xiàng)目將繼續(xù)探索其更深層次的價(jià)值,不斷研究其縮放規(guī)律及其在復(fù)雜推理任務(wù)中的應(yīng)用。
本文轉(zhuǎn)載自??AIGC Studio??,作者:AIGC Studio

















