Ada-KV: Optimizing KV Cache Eviction by Adaptive Budget Allocation for Efficient LLM Inference
Feng, Lv, Cao et al.
Large Language Models have excelled in various domains but face efficiency challenges due to the growing Key-Value (KV) cache required for long-sequence inference. Recent efforts aim to reduce KV cache size by evicting vast non-critical cache elements during runtime while preserving generation quality. However, these methods typically allocate compression budgets uniformly across all attention heads, ignoring the unique attention patterns of each head. In this paper, we establish a theoretical loss upper bound between pre- and post-eviction attention output, explaining the optimization target of prior cache eviction methods, while guiding the optimization of adaptive budget allocation. Base on this, we propose {\it Ada-KV}, the first head-wise adaptive budget allocation strategy. It offers plug-and-play benefits, enabling seamless integration with prior cache eviction methods. Extensive evaluations on 13 datasets from Ruler and 16 datasets from LongBench, all conducted under both question-aware and question-agnostic scenarios, demonstrate substantial quality improvements over existing methods. Our code is available at https://github.com/FFY0/AdaKV.
academic
Ada-KV: Optimierung der KV-Cache-Eviction durch adaptive Budgetallokation für effiziente LLM-Inferenz
Große Sprachmodelle (LLMs) zeigen hervorragende Leistungen in verschiedenen Bereichen, sehen sich jedoch aufgrund der wachsenden Key-Value-(KV-)Cache-Anforderungen bei der Inferenz langer Sequenzen mit Effizienzherausforderungen konfrontiert. Neuere Forschungen reduzieren die KV-Cache-Größe durch Eviction großer Mengen nicht-kritischer Cache-Elemente zur Laufzeit, während die Generierungsqualität erhalten bleibt. Diese Methoden verteilen jedoch typischerweise das Kompressionbudget gleichmäßig über alle Aufmerksamkeitsköpfe und ignorieren die einzigartigen Aufmerksamkeitsmuster jedes Kopfes. Dieses Papier etabliert eine theoretische Verlustoberschranke zwischen den Aufmerksamkeitsausgaben vor und nach der Eviction, erklärt die Optimierungsziele bisheriger Cache-Eviction-Methoden und leitet die Optimierung adaptiver Budgetallokation an. Darauf aufbauend präsentieren die Autoren Ada-KV, die erste Strategie zur adaptiven Budgetallokation auf Kopfebene. Diese Methode bietet Plug-and-Play-Vorteile und lässt sich nahtlos in bestehende Cache-Eviction-Methoden integrieren.
Mit der kontinuierlichen Zunahme der von großen Sprachmodellen verarbeiteten Sequenzlängen (z. B. GPT unterstützt 128K, Claude3 unterstützt 200K, Gemini-Pro-1.5 unterstützt 2M Token) wächst der Speicherbedarf des KV-Cache exponentiell. Für ein 8B-Parameter-LLM kann die Verarbeitung einer einzelnen 2M-Token-Sequenz bis zu 256GB Cache erfordern, was die GPU-Speichereffizienz und die Rechenausführungseffizienz erheblich beeinträchtigt.
Bestehende Cache-Eviction-Methoden lassen sich hauptsächlich in zwei Kategorien einteilen:
Schiebefenster-Eviction-Methoden: Behalten einfach die anfänglichen und neuesten Cache-Elemente bei, führen aber zu erheblicher Qualitätsverschlechterung
Top-k-Eviction-Methoden: Wählen kritische Cache-Elemente basierend auf Aufmerksamkeitsgewichten aus, verteilen aber das Budget gleichmäßig über alle Aufmerksamkeitsköpfe
Das Kernproblem besteht darin, dass bestehende Methoden die einzigartigen Merkmale verschiedener Aufmerksamkeitsköpfe ignorieren: Einige Köpfe weisen konzentrierte Aufmerksamkeitsmuster auf, während andere Köpfe eine stärker verteilte Aufmerksamkeit haben.
Durch die Analyse des Modells Llama-3.1-8B-Instruct entdeckten die Autoren, dass die meisten Aufmerksamkeitsköpfe nur einen kleinen Cache-Anteil (z. B. Top 5%) benötigen, um fast alle Aufmerksamkeitsgewichte zu bewahren, während verteilte Köpfe einen größeren Cache-Anteil erfordern. Dieses ungleichmäßige Aufmerksamkeitskonzentrationsmuster bietet eine theoretische Grundlage für adaptive Budgetallokation.
Adaptive Budgetallokationsstrategie: Präsentation der ersten Strategie zur adaptiven Budgetallokation auf Kopfebene Ada-KV, die das Budget dynamisch basierend auf den einzigartigen Aufmerksamkeitsmustern jedes Aufmerksamkeitskopfes anpasst
Theoretischer Rahmen: Etablierung eines theoretischen Rahmens für Cache-Eviction, Definition des Eviction-Verlusts und Ableitung seiner Oberschranke, Erklärung der Optimierungsziele bestehender Methoden und Anleitung des Ada-KV-Designs
Plug-and-Play-Kompatibilität: Ada-KV besitzt Plug-and-Play-Eigenschaften und lässt sich nahtlos in bestehende Cache-Eviction-Methoden integrieren, wobei die Recheneffizienz durch effiziente CUDA-Kernel-Implementierung erhalten bleibt
Umfassende experimentelle Validierung: Umfassende Bewertung auf 29 Datensätzen von Ruler und LongBench mit signifikanten Verbesserungen sowohl in frage-bewussten als auch frage-unabhängigen Szenarien
Gegeben eine Multi-Head-Self-Attention-Schicht: Wählen Sie unter Budgetbeschränkung die beizubehalten KV-Cache-Elemente so aus, dass der Verlust zwischen der Aufmerksamkeitsausgabe nach und vor der Eviction minimiert wird.
Eingabe: Gesamtbudget B, Aufmerksamkeitsgewichte aller Köpfe {A_i}
Ausgabe: Allokiertes Budget {B_i^*}
1. Verkettung der Aufmerksamkeitsgewichte aller Köpfe: A = Cat({A_i})
2. Auswahl der Top-B-Gewichte aus A: Top-k(A, k=B)
3. Zählung der ausgewählten Gewichte pro Kopf: {f_i}
4. Festlegung des allozierten Budgets: {B_i^* = f_i}
Ada-KV präsentiert erstmals eine Strategie zur adaptiven Budgetallokation auf Kopfebene, die die Leistung bestehender Cache-Eviction-Methoden erheblich verbessert
Die theoretische Analyse etabliert einen strengen Rahmen für Cache-Eviction und leitet den Algorithmusdesign an
Das frage-unabhängige Kompressionsszenario offenbart Einschränkungen bestehender Methoden, die mehr Aufmerksamkeit verdienen
Solide theoretische Beiträge: Etablierung eines vollständigen theoretischen Rahmens mit klarer Logik von der Verlustoberschranken-Ableitung bis zum Algorithmusdesign
Einfache und effektive Methode: Prägnanter, leicht verständlicher Algorithmus mit Plug-and-Play-Eigenschaften für einfache Übernahme
Umfassende und gründliche Experimente: Umfassende Bewertung auf 29 Datensätzen einschließlich des vernachlässigten frage-unabhängigen Szenarios
Hoher praktischer Wert: Bereits von mehreren nachfolgenden Arbeiten übernommen, was Wert und Einfluss der Methode beweist
Lücke zwischen Theorie und Praxis: Obwohl die Verlustoberschranke theoretisch minimiert wird, kann der tatsächliche Verlust nicht garantiert minimiert werden
Hyperparameter-Empfindlichkeit: Die Auswahl des Sicherheitsschutzparameters α erfordert empirische Feinabstimmung
Erweiterungsbeschränkungen: Derzeit wird nur die Budgetallokation innerhalb einzelner Schichten berücksichtigt
Bewertungsbeschränkungen: Hauptsächlich auf mittleren Modellen bewertet, Effektivität bei großen Modellen bleibt zu überprüfen
Benchmarks für lange Sequenzen (Ruler, LongBench usw.)
Gesamtbewertung: Dies ist ein hochqualitatives Forschungspapier, das ein gutes Gleichgewicht zwischen theoretischen Beiträgen und praktischem Wert erreicht. Die Ada-KV-Methode ist einfach und effektiv, die theoretische Analyse ist streng und die experimentelle Validierung ist umfassend. Das Papier behebt nicht nur wichtige Einschränkungen bestehender Methoden, sondern bietet auch einen wertvollen Rahmen und Richtung für zukünftige Forschung.