ウェブサイト検索

LLM 推論の最適化 101


ローカルな注目とグローバルな注目

ローカルとグローバルの注意メカニズムは、重要な点で異なります。ローカル アテンションでは、トークン ウィンドウに焦点を当てることで計算 (O(n * w)) とメモリの使用量が減り、特に長いシーケンスの場合に高速な推論が可能になりますが、長距離の依存関係を見逃す可能性があります。グローバル アテンションは、すべてのトークン ペアを処理するため計算コストが高く (O(n^2))、メモリを大量に消費しますが、推論速度は遅くなりますが、完全なコンテキストと長距離の依存関係をより適切に捕捉できます。

ページングされたアテンション

PagedAttendance は、仮想メモリ割り当てにヒントを得て、リクエスト間のトークン数の変動を考慮した KV キャッシュを最適化するフレームワークを提案しました。

フラッシュアテンション

FlashAttendant には 3 つのバリエーションがあり、FlashAttendant-3 が最新リリースであり、Hopper GPU 用に最適化されています。このアルゴリズムの各反復では、アテンションの計算を可能な限り高速にするためにハードウェアを意識したアプローチが採用されています。 FlashAttend で書かれた過去の記事には、次のものが含まれます。 ハードウェア認識アルゴリズムの設計: FlashAttendant および FlashAttendant-2

モデル アーキテクチャ: 高密度モデル vs. 専門家の混合

高密度 LLM は、推論中にすべてのパラメータがアクティブに使用される標準です。

Mixture of Experts (MoE) LLM は、ルーティング メカニズムを備えた複数の特殊なサブネットワークで構成されています。各入力に対して関連するエキスパートのみがアクティブ化されるため、パラメーターの効率が向上し、高密度モデルよりも推論が高速化されることがよく観察されます。

平行度

大きなモデルでは、効果的に実行するために複数の GPU が必要になることがよくあります。マルチ GPU 推論を可能にするさまざまな並列化戦略が多数あります。

Parallelism Type Partions Description Purpose
Data Data Splits different batches of data across devices. Distribution of memory and computation for large datasets that wouldn’t fit on a single device
Tensor Weight Tensors Splits tensors across multiple devices either row-wise or column-wise Distribution of memory and computation for large tensors that wouldn’t fit on a single device
Pipeline Model Layers (vertically) Splits different stages of the full model pipeline in parallel Improves throughput by overlapping computation of different model stages
Context Input Sequences Divides input sequences into segments across devices Reduces memory bottleneck for long sequence inputs
Expert MoE models Splits experts, where each expert is a smaller model, across devices Allows for larger models with improved performance by distributing computation across multiple experts
Fully Sharded Data Data, model, optimizer, and gradients Shards components across devices, processes data in parallel, and synchronizes after each training step. Parameters are fetched and reconstructed from shards as needed, used for computation, and then promptly discarded, reducing memory footprint. Enables training of extremely large models that exceed the memory capacity of a single device by distributing both model parameters and activations.

結論

推論が研究と最適化の興味深い分野であることは否定できません。フィールドの動きは速く、それに追いつくためには推論もより速く進む必要があります。よりエージェント的なワークフローに加えて、モデルがより困難な問題について「より長く考える」ことを可能にする、より動的な推論戦略が見られます。たとえば、OpenAI の o1 モデルのような推論モデルは、推論中により多くの計算リソースが費やされると、困難な数学タスクやプログラミング タスクで一貫したパフォーマンスの向上を示します。

読んでいただきありがとうございます!この記事は、推論の最適化に関するすべてを決定するものではありません。このトピックおよび関連する記事に関するさらにエキサイティングな記事にご期待ください。

参考文献およびその他の優れたリソース

ブログ投稿:

LLM テクニックの習得: 推論の最適化 | NVIDIA テクニカル ブログ

TGI を使用した大規模な LLM 推論

投機的解読を振り返る(Google Research)

LLM 推論シリーズ: 4. KV キャッシュ、さらに詳しく見る |ピエール・リーンハート著 |中くらい

量子化のビジュアルガイド - Maarten Grootendorst 著

Character.AI での AI 推論の最適化

Character.AI での AI 推論の最適化 (Part Deux)

論文 :

LLM-Inference-Bench: AI アクセラレータ上の大規模言語モデルの推論ベンチマーク

PagedAttendant を使用した大規模言語モデルの効率的なメモリ管理

SARATHI: チャンクされたプレフィルを使用したデコードのピギーバックによる効率的な LLM 推論

LLama 3 モデルの群れ

スケーラブルな 100 万トークン推論のためのコンテキスト並列処理

講演 :

理論からコスト効率の高い導入まで LLM 推論の最適化をマスターする: Mark Moyou

CES 2025 で NVIDIA CEO のジェンスン・ファンが基調講演

1兆兆の浮動小数点演算のための機械学習システムの構築 :: Jane Street

Dylan Patel - 推論数学、シミュレーション、および AI メガクラスター - スタンフォード CS 229S - 2024 年秋

最新の GPU ではバッチ処理はどのように機能しますか?

GitHub リンク:

Sharan Chetlur - Nvidia/プレゼンテーション スライド - Nvidia GPU で機能する高性能 LLM

GitHub - hackgingface/search-and-learn: オープン モデルの推論時間コンピューティングをスケールするレシピ