言語AIガイド

グループ化されたクエリのアテンション

グループ化クエリ アテンション (GQA) は、複数のクエリ ヘッドが同じキーと値のヘッドを共有できるようにすることで、テキスト生成中に必要なメモリを削減する方法です。

概要

グループ化クエリ アテンション (GQA) は、複数のクエリ ヘッドが同じキーと値のヘッドを共有できるようにすることで、テキスト生成中に必要なメモリを削減する方法です。これにより、品質をほとんど損なうことなく、大規模なモデルをはるかに高速に提供できるようになります。

Grouped-Query Attendance は、テキストと音声を大規模に読み取り、生成、分類、変換するために使用される言語 AI スタックの一部です。

ディープダイブ

標準的なマルチヘッド アテンション レイヤーでは、すべてのヘッドが独自のクエリ、キー、および値を持ちます。生成中、以前のすべてのトークンのキーと値はキャッシュ (「KV キャッシュ」) されるため、モデルはそれらを再計算しません。多くのヘッドと長いコンテキストがあるため、このキャッシュは巨大になり、推論時にメモリ帯域幅を支配します。 2023 年に Google 研究者によって導入された GQA は、クエリ ヘッドをグループ化し、各グループにキーと値のヘッドの単一の共有セットを与えます。クエリ ヘッドが 32 個あるのに KV グループが 8 個しかない場合、KV キャッシュは約 4 倍に縮小します。これは、完全なマルチヘッド アテンション (すべてのヘッドが個別) とマルチクエリ アテンション (すべてのヘッドに 1 つの共有 KV) の間に位置し、完全なアテンションに近い品質を維持しながら、MQA の速度のほとんどを実現します。 Llama 2 70B 以降の多くのモデルで採用されました。

技術的な洞察

注意の質は、多くの異なるクエリ方向があることに大きく依存しますが、キーと値の共有は許容されます。 GQA はこの非対称性を利用します。つまり、すべてのクエリ ヘッドを保持しますが、グループ内のクエリ全体で各共有 KV ヘッドを複製します。推測によると、KV キャッシュがメモリ帯域幅の主な消費者であるため、節約効果は得られます。 KV ヘッドが少ないということは、生成されたトークンごとに読み取るデータが少ないことを意味します。モデルは多くの場合、既存のマルチヘッド チェックポイントを GQA チェックポイントに変換するために短期間「アップトレーニング」されます。

グループ化されたクエリの注意をマスターする

グループ化クエリ アテンション (GQA) は、複数のクエリ ヘッドが同じキーと値のヘッドを共有できるようにすることで、テキスト生成中に必要なメモリを削減する方法です。これにより、品質をほとんど損なうことなく、大規模なモデルをはるかに高速に提供できるようになります。 Grouped-Query Attendance は、テキストと音声を大規模に読み取り、生成、分類、変換するために使用される言語 AI スタックの一部です。深い理解を得るには、グループ化クエリ アテンションを単一の機能ではなくオペレーティング モデルとして扱います。望ましい結果を定義し、前提条件を明確にし、システムが確実に実行できることと、専門家の判断が必要なことを分離します。

実際には、グループ化クエリ アテンションを使用する強力なチームは、プロンプト、取得、レビューのループを 1 つの統合コミュニケーション システムとして設計します。明示的な成功基準を文書化し、現実的なデータとワークフローに対してテストし、一度限りのベンチマークの成功ではなく、観察された失敗パターンに基づいて反復します。ここで、理論的な理解が、製品、ポリシー、運用全体にわたる永続的な機能に変わります。

言語ワークフローは、一貫性を犠牲にすることなく、より高速に移行できます。同時に、幻覚の事実がレポート、サポート フロー、または研究成果に静かに入力される可能性があります。最も回復力のあるアプローチは、実験のスピードとガバナンスの規律を組み合わせることであり、パイロットを実行し、証拠を取得し、意思決定ログを公開し、モデルの動作、ユーザーの期待、規制要件の進化に応じて安全対策を継続的に更新します。

戦略的影響

言語ワークフローは、一貫性を犠牲にすることなく、より高速に移行できます。

言語ワークフローは、一貫性を犠牲にすることなく、より高速に移行できます。高品質の導入では、これが測定可能な運用ルール、所有権の境界、定期的なレビューの儀式に変換されるため、チームは曖昧さを拡大するのではなく、自信を拡大することができます。

言語やコミュニケーション スタイルを超えてアクセスが拡張されます。

言語やコミュニケーション スタイルを超えてアクセスが拡張されます。高品質の導入では、これが測定可能な運用ルール、所有権の境界、定期的なレビューの儀式に変換されるため、チームは曖昧さを拡大するのではなく、自信を拡大することができます。

自動化が繰り返しを処理する間、チームは判断により多くの時間を費やすことができます。

自動化が繰り返しを処理する間、チームは判断により多くの時間を費やすことができます。高品質の導入では、これが測定可能な運用ルール、所有権の境界、定期的なレビューの儀式に変換されるため、チームは曖昧さを拡大するのではなく、自信を拡大することができます。

グループ化されたクエリ アテンションの将来

GQA は、わずかな品質コストをきれいに引き換えて大きなサービングの勝利を得ることができるため、現在、無差別級モデルの標準デフォルトとなっています。 FlashAttendant、KV キャッシュ量子化などの他の効率化手法や、キャッシュをさらに圧縮するマルチヘッド潜在アテンションなどの新しいスキームとの組み合わせが増えることが予想されます。コンテキスト ウィンドウが拡大しても、KV キャッシュ サイズの制御は設計上の問題の中心であり、GQA スタイルのヘッド共有が重要な手段であり続けるでしょう。

現実世界の実装

GQA を使用して、より小さい KV キャッシュで長いコンテキストを提供する Llama 2 70B および Llama 3

GPU メモリを削減して、大規模なチャット モデルを少数または安価なアクセラレータに適合させる

KV キャッシュ帯域幅がボトルネックとなっている運用 API でのトークンごとの生成を高速化します。

メモリを使い果たさずに多くのユーザーに同時にサービスを提供するために、より大きなバッチ サイズを有効にする

実装パターン

実際のグループ化されたクエリ アテンション

Llama 2 70B および Llama 3 は、GQA を使用して、より小さい KV キャッシュで長いコンテキストを提供します。

GQA を使用して、より小さい KV キャッシュで長いコンテキストを提供する Llama 2 70B および Llama 3 チームは、通常、品質のしきい値を事前に定義し、エッジ ケースに対する人間によるエスカレーション パスを維持し、生産性の向上とエラー コストの両方を長期にわたって追跡すると、より良い結果が得られます。

実際のグループ化されたクエリ アテンション

GPU メモリを削減して、大規模なチャット モデルがより少ない、またはより安価なアクセラレータに適合するようにします。

GPU メモリを削減して、大規模なチャット モデルがより少ない、または安価なアクセラレータに適合するようにする チームは通常、品質のしきい値を事前に定義し、エッジ ケースに対する人間によるエスカレーション パスを確保し、生産性の向上とエラー コストの両方を長期的に追跡すると、より良い結果が得られます。

実際のグループ化されたクエリ アテンション

KV キャッシュ帯域幅がボトルネックとなっている運用 API でのトークンごとの生成を高速化します。

KV キャッシュの帯域幅がボトルネックとなっている運用 API でのトークンごとの生成を高速化する チームは通常、品質のしきい値を事前に定義し、エッジ ケースに対する人間によるエスカレーション パスを確保し、生産性の向上とエラー コストの両方を長期的に追跡すると、より良い結果が得られます。

実際のグループ化されたクエリ アテンション

メモリを使い果たさずに多くのユーザーに同時にサービスを提供できるように、より大きなバッチ サイズを有効にします。

メモリを使い果たさずに、より大きなバッチ サイズを有効にして、多くのユーザーに同時にサービスを提供できるようにする チームは、通常、品質のしきい値を事前に定義し、エッジ ケースに対する人間によるエスカレーション パスを確保し、生産性の向上とエラー コストの両方を長期的に追跡すると、より良い結果が得られます。

リスクとガードレール

!

幻覚のような事実が、レポート、サポート フロー、または研究結果に静かに組み込まれる可能性があります。

!

迅速な対応により、同様のリクエスト間で一貫性のない結果が生じる可能性があります。

!

アクセス制御が弱いと、機密テキスト データが漏洩する可能性があります。

実装ロードマップ

1

展開する前に、出力形式、トーン、品質基準を定義します。

展開する前に、出力形式、トーン、品質基準を定義します。各ステップを証拠ゲートとして扱います。基準が満たされない場合は、ロールアウトを一時停止し、ギャップを埋めてから、使用を拡大します。

2

正確さが重要な場合は常に、信頼できる情報源を使って地上対応を行ってください。

正確さが重要な場合は常に、信頼できる情報源を使って地上対応を行ってください。各ステップを証拠ゲートとして扱います。基準が満たされない場合は、ロールアウトを一時停止し、ギャップを埋めてから、使用を拡大します。

3

一か八かの成果物については人間によるレビュー チェックポイントを維持します。

一か八かの成果物については人間によるレビュー チェックポイントを維持します。各ステップを証拠ゲートとして扱います。基準が満たされない場合は、ロールアウトを一時停止し、ギャップを埋めてから、使用を拡大します。

4

失敗パターンを追跡し、プロンプトやワークフローを定期的に再トレーニングします。

失敗パターンを追跡し、プロンプトやワークフローを定期的に再トレーニングします。各ステップを証拠ゲートとして扱います。基準が満たされない場合は、ロールアウトを一時停止し、ギャップを埋めてから、使用を拡大します。

探検を続けましょう