Mai departeUrmătorul ghid
Atenție la interogare grupată
AI limbaj
GHID AI limbaj
Multi-Query Attention (MQA) este o întorsătură care economisește memorie a atenției transformatorului, care împărtășește un set de chei și valori în toate capetele de atenție.
Ascultă acest ghidNarativ AI · ~2 min
It dramatically speeds up text generation by shrinking the memory the model must shuffle around.
Atenția standard pentru mai multe capete oferă fiecărui cap propriile sale interogări, cheie și proiecții de valoare. În timpul generării, cheile și valorile pentru toate jetoanele anterioare trebuie să fie stocate în cache și reîncărcate la fiecare pas - acest cache KV devine principalul blocaj, deoarece citirea lui din memorie este mai lentă decât matematica în sine. Multi-Query Attention, propus de Noam Shazeer în 2019, păstrează proiecții separate de interogare pe cap, dar restrânge cheile și valorile într-un singur cap partajat. Acest lucru micșorează memoria cache KV cu un factor egal cu numărul de capete, uneori de 8x până la 64 de ori mai mic. Rezultatul este o decodare autoregresivă mult mai rapidă și o amprentă mai ușoară a memoriei, cu doar o scădere modestă a calității. O cale de mijloc, Atenție de interogare grupată, echilibrează compromisul.
Accelerarea generării token-cu-token în asistenții de chat, unde memoria cache KV, nu calculul brut, limitează debitul.
PaLM de la Google, care a folosit Multi-Query Attention pentru a permite o inferență eficientă la scară largă.
Servirea multor utilizatori concurenți pe un singur GPU prin micșorarea memoriei cache KV la cerere.
Grouped-Query Attention în Llama 2 70B și Llama 3, un descendent direct care echilibrează viteza MQA cu calitatea atenției deplină.
MQA a stabilit că puteți elimina capetele cheie/valoare redundante cu puțin rău, iar această perspectivă modelează acum aproape fiecare LLM cu inferență rapidă. Domeniul a convergit în mare parte către Grouped-Query Attention (GQA), folosit în Llama 2/3 și multe altele, care utilizează câteva grupuri KV mai degrabă decât unul pentru a recupera calitatea, păstrând în același timp cea mai mare parte a accelerației. Lucrările viitoare îmbină aceste idei cu compresia KV-cache, cuantizarea și atenția multi-latentă pentru a împinge contexte mai lungi și servirea mai ieftină.
Buletin gratuit
Trei povești AI verificate în fiecare dimineață de zi lucrătoare, scrise în engleză simplă. Gratuit pentru totdeauna, fără reclame.
Un e-mail în fiecare zi lucrătoare. Dezabonare cu un singur clic. Nu vindem niciodată și nu împărtășim adresa ta.
Testează-te
Feedback instantaneu la fiecare răspuns și un certificat partajabil cu un ID verificabil după ce parcurgi un curs.
Susține educația AI gratuită. AI Understanding este o organizație nonprofit 501(c)(3) — fără reclame, fără barieră de plată, pentru totdeauna. Fă o donație
Multi-Query Attention (MQA) este o întorsătură care economisește memorie a atenției transformatorului, care împărtășește un set de chei și valori în toate capetele de atenție. Accelerează dramatic generarea de text prin micșorarea memoriei pe care modelul trebuie să o amestece.
MQA păstrează interogări separate per cap, dar partajează o proiecție cheie și o proiecție a valorii pentru toate capete.
Reîncărcarea memoriei cache KV mare la fiecare pas este legată de lățimea de bandă; MQA micșorează memoria cache pentru a accelera decodarea.
Deoarece cheile și valorile se prăbușesc de la capete H la unul, memoria cache se micșorează cu aproximativ numărul de capete.
Partajarea cheilor și valorilor reduce ușor capacitatea de reprezentare, determinând o mică scădere a calității în schimbul unor câștiguri mari de viteză.
Grouped-Query Attention (GQA) folosește mai multe grupuri KV în loc de unul, echilibrând calitatea și viteza.
Continuați să învățați
Mai multe ghiduri alese pentru acest subiect
Mai departeUrmătorul ghid
Atenție la interogare grupată
AI limbaj