2146 tokens/s!字節(jié)跳動(dòng)發(fā)布極速代碼生成模型Seed Diffusion,速度暴漲5.4倍
這款模型采用了完全不同于以往的生成方式,不再是“一個(gè)詞一個(gè)詞”地慢慢生成,而是整段代碼并行生成,一次生成多個(gè)片段。
據(jù)官方披露,Seed Diffusion Preview在Nvidia H20 GPU上的生成速度高達(dá)2146個(gè)token每秒,比傳統(tǒng)模型提升了最多5.4倍。
圖片
與傳統(tǒng)的自回歸模型不同,這款新模型采用“離散狀態(tài)擴(kuò)散”(discrete-state diffusion)的方法,將圖像擴(kuò)散模型的思路移植到了文字和代碼領(lǐng)域。
它的工作原理是:先制造一段帶有噪聲和占位符的初始代碼,然后一步步地“復(fù)原”出真實(shí)的代碼,而不是從頭開始一個(gè)字符一個(gè)字符地拼湊。
這樣的結(jié)構(gòu),使得模型可以一次性生成多個(gè)部分,再通過(guò)Transformer建模依賴關(guān)系,并結(jié)合因果順序與軌跡蒸餾來(lái)提升一致性。
在多項(xiàng)基準(zhǔn)測(cè)試中,Seed Diffusion Preview的表現(xiàn)不輸其它主流模型,在代碼編輯等任務(wù)中表現(xiàn)尤為突出。
1.雙階段訓(xùn)練機(jī)制
為了兼顧速度和質(zhì)量,字節(jié)跳動(dòng)為Seed Diffusion Preview設(shè)計(jì)了一套雙階段訓(xùn)練機(jī)制。
第一階段采用遮罩訓(xùn)練,將部分代碼替換為特殊的占位符,訓(xùn)練模型還原這些被遮罩的內(nèi)容。但單靠這一階段會(huì)產(chǎn)生一個(gè)問(wèn)題:模型可能忽視未被遮罩的部分,只是盲目復(fù)制原文而不加檢驗(yàn)。(前 80%)
獨(dú)立性假設(shè):
圖片
邊際概率分布:
圖片
為此,團(tuán)隊(duì)加入了第二階段:基于編輯的訓(xùn)練,引入插入和刪除操作,強(qiáng)迫模型檢查并修正所有部分,不只是那些被遮擋的片段。
此外,字節(jié)跳動(dòng)還優(yōu)化了代碼的生成順序。
模型通過(guò)約束順序訓(xùn)練引導(dǎo)模型遵循依賴關(guān)系(如先聲明后使用),以提升完整性與可執(zhí)行性。
訓(xùn)練語(yǔ)料是,在常規(guī)代碼語(yǔ)料基礎(chǔ)上,額外用預(yù)訓(xùn)練擴(kuò)散模型生成軌跡并篩選蒸餾,以提升順序與一致性。
2.瞄準(zhǔn)谷歌,進(jìn)軍復(fù)雜推理領(lǐng)域
Seed Diffusion Preview不僅是一個(gè)技術(shù)展示,它的推出也有明確的對(duì)標(biāo)對(duì)象。
谷歌在今年5月推出了Gemini Diffusion模型,同樣主打代碼生成。字節(jié)跳動(dòng)此舉,正面迎戰(zhàn)谷歌。
從性能對(duì)比看,Seed Diffusion Preview在推理速度上全面領(lǐng)先,并且在代碼編輯、生成結(jié)構(gòu)完整代碼方面也能與之抗衡甚至超越。(即在作者給定設(shè)置下速度更快,由于硬件與評(píng)測(cè)差異,跨模型直接對(duì)比需謹(jǐn)慎)
特別是在并行解碼方面,Seed Diffusion Preview采用了“自我優(yōu)化生成機(jī)制”(同策略學(xué)習(xí)(on-policy)。
在訓(xùn)練中引入驗(yàn)證器的同策略目標(biāo),以減少生成步數(shù)并維持質(zhì)量。
此外,字節(jié)跳動(dòng)針對(duì)擴(kuò)散生成流程開發(fā)了內(nèi)部的框架支持工具鏈,優(yōu)化了整個(gè)軟件棧。
生成過(guò)程中,雖然各個(gè)代碼塊并行生成,但整體上仍然保持邏輯順序,保證變量依賴關(guān)系和執(zhí)行順序的正確性。
未來(lái),字節(jié)跳動(dòng)計(jì)劃繼續(xù)擴(kuò)大模型規(guī)模,并嘗試將這種并行擴(kuò)散架構(gòu)推廣到更復(fù)雜的推理任務(wù)中。
目前,該模型已有在線演示版本。不過(guò)因?yàn)樘穑@示服務(wù)繁忙。
https://studio.seed.ai/exp/seed_diffusion/




































