Atenție la interogare grupată
Grouped-Query Attention (GQA) este o modalitate de a micșora memoria necesară în timpul generării textului, permițând mai multor capete de interogare să partajeze aceleași capete de cheie și valoare.
Prezentare generală
It makes large models much faster to serve with almost no quality loss.
Scufundare în profunzime
Într-un strat de atenție standard cu mai multe capete, fiecare cap are propriile interogări, chei și valori. În timpul generării, cheile și valorile pentru toate jetoanele anterioare sunt stocate în cache („cache-ul KV”), astfel încât modelul să nu le recalculeze. Cu multe capete și contexte lungi, acest cache devine enorm și domină lățimea de bandă a memoriei la momentul deducerii. GQA, introdus de cercetătorii Google în 2023, grupează capetele de interogare și oferă fiecărui grup un singur set partajat de capete de cheie și valoare. Dacă aveți 32 de capete de interogare, dar numai 8 grupuri KV, memoria cache KV se micșorează de aproximativ patru ori. Aceasta se află între atenția completă cu mai multe capete (fiecare cap separat) și atenția cu mai multe interogări (un KV partajat pentru toate capete), captând cea mai mare parte a vitezei MQA, păstrând în același timp calitatea aproape de atenția deplină. Llama 2 70B și multe modele ulterioare l-au adoptat.
Perspectivă tehnică
Calitatea atenției depinde în mare măsură de existența mai multor direcții de interogare distincte, dar tolerează partajarea cheilor și valorilor. GQA exploatează această asimetrie: păstrează toate capetele de interogare, dar reproduce fiecare cap KV partajat în interogările din grupul său. Economiile vin la inferență, unde memoria cache KV este principalul consumator de lățime de bandă a memoriei; mai puține capete KV înseamnă mai puține date de citit per token generat. Modelele sunt adesea „învățate” pentru scurt timp pentru a converti un punct de control existent cu mai multe capete într-unul GQA.
Impact strategic
Viteză și scară
Fluxurile de lucru lingvistice se pot deplasa mai rapid fără a sacrifica consistența.
Acces și acoperire
Extinde accesul în diferite limbi și stiluri de comunicare.
Decizii mai clare
Echipele pot petrece mai mult timp jucând în timp ce automatizarea se ocupă de repetiție.
Viitorul atenției interogări grupate
GQA este acum un standard standard în modelele cu greutate deschisă, deoarece schimbă în mod curat un cost mic de calitate pentru câștiguri mari de porție. Așteptați-vă să se combine din ce în ce mai mult cu alte trucuri de eficiență, cum ar fi FlashAttention, cuantizarea KV-cache și scheme mai noi, cum ar fi atenția latentă cu mai multe capete, care comprimă și mai mult memoria cache. Pe măsură ce ferestrele de context cresc, controlul dimensiunii cache-ului KV va rămâne o problemă centrală de design, iar partajarea capului în stil GQA va rămâne o pârghie cheie.
Implementare în lumea reală
Llama 2 70B și Llama 3 folosind GQA pentru a servi contexte lungi cu un cache KV mai mic
Reducerea memoriei GPU, astfel încât un model mare de chat să se potrivească pe acceleratoare mai puține sau mai ieftine
Accelerarea generării token-by-token în API-urile de producție în care lățimea de bandă KV-cache este blocajul
Permiterea unor loturi mai mari pentru a servi mai mulți utilizatori simultan, fără a epuiza memoria
Riscuri și balustrade
Faptele halucinate pot intra în liniște în rapoarte, fluxuri de sprijin sau rezultate ale cercetării.
Sensibilitatea promptă poate crea rezultate inconsecvente pentru solicitări similare.
Datele text sensibile pot fi expuse dacă controalele de acces sunt slabe.
Foaia de parcurs de implementare
Definiți formatul de ieșire, tonul și standardele de calitate înainte de lansare.
Răspunsurile la sol cu surse de încredere ori de câte ori acuratețea contează.
Păstrați un punct de control uman pentru rezultate cu mize mari.
Urmăriți tiparele de eșec și reantrenați în mod regulat solicitările sau fluxurile de lucru.
Continuați să explorați
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
Următorul ghid
Atenție la mai multe interogări
Întrebări frecvente
What is Grouped-Query Attention?
Grouped-Query Attention (GQA) este o modalitate de a micșora memoria necesară în timpul generării textului, permițând mai multor capete de interogare să partajeze aceleași capete de cheie și valoare. Face ca modelele mari să fie mult mai rapid de servit, aproape fără pierderi de calitate.
În Gruped-Query Attention, ce este împărțit între un grup de capete de interogare?
GQA păstrează capete de interogare separate, dar permite fiecărui grup să partajeze un set de capete de cheie și valoare, micșorând memoria cache KV.
GQA este cel mai bine descris ca o cale de mijloc între care două extreme?
Multi-head oferă fiecărui cap propriul KV; interogare multiplă partajează un KV pentru toate capete; GQA se află la mijloc cu câteva grupuri KV.
Ce parte a inferenței face GQA în primul rând mai ieftin?
Economiile apar la momentul generarii, unde citirea memoriei cache KV este costul dominant al lățimii de bandă a memoriei.
Dacă un model are 32 de capete de interogare și 8 grupuri KV, memoria cache KV este redusă cu aproximativ ce factor?
32 de capete de interogare împărțite la 8 grupuri KV partajate oferă aproximativ o reducere de patru ori a cheilor și a valorilor stocate în cache.
De ce poate GQA să păstreze cea mai mare parte a calității modelului, în ciuda împărtășirii capetelor KV?
Atenția tolerează partajarea cheilor și valorilor mult mai bine decât tolerează pierderea direcțiilor de interogare distincte, astfel încât GQA menține calitatea ridicată.