Technische GIDS

PagedAttention en vLLM

PagedAttention is een geheugenbeheertechniek die de aandachtscache van een taalmodel opslaat in kleine herbruikbare blokken in plaats van in één groot aaneengesloten stuk.

2 min readLaatst bijgewerkt

Overzicht

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

Diepe duik

Wanneer een taalmodel tekst genereert, houdt het een 'KV-cache' (sleutel- en waardevectoren) bij voor elk token dat het heeft gezien, zodat het volgende token de volledige context kan verzorgen. Traditioneel reserveerde elk verzoek één grote aaneengesloten plaat GPU-geheugen die was afgestemd op de maximaal mogelijke lengte, waardoor enorme hoeveelheden werden verspild als reeksen korter waren of in lengte varieerden. PagedAttention, geïntroduceerd in het vLLM-paper uit 2023 van UC Berkeley, ontleent het idee van virtueel geheugenpaging aan besturingssystemen: het splitst de KV-cache op in blokken van vaste grootte die overal in het geheugen kunnen voorkomen en op verzoek kunnen worden toegewezen. Een opzoektabel wijst logische tokenposities toe aan fysieke blokken. Hierdoor wordt geheugenfragmentatie vrijwel geëlimineerd en kunnen blokken worden gedeeld, bijvoorbeeld over meerdere uitvoer van dezelfde prompt.

Technisch inzicht

De KV-cache is opgesplitst in pagina's met een vaste grootte, die elk de sleutels en waarden voor een bepaald aantal tokens bevatten. Een bloktabel per reeks wijst logische posities toe aan fysieke paginalocaties, zodat de cache van een reeks niet aaneengesloten hoeft te zijn. Omdat identieke voorvoegsels (een gedeelde systeemprompt of beam-search-vertakkingen) via copy-on-write naar dezelfde fysieke pagina's kunnen verwijzen, wordt het geheugen hergebruikt in plaats van gedupliceerd, waardoor de verspilling van meer dan 60% naar een paar procent wordt teruggebracht.

Strategische impact

Cost and budget

Architectuurbeslissingen bepalen jarenlang de prestaties en bedrijfskosten.

Clearer decisions

Technisch onderwijs helpt teams bij het kiezen van de juiste stapel, niet alleen de nieuwste.

Quality control

Betere technische keuzes verminderen het aantal betrouwbaarheidsincidenten in de productie.

De toekomst van PagedAttention en vLLM

vLLM is een standaard backbone voor open source-inferentie geworden, en de ideeën van PagedAttention verschijnen nu in de meeste serveerstapels. Verwacht diepere caching van prefixen (hergebruik van in de cache opgeslagen systeemprompts voor alle gebruikers), opgesplitste prefill en decodering op afzonderlijke machines, slimmer uitzettingsbeleid en nauwe integratie met kwantisering en speculatieve decodering. Naarmate contextvensters uitgroeien tot miljoenen tokens, wordt efficiënt KV-beheer op pagina's nog belangrijker om de dienstverlening betaalbaar te houden.

Implementatie in de echte wereld

Het hosten van een open-source LLM API waarbij vLLM veel gelijktijdige chatgebruikers bedient vanaf één GPU met een hoge doorvoer

Het delen van een lange systeemprompt over duizenden verzoeken via prefixcaching, zodat deze één keer wordt verwerkt en niet herhaaldelijk

Lopende straalzoekopdracht of meerdere bemonsterde voltooiingen die KV-blokken delen voor de gemeenschappelijke prompt via copy-on-write

Het terugdringen van GPU-geheugenverspilling door fragmentatie, zodat een provider meer gelijktijdige sessies op dezelfde hardware kan verwerken

Risico's en vangrails

Het optimaliseren van één benchmark kan bredere systeemzwakheden verbergen.

Infrastructuur- en onderhoudskosten worden vaak onderschat.

De lacunes op het gebied van beveiliging en waarneembaarheid kunnen groter worden naarmate systemen complexer worden.

Implementatie routekaart

1

Definieer latentie-, kwaliteits- en kostendoelen vóór implementatie.

2

Benchmark onder realistische belasting- en gegevensomstandigheden.

3

Instrumentbewaking op fouten, drift en gebruikersimpact.

4

Bereid rollback- en incidentresponspaden voor voordat u gaat schalen.

Blijf verkennen

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.

Start quiz

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

Next guide

Differentiële privacy

Frequently asked questions

What is PagedAttention and vLLM?

PagedAttention is een geheugenbeheertechniek die de aandachtscache van een taalmodel opslaat in kleine herbruikbare blokken in plaats van in één groot aaneengesloten stuk. Het drijft vLLM aan, een open-source-serving-engine die het aantal verzoeken dat een enkele GPU kan verwerken dramatisch vergroot.

Wat slaat de 'KV-cache' op tijdens het genereren van tekst?

De KV-cache bevat sleutel- en waardevectoren voor elk voorafgaand token, waardoor het model de volledige context kan bekijken zonder deze elke stap opnieuw te berekenen.

Welk besturingssysteemconcept inspireerde PagedAttention?

PagedAttention leent virtuele geheugenpaging: de KV-cache wordt opgesplitst in pagina's van vaste grootte die overal kunnen staan, in kaart gebracht door een bloktabel.

Welk probleem met traditionele KV-cachetoewijzing lost PagedAttention op?

Het reserveren van één grote aaneengesloten plaat per verzoek, op maat gemaakt voor de maximale lengte, verspilde enorme hoeveelheden GPU-geheugen. Paging wijst op verzoek kleine blokken toe, waardoor verspilling wordt verminderd.

Hoe zorgt PagedAttention ervoor dat meerdere uitgangen geheugen delen voor een gemeenschappelijke prompt?

Identieke voorvoegsels (gedeelde aanwijzingen of bundelzoekvertakkingen) verwijzen naar dezelfde fysieke KV-pagina's en worden alleen gekopieerd wanneer een vertakking afwijkt.

Waar zijn vLLM en PagedAttention oorspronkelijk ontwikkeld?

vLLM en het PagedAttention-algoritme kwamen uit UC Berkeley in een artikel uit 2023 en werden al snel een veelgebruikte open-source-serving-engine.