Seed Diffusion Preview: 来自字节 Seed 团队的高速推理代码语言模型

Seed Diffusion Preview: 来自字节 Seed 团队的高速推理代码语言模型

Published on Aug 3
9分钟
Daily LLM Papers
0:00
0:00
<p><a href="https://seed.bytedance.com/zh/seed_diffusion">Seed Diffusion Preview 技术报告</a></p><p>Seed Diffusion模型将扩散(Diffusion)方法应用于代码生成,并实现了显著的高速推理,其核心在于将连续域的扩散概念巧妙地适配到离散的文本数据上,并通过一系列优化策略来加速其迭代生成过程。</p><p>以下是其主要实现方式:</p><ul> <li><strong>离散状态扩散(Discrete-state Diffusion)</strong>:<strong>挑战</strong>:传统的Diffusion模型天然适用于图像像素或音频频谱图等<strong>连续的高维数据</strong>,因为在这些数据上定义和操作高斯噪声是一个自然的过程。然而,将Diffusion模型直接应用于文本等<strong>离散数据</strong>(如代码词元)更具挑战性,因为“给一个单词添加一点点噪声”的概念并不直观,需要设计特殊的离散扩散技术。<br><strong>解决方案</strong>:Seed Diffusion Preview是一个<strong>基于离散状态扩散的大规模语言模型</strong>。它通过定义明确的状态转移矩阵,直接在离散状态空间上构建扩散过程。<br><br><strong>双阶段课程学习(Two-Stage Curriculum, TSC)</strong>:为了提升离散扩散模型的鲁棒性和消除采样过程中可能出现的重复等异常行为,Seed Diffusion采用了两阶段的前向破坏过程训练:<strong>基于掩码的前向过程(Mask-based Forward Process)</strong>:在训练的前80%步骤中,模型逐步将原始序列中的词元替换为特殊的<code>[MASK]</code>词元。这是一种标准且低方差的训练目标。<br><strong>基于编辑的前向过程(Edit-based Forward Process)</strong>:在训练的最后20%步骤中,模型增加了基于<strong>编辑</strong>的操作,如删除、插入和替换,其破坏程度通过Levenstein距离来控制。这种方法强制模型重新评估所有词元(包括未被掩码...