Technische GIDS

KV-cache-optimalisatie

De KV-cache slaat de sleutels en waarden op die een transformator al heeft berekend, zodat het werk niet voor elk nieuw token opnieuw moet worden uitgevoerd, maar het kan wel oplopen tot gigabytes.

2 min readLaatst bijgewerkt

Overzicht

KV cache optimization shrinks and manages that memory so models serve longer contexts to more users at once.

Diepe duik

In een transformator zorgt elk nieuw token voor alle voorgaande tokens via de aandachtssleutels (K) en waarden (V). Het opnieuw berekenen van K en V voor de hele reeks bij elke stap zou kwadratisch en verspillend zijn, dus modellen cachen ze: de KV-cache. Het nadeel is de grootte. De cache groeit lineair met de reekslengte, batchgrootte, lagen en heads, zodat een verzoek met een lange context meer GPU-geheugen kan verbruiken dan het model zelf weegt. Optimalisatie pakt dit vanuit verschillende invalshoeken aan: wisselbaar geheugen (vLLM's PagedAttention) slaat de cache op in niet-aaneengesloten blokken om fragmentatie te elimineren en delen mogelijk te maken; kwantisering slaat K en V op in 8-bit of 4-bit; en architecturale veranderingen zoals Grouped-Query Attention (GQA) en Multi-Query Attention (MQA) zorgen ervoor dat veel queryheads minder sleutel/waarde-heads delen, waardoor de cachegrootte bij de bron wordt verminderd.

Technisch inzicht

PagedAttention leent paging van virtueel geheugen van besturingssystemen: de cache leeft in blokken van vaste grootte die in kaart zijn gebracht via een opzoektabel, dus verzoeken gebruiken alleen de blokken die ze nodig hebben en identieke voorvoegsels (zoals een gedeelde systeemprompt) kunnen naar dezelfde blokken verwijzen. Multi-head Latent Attention (MLA), gebruikt in DeepSeek-modellen, comprimeert K en V in een kleine gedeelde latente vector, waardoor het geheugen dramatisch wordt verminderd en de nauwkeurigheid behouden blijft.

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 KV-cache-optimalisatie

Naarmate contextvensters zich uitstrekken tot honderdduizenden of miljoenen tokens, wordt de KV-cache de dominante kostenpost. Verwacht agressieve cachecompressie en -uitzetting (waardoor tokens met weinig aandacht worden verwijderd), het standaard delen van voorvoegsels tussen verzoeken, het overbrengen van koude cache naar CPU of NVMe, en architecturen zoals MLA en GQA worden standaard. Cachebeheer zal steeds meer gaan lijken op een volledige geheugenhiërarchie met lagen en slimme prefetching.

Implementatie in de echte wereld

vLLM's PagedAttention bedient vele gelijktijdige chatsessies door KV-blokken in te pakken zonder geheugenfragmentatie

Aandacht voor gegroepeerde zoekopdrachten in Llama-modellen die de KV-cachegrootte verkleinen, zodat langere contexten in het GPU-geheugen passen

Kwantisering van de KV-cache naar 8-bit (KV8) om het cachegeheugen ruwweg te halveren tijdens het samenvatten van lange documenten

Voorvoegselcaching die de KV-blokken van een gedeelde systeemprompt hergebruikt voor duizenden API-verzoeken

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 KV Cache Optimization 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

Frequently asked questions

What is KV Cache Optimization?

De KV-cache slaat de sleutels en waarden op die een transformator al heeft berekend, zodat het werk niet voor elk nieuw token opnieuw moet worden uitgevoerd, maar het kan wel oplopen tot gigabytes. KV-cache-optimalisatie verkleint en beheert dat geheugen, zodat modellen langere contexten voor meer gebruikers tegelijk kunnen bedienen.

Wat slaat de KV-cache op en waarom?

Het cachen van sleutels en waarden van eerdere tokens voorkomt dat de aandachtsberekening voor elk nieuw token opnieuw moet worden uitgevoerd, waardoor tijd wordt bespaard.

Waarom kan de KV-cache een geheugenprobleem worden?

De cachegrootte wordt geschaald met de contextlengte en gelijktijdigheid, zodat lange verzoeken enorme hoeveelheden GPU-geheugen kunnen gebruiken.

Welk besturingssysteemconcept leent PagedAttention?

PagedAttention slaat de cache op in niet-aaneengesloten blokken met een vaste grootte die via een tabel in kaart zijn gebracht, net als bij OS-paging.

Hoe verminderen Grouped-Query en Multi-Query Attention de grootte van de KV-cache?

Het delen van sleutel/waardekoppen over meerdere querykoppen betekent dat er veel minder K- en V-vectoren moeten worden opgeslagen.

Wat is een voordeel van het delen van voorvoegsels in de KV-cache?

Een gedeelde systeemprompt produceert identieke KV-gegevens, zodat meerdere verzoeken naar dezelfde blokken kunnen verwijzen in plaats van deze te dupliceren.