Pozornost na seskupené dotazy
Grouped-Query Attention (GQA) je způsob, jak zmenšit paměť potřebnou při generování textu tím, že několik hlav dotazů sdílí stejný klíč a hodnotu.
Přehled
It makes large models much faster to serve with almost no quality loss.
Hluboký ponor
Ve standardní vrstvě pozornosti s více hlavami má každá hlava své vlastní dotazy, klíče a hodnoty. Během generování jsou klíče a hodnoty pro všechny předchozí tokeny ukládány do mezipaměti ('KV cache'), takže je model nepřepočítává. S mnoha hlavami a dlouhými kontexty se tato mezipaměť stává obrovskou a dominuje šířce pásma paměti v době odvození. GQA, kterou zavedli výzkumníci Google v roce 2023, seskupuje hlavy dotazů a dává každé skupině jednu sdílenou sadu klíčových a hodnotových hlav. Pokud máte 32 hlav dotazů, ale pouze 8 skupin KV, mezipaměť KV se zmenší zhruba čtyřnásobně. To se nachází mezi plnou pozorností více hlav (každá hlava oddělená) a pozorností více dotazy (jeden sdílený KV pro všechny hlavy), zachycuje většinu rychlosti MQA a zároveň udržuje kvalitu blízko plné pozornosti. Llama 2 70B a mnoho pozdějších modelů ji přijalo.
Technický přehled
Kvalita pozornosti do značné míry závisí na mnoha různých směrech dotazu, ale toleruje sdílení klíčů a hodnot. GQA využívá tuto asymetrii: uchovává všechny hlavy dotazů, ale replikuje každou sdílenou hlavu KV napříč dotazy ve své skupině. Úspory jsou odvozeny od toho, že KV cache je hlavním spotřebitelem šířky pásma paměti; méně KV hlav znamená méně dat ke čtení na vygenerovaný token. Modely jsou často krátce „přeškoleny“, aby převedly stávající vícehlavý kontrolní bod na GQA.
Strategický dopad
Rychlost a měřítko
Jazykové pracovní postupy se mohou pohybovat rychleji, aniž by byla obětována konzistentnost.
Přístup a dosah
Rozšiřuje přístup napříč jazyky a komunikačními styly.
Jasnější rozhodnutí
Týmy mohou strávit více času úsudkem, zatímco automatizace zvládne opakování.
Budoucnost seskupeného dotazu Attention
GQA je nyní standardním výchozím nastavením v modelech s otevřenou váhou, protože čistě obchoduje s nepatrnými náklady na kvalitu za velké výhry v podávání. Očekávejte, že se bude stále více kombinovat s dalšími efektními triky, jako je FlashAttention, kvantizace KV-cache a novější schémata, jako je vícehlavá latentní pozornost, která ještě více komprimují mezipaměť. S přibývajícími okny kontextu zůstane ovládání velikosti KV-cache hlavním konstrukčním problémem a sdílení hlavy ve stylu GQA zůstane klíčovou pákou.
Real-World Implementace
Llama 2 70B a Llama 3 využívající GQA k poskytování dlouhých kontextů s menší mezipamětí KV
Snížení paměti GPU, aby se velký model chatu vešel na méně nebo levnější akcelerátory
Zrychlení generování tokenu po tokenu v produkčních rozhraních API, kde je šířka pásma KV-cache překážkou
Povolení větších velikostí dávek pro obsluhu mnoha uživatelů současně bez vyčerpání paměti
Rizika a zábradlí
Halucinovaná fakta mohou tiše vstupovat do zpráv, podpůrných toků nebo výstupů výzkumu.
Citlivost na výzvy může způsobit nekonzistentní výsledky napříč podobnými požadavky.
Citlivá textová data mohou být vystavena, pokud je řízení přístupu slabé.
Plán implementace
Před zavedením definujte výstupní formát, tón a standardy kvality.
Pozemní reakce s důvěryhodnými zdroji, kdykoli záleží na přesnosti.
Udržujte kontrolní bod lidské kontroly pro vysoce důležité výstupy.
Sledujte vzorce selhání a pravidelně opakujte výzvy nebo pracovní postupy.
Pokračujte v objevování
Free newsletter
Get the daily AI briefing
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Take the Grouped-Query Attention quiz
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
Další průvodce
Multi-Query Attention
Často kladené otázky
What is Grouped-Query Attention?
Grouped-Query Attention (GQA) je způsob, jak zmenšit paměť potřebnou při generování textu tím, že několik hlav dotazů sdílí stejný klíč a hodnotu. Díky tomu se velké modely mnohem rychleji obsluhují téměř bez ztráty kvality.
Co je v Grouped-Query Attention sdíleno mezi skupinou hlav dotazů?
GQA uchovává samostatné hlavy dotazů, ale umožňuje každé z nich sdílet jednu sadu hlaviček klíčů a hodnot, čímž se zmenšuje mezipaměť KV.
GQA lze nejlépe popsat jako střední cestu mezi kterými dvěma extrémy?
Vícehlavý dává každé hlavě vlastní KV; multi-query sdílí jeden KV pro všechny hlavy; GQA sedí mezi několika skupinami KV.
Jakou část závěrů GQA primárně zlevňuje?
Úspory se projevují v době generace, kde čtení KV mezipaměti představuje dominantní náklady na šířku pásma paměti.
Pokud má model 32 dotazovacích hlav a 8 skupin KV, o jaký faktor se zhruba sníží mezipaměť KV?
32 dotazovacích hlav rozdělených 8 sdílenými skupinami KV poskytuje zhruba čtyřnásobné snížení klíčů a hodnot uložených v mezipaměti.
Proč může GQA zachovat většinu kvality modelu i přes sdílení KV hlav?
Pozornost snáší sdílení klíčů a hodnot mnohem lépe než ztrátu různých směrů dotazů, takže GQA udržuje vysokou kvalitu.