開発者として、私たちは「自己回帰(Autoregressive)」モデルの「逐字逐句」という性質と共存することに慣れてしまっているのではないでしょうか。文を生成するために、まるで歯磨き粉を絞り出すかのようにトークンを1つずつメモリから読み込み、完了までじれったい思いで待つことに。
しかし、もし考え方を変えたらどうなるでしょうか? モデルが単なる「しりとり選手」ではなく、画家のよう先にキャンバスを広げ、全体を仕上げることができるとしたら? これこそが DiffusionGemma: The Developer Guide がもたらす破壊的な変革です。
なぜ現在のモデルは「遅すぎる」のでしょうか?
従来の自己回帰モデルはGPUで動作しますが、最大のボトルネックは計算能力不足ではなく、メモリ帯域幅の制限にあります。順次トークンを生成しなければならないため、重みを繰り返しメモリから読み込む必要があり、その結果、多くの計算コアがデータを待機してアイドル状態になってしまいます。
DiffusionGemmaは、このボトルネックをメモリ帯域幅から計算(Compute-bound)へと直接シフトさせました。256トークンのキャンバスを並列生成・微調整することで、本来「遊んでいた」テンソルコアを活用し、最大4倍の生成速度向上を実現しました。NVIDIA H100上では、毎秒1000トークン以上のスループットさえ可能です。
「しりとり」から「グローバルな協調」へ:DiffusionGemmaの魔法
DiffusionGemmaの核心は「一様状態拡散(Uniform State Diffusion)」にあります。左から右へ機械的に出力するのではなく、ランダムなノイズで満たされた「キャンバス」から始まり、数回のノイズ除去反復を経て、シーケンス全体が同時に正しい答えへと「焦点を合わせ」ていきます。
1.真の「グローバルな視野」
数独のような厳格な制約が存在するタスクにおいて、従来のモデルは「過去を見ることはできても、未来を見ることができない」ため、混乱しがちでした。DiffusionGemmaの双方向アテンション(Bidirectional Attention)メカニズムが、その常識を覆します。すべてのトークン位置がキャンバス上の他のすべての位置を認識できるため、制約問題を処理する際、盲人象を撫でるような状態ではなく、全体を制御する能力を持つようになります。
2.「過ちを認めて修正する」
従来のモデルが生成したトークンは、出力してしまえば「覆水盆に返らず」で、修正は困難です。一方、DiffusionGemmaには再ノイズ化(Re-Noising)の能力があります。反復処理中にモデルが特定のトークンに対する確信度を下げた場合、そのトークンを「消去」して再生成することが可能です。この自己修正能力こそ、自己回帰モデルが夢見ていたものです。
長文コンテキストの優雅なバランス
長いシーケンスを処理するため、DiffusionGemmaは「ブロック自己回帰(Block Autoregressive)」戦略を採用しています。256トークンを1つのブロックとして並列ノイズ除去を行い、確定するとKVキャッシュにコミットし、次のブロックへ進みます。これにより、拡散モデルの並列速度と、自己回帰モデルの長シーケンスにおける安定性を完璧に両立させています。
3.エンジニア向け「導入リスト」
これは単なる研究モデルではなく、本番環境への導入が可能なツールです。Gemma 4アーキテクチャに基づく26Bパラメータの混合専門家モデル(MoE)であり、実際の推論時には3.8Bパラメータのみがアクティブ化されるため、18GBのVRAM制限下で量子化デプロイメントが可能です。
現在、開発チームはvLLMチームと緊密に連携しており、vLLMを通じて直接デプロイ可能です:
vllm serve google/diffusiongemma-26B-A4B-it \
--max-model-len 262144 \
--max-num-seqs 4 \
--gpu-memory-utilization 0.85 \
--attention-backend TRITON_ATTN \
--generation-config vllm \
--hf-overrides '{"diffusion_sampler": "entropy_bound", "diffusion_entropy_bound": 0.1}' \
--diffusion-config '{"canvas_length": 256}' \
--enable-chunked-prefill
展望:これがゴールではない
DiffusionGemmaは私たちに可能性を示してくれました。生成ロジックを変えることで、モデルの性能を維持しつつ、推論効率を劇的に向上させることができるのです。
開発者として、このような「本質的な」レベルから推論ロジックを最適化する革新を目の当たりにするのは、本当に興奮します。誰だって、速くて賢く、しかも「よく考えてから行動する」ことができるモデルを所有したくはないでしょうか?

