GHID tehnic

PagedAttention și vLLM

PagedAttention este o tehnică de gestionare a memoriei care stochează memoria cache a atenției unui model de limbaj în blocuri mici reutilizabile în loc de o bucată mare contiguă.

2 minute de lecturăUltima actualizare

Prezentare generală

It powers vLLM, an open-source serving engine that dramatically boosts how many requests a single GPU can handle.

Scufundare în profunzime

Atunci când un model de limbă generează text, acesta păstrează o „cache KV” (vectori cheie și valoare) pentru fiecare simbol pe care l-a văzut, astfel încât următorul simbol să se ocupe de contextul complet. În mod tradițional, fiecare solicitare a rezervat o placă mare de memorie GPU, dimensionată pentru lungimea maximă posibilă, irosind cantități uriașe atunci când secvențele erau mai scurte sau variate în lungime. PagedAttention, introdus în lucrarea vLLM din 2023 de la UC Berkeley, împrumută ideea de paginare a memoriei virtuale din sistemele de operare: împarte memoria cache KV în blocuri de dimensiuni fixe care pot trăi oriunde în memorie și pot fi alocate la cerere. Un tabel de căutare mapează pozițiile token-urilor logice la blocuri fizice. Acest lucru aproape elimină fragmentarea memoriei și permite partajarea blocurilor, de exemplu în mai multe ieșiri din același prompt.

Perspectivă tehnică

Cache-ul KV este împărțit în pagini cu dimensiuni fixe, fiecare ținând cheile și valorile pentru un număr stabilit de jetoane. Un tabel de blocuri pe secvență mapează pozițiile logice cu locațiile fizice ale paginii, astfel încât memoria cache a unei secvențe nu trebuie să fie contiguă. Deoarece prefixele identice (un prompt de sistem partajat sau ramuri de căutare prin fascicul) pot indica aceleași pagini fizice prin copiere la scriere, memoria este reutilizată în loc de duplicată, reducând risipa de la peste 60% la câteva procente.

Impact strategic

Cost și buget

Deciziile de arhitectură generează performanța și costurile de operare de ani de zile.

Decizii mai clare

Educația tehnică ajută echipele să aleagă stiva potrivită, nu doar cea mai nouă.

Controlul calității

Opțiuni de inginerie mai bune reduc incidentele de fiabilitate în producție.

Viitorul PagedAttention și vLLM

vLLM a devenit o coloană vertebrală de inferență open-source implicită, iar ideile lui PagedAttention apar acum în majoritatea stivelor de difuzare. Așteptați-vă la o memorare mai profundă a prefixelor (reutilizarea solicitărilor de sistem stocate în cache pentru utilizatori), la precompletare și decodare dezagregate pe mașini separate, politici de evacuare mai inteligente și o integrare strânsă cu cuantificare și decodare speculativă. Pe măsură ce ferestrele de context cresc în milioane de jetoane, gestionarea eficientă a KV paginată devine și mai centrală pentru a menține servirea la prețuri accesibile.

Implementare în lumea reală

Găzduirea unui API LLM cu sursă deschisă în care vLLM deservește mulți utilizatori concurenți de chat dintr-un singur GPU la un randament ridicat

Partajarea unei solicitări lungi de sistem pentru mii de solicitări prin memorarea în cache a prefixelor, astfel încât să fie procesată o dată, nu în mod repetat

Căutare fascicul de rulare sau completări eșantionate multiple care partajează blocuri KV pentru solicitarea comună prin copiere la scriere

Reducerea pierderii de memorie GPU de la fragmentare, astfel încât un furnizor să poată împacheta mai multe sesiuni simultane pe același hardware

Riscuri și balustrade

Optimizarea unui punct de referință poate ascunde slăbiciunile mai largi ale sistemului.

Costurile de infrastructură și întreținere sunt adesea subestimate.

Lacunele de securitate și observabilitate pot crește pe măsură ce sistemele devin mai complexe.

Foaia de parcurs de implementare

1

Definiți obiectivele de latență, calitate și cost înainte de implementare.

2

Benchmark în condiții realiste de încărcare și date.

3

Monitorizarea instrumentelor pentru erori, deriva și impactul utilizatorului.

4

Pregătiți căile de retragere și răspuns la incident înainte de scalare.

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 PagedAttention and vLLM quiz

Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.

Quiz Start

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

Următorul ghid

Confidențialitate diferențială

Întrebări frecvente

What is PagedAttention and vLLM?

PagedAttention este o tehnică de gestionare a memoriei care stochează memoria cache a atenției unui model de limbaj în blocuri mici reutilizabile în loc de o bucată mare contiguă. Acesta alimentează vLLM, un motor de servire open-source care mărește dramatic numărul de solicitări pe care un singur GPU poate gestiona.

Ce stochează „KV cache” în timpul generării textului?

Cache-ul KV deține vectori cheie și valoare pentru fiecare token anterior, permițând modelului să se ocupe de contextul complet fără a-l recalcula la fiecare pas.

Ce concept de sistem de operare a inspirat PagedAttention?

PagedAttention împrumută paginarea în memorie virtuală: memoria cache KV este împărțită în pagini de dimensiuni fixe care pot locui oriunde, mapate de un tabel bloc.

Ce problemă cu alocarea tradițională a memoriei cache KV rezolvă PagedAttention?

Rezervarea unei plăci mari contigue pe cerere, dimensionată pentru lungimea maximă, a irosit cantități uriașe de memorie GPU. Paging alocă blocuri mici la cerere, reducând deșeurile.

Cum permite PagedAttention mai multe ieșiri să partajeze memoria pentru un prompt comun?

Prefixele identice (indemnizații partajate sau ramuri de căutare a fasciculului) fac referire la aceleași pagini KV fizice, copiendu-se numai atunci când o ramură diverge.

Unde au fost dezvoltate inițial vLLM și PagedAttention?

vLLM și algoritmul PagedAttention au apărut din UC Berkeley într-o lucrare din 2023 și au devenit rapid un motor de servire open-source utilizat pe scară largă.