Teknisk GUIDE

PagedAttention och vLLM

PagedAttention är en minneshanteringsteknik som lagrar en språkmodells uppmärksamhetscache i små återanvändbara block istället för en stor sammanhängande bit.

2 min readSenast uppdaterad

Översikt

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

Djupdykning

När en språkmodell genererar text behåller den en "KV-cache" (nyckel- och värdevektorer) för varje token den har sett så att nästa token kan ta hänsyn till hela sammanhanget. Traditionally each request reserved one large contiguous slab of GPU memory sized for its maximum possible length, wasting huge amounts when sequences were shorter or varied in length. PagedAttention, som introducerades i 2023 vLLM-tidningen från UC Berkeley, lånar idén om virtuell minnessökning från operativsystem: den delar upp KV-cachen i block med fast storlek som kan leva var som helst i minnet och tilldelas på begäran. En uppslagstabell mappar logiska tokenpositioner till fysiska block. Detta eliminerar nästan minnesfragmentering och låter block delas, till exempel över flera utgångar från samma prompt.

Teknisk insikt

KV-cachen är uppdelad i sidor med fast storlek, var och en innehåller nycklar och värden för ett visst antal tokens. En blocktabell per sekvens mappar logiska positioner till fysiska sidplatser, så en sekvenss cache behöver inte vara sammanhängande. Eftersom identiska prefix (en delad systemprompt eller beam-search-grenar) kan peka på samma fysiska sidor via copy-on-write, återanvänds minnet istället för duplicerat, vilket minskar slöseriet från över 60 % till några få procent.

Strategisk inverkan

Cost and budget

Arkitekturbeslut driver prestanda och driftskostnader i flera år.

Clearer decisions

Teknisk utbildning hjälper team att välja rätt stack, inte bara den nyaste.

Quality control

Bättre tekniska val minskar tillförlitlighetsincidenter i produktionen.

Framtiden för PagedAttention och vLLM

vLLM har blivit en standardöppen källkods-slutledningsryggrad, och PagedAttentions idéer visas nu i de flesta serverstackar. Förvänta dig djupare prefixcache (återanvändning av cachade systemuppmaningar mellan användare), disaggregerad förfyllning och avkodning på separata maskiner, smartare vräkningspolicyer och tät integration med kvantisering och spekulativ avkodning. När sammanhangsfönster växer till miljontals tokens, blir effektiv paged KV-hantering ännu mer central för att hålla serveringen överkomlig.

Real-World Implementation

Värd för ett LLM API med öppen källkod där vLLM betjänar många samtidiga chattanvändare från en GPU med hög genomströmning

Dela en lång systemprompt över tusentals förfrågningar via prefixcache så att den bearbetas en gång, inte upprepade gånger

Kör strålsökning eller flera samplade kompletteringar som delar KV-block för den gemensamma prompten via kopiera-på-skriv

Minskar GPU-minnesspill från fragmentering så att en leverantör kan packa fler samtidiga sessioner på samma hårdvara

Risker & skyddsräcken

Att optimera ett riktmärke kan dölja bredare systemsvagheter.

Infrastruktur- och underhållskostnader underskattas ofta.

Säkerhets- och observerbarhetsluckor kan växa i takt med att systemen blir mer komplexa.

Färdplan för genomförande

1

Definiera latens-, kvalitet- och kostnadsmål före implementering.

2

Benchmark under realistiska belastnings- och dataförhållanden.

3

Instrumentövervakning för fel, drift och användarpåverkan.

4

Förbered återställnings- och incidentsvarsvägar innan skalning.

Fortsätt utforska

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.

Starta frågesport

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

Next guide

Differentiell integritet

Frequently asked questions

What is PagedAttention and vLLM?

PagedAttention är en minneshanteringsteknik som lagrar en språkmodells uppmärksamhetscache i små återanvändbara block istället för en stor sammanhängande bit. Den driver vLLM, en serveringsmotor med öppen källkod som dramatiskt ökar hur många förfrågningar en enda GPU kan hantera.

Vad lagrar 'KV-cachen' under textgenerering?

KV-cachen innehåller nyckel- och värdevektorer för varje tidigare token, vilket låter modellen ta hand om hela sammanhanget utan att räkna om det varje steg.

Vilket operativsystemkoncept inspirerade PagedAttention?

PagedAttention lånar virtuell minnessökning: KV-cachen är uppdelad i sidor med fast storlek som kan leva var som helst, mappade av en blocktabell.

Vilket problem med traditionell KV-cache-allokering löser PagedAttention?

Att reservera en stor sammanhängande platta per begäran, dimensionerad för maxlängden, slösade bort enorma mängder GPU-minne. Personsökning tilldelar små block på begäran, vilket minskar avfallet.

Hur låter PagedAttention flera utgångar dela minne för en gemensam prompt?

Identiska prefix (delade uppmaningar eller strålsökningsgrenar) refererar till samma fysiska KV-sidor, kopiering endast när en gren divergerar.

Var utvecklades vLLM och PagedAttention ursprungligen?

vLLM och PagedAttention-algoritmen kom från UC Berkeley i en tidning från 2023 och blev snabbt en allmänt använd serveringsmotor med öppen källkod.