Intel Gaudi アシスト生成サポート
Hugging Face は、Intel Gaudi プロセッサ上でのテキスト生成を高速化するために、Optimum Habana ライブラリにアシスト生成(スペキュレーティブサンプリング)を統合しました。この最適化により、大規模な生成 AI 実装における推論レイテンシ、インフラコスト、電力消費が削減されます。
スペキュレーティブサンプリングによるアシスト生成
アシスト生成は、より小さなドラフトモデルを使用して複数のトークンを予測し、後で大きなターゲットモデルがそれらを検証することでテキスト生成を高速化します。プロセスは次のサイクルに従います。
- ドラフト作成: ドラフトモデルが $K$ トークンを生成します。
- 評価: ターゲットモデルがこれらの $K$ トークンを評価します。
- 修正: ドラフトモデルのトークンが拒否された場合、ターゲットモデルが次の正しいトークンを生成します。
- 反復: 次の $K$ トークンに対して再びドラフトモデルからプロセスが開始されます。
この手法は、スペキュレーティブサンプリングプロセス中にターゲット分布が回復されるため、標準的な自己回帰サンプリングと同等のサンプリング品質を維持します。この方法の有効性を決定する主な要因は、ドラフトモデルとターゲットモデルの相対的なサイズと、ドラフトトークンの受容率です。
Intel Gaudi 上での技術実装
Intel Gaudi でアシスト生成を実装するには、サイズが異なるモデルに対して別々の最適化戦略を管理する必要があります。具体的には、KV キャッシュと量子化モデルを活用し、各モデル(ドラフトとターゲット)がそれぞれ独自の KV キャッシュを保持してサイズの違いに対応します。
この機能は現在 Optimum Habana の一部となっており、Transformers や Diffusers といった Hugging Face ライブラリを拡張し、AI ワークフローが Intel Gaudi ハードウェア向けに完全に最適化されるようにしています。
パフォーマンスと使用方法
アシスト生成は、通常、大規模なトランスフォーマーベースモデルで約 2 倍の速度向上を提供します。実際のドラフトモデルの受容率—すなわち速度向上—は、入力テキストに部分的に依存します。
ユーザーは Hugging Face Transformers ライブラリの .generate() 呼び出し内で assistant_model パラメータを使用することでこの機能を実装できます。Optimum Habana 環境では、テキスト生成サンプルのコマンドライン引数 --assistant_model によってこの機能が有効化されます。
ハードウェアの背景
Intel Gaudi プロセッサは、高性能推論向けのコスト効果の高い代替手段として位置付けられています。Hugging Face によると、Intel Gaudi は Nvidia H100 GPU と同等の性能を提供しつつ、価格は Nvidia A100 80GB GPU と同程度です。