ByteDanceのSeed Diffusion:AIコード生成が5.4倍高速化!

Decoder

ByteDanceは、コード生成プロセスを劇的に加速することで革命を起こすことを目指した実験的なAIモデル、「Seed Diffusion Preview」を発表しました。一度に1つのコードを生成する従来のメソッドとは異なり、Seed Diffusion Previewは並列動作し、複数のコードセグメントを同時に生成できます。この革新的なアプローチは驚異的な速度をもたらし、ByteDanceはNvidia H20 GPU上で毎秒最大2,146トークンの生成速度を報告しており、これは従来のモデルよりも最大で5.4倍高速である可能性があります。

Seed Diffusion Previewの核となるのは、「離散状態拡散」アプローチです。拡散モデルは通常、画像のような連続データ向けに設計されていますが、ByteDanceはこの手法をテキストや、とりわけコードのような離散データタイプに巧みに適応させました。線形シーケンスでコードの各基本単位、つまり「トークン」を予測するのではなく、モデルはノイズの多い、部分的に埋められた状態からコードを再構築します。この並列再構築は、洗練されたTransformerアーキテクチャによって促進され、複数のコードセクションを同時に予測することを可能にし、従来の段階的な生成プロセスを超越します。

高速な出力にもかかわらず、ByteDanceはSeed Diffusion Previewが高いコード品質を維持していることを強調しています。ベンチマークテストでは、このモデルが他の主要なコード生成モデルと競争力のある性能を発揮し、特にコード編集タスクにおいて強みと効率性を示していることが示されています。これは、速度の向上が精度や有用性を犠牲にしていないことを示唆しています。

この速度と品質のバランスを達成するために、ByteDanceは洗練された2段階のトレーニングプロセスを実装しました。最初のフェーズでは、コードの一部がプレースホルダーのトークンに置き換えられ、モデルが空白を埋めるように促されるマスクベースのトレーニングが採用されます。しかし、この方法では、モデルが未マスクのトークンを徹底的に検証せずに単にコピーしてしまうことがあります。これを解消するために、挿入と削除を組み込んだ、編集ベースのトレーニングという第2の重要なフェーズが導入されました。これにより、モデルは最初にマスクされたトークンだけでなく、すべてのトークンを包括的にレビューして修正することが強制され、より堅牢で正確な出力が保証されます。さらに、開発チームは、コード内の固有の構造と依存関係(例えば、変数が使用される前に宣言されていることを確認するなど)を考慮して、生成順序を細心の注意を払って最適化しました。その後、モデルは、高品質な生成シーケンスで構成された膨大で慎重にフィルタリングされたデータセットでトレーニングされました。これらのシーケンスの多くは、事前学習済みモデル自体によって作成され、自己改善ループが促進されました。

並列デコーディングの概念は、拡散モデルでは理論的には可能ですが、重大な計算上のハードルを提示します。各並列推論ステップは、かなりの処理能力を要求し、単にステップ数を減らすと出力品質が損なわれる可能性があります。ByteDanceは、モデルのトレーニングに「オンポリシー学習」を統合することでこれに対処しました。これにより、Seed Diffusion Previewは、生成プロセスを自律的に最適化し、必要なステップ数を最小限に抑えることを目指し、同時に別の検証モデルが生成されたコードの品質を厳密にチェックします。実際のアプリケーションでは、Seed Diffusion Previewは定義されたブロック内でコードを並列処理しますが、これらのブロック間の論理的なシーケンス順序は維持されます。ByteDanceチームは、これらの要求の厳しい拡散ワークロードのために、社内ソフトウェアフレームワークも特別に微調整しました。

Seed Diffusion Previewは競争の激しい分野に参入し、特に5月にコード生成に同様の焦点を当てて発表されたGoogleのGemini Diffusionに挑戦しています。ByteDanceは、モデルのスケーリングや、より複雑な推論タスクへの革新的なアプローチの適応を含む、さらなる実験への継続的なコミットメントを示しています。現在、その機能を直接体験したい人のために公開デモが利用可能です。