KV-Cache

Speichermechanismus in Sprachmodellen, der schon berechnete Aufmerksamkeits-Werte zwischenspeichert und so die Generierung neuer Tokens deutlich beschleunigt.

Der KV-Cache (Key-Value-Cache) ist eine zentrale Optimierung in der Inferenz großer Sprachmodelle. Bei jedem neu generierten Token berechnet ein Transformer normalerweise Aufmerksamkeit auf alle vorherigen Tokens, eine quadratisch wachsende Aufgabe. Der KV-Cache speichert die dafür benötigten "Key" und "Value"-Tensoren der bereits gesehenen Tokens, sodass sie nicht wieder neu berechnet werden müssen.

Mit KV-Cache wird die Generierung jedes weiteren Tokens dramatisch schneller, da nur noch die neuen Berechnungen für das aktuelle Token erfolgen müssen. Der Preis: Der Cache braucht beträchtlich Speicher, der mit Kontextlänge, Modellgröße und Batch-Größe wächst, er ist oft der dominante GPU-Speicherverbrauch bei langen Kontexten.

Aktuelle Forschung beschäftigt sich daher intensiv mit Optimierungen rund um den KV-Cache: Verfahren wie Multi-Query Attention, Grouped-Query Attention, Kompression, Sliding-Window-Attention oder Paged Attention (vLLM) reduzieren Speicherbedarf und steigern den Durchsatz. Für Anbieter von LLM-APIs ist eine effiziente KV-Cache-Strategie wesentlich für Latenz, Kosten und Wettbewerbsfähigkeit.

Verwandte Begriffe