Als nächstesNächster Leitfaden
KV-Cache-Optimierung
Technisch
Sprach-KI-GUIDE
Der KV-Cache speichert die Schlüssel- und Wertvektoren, die ein Transformator bereits für frühere Token berechnet hat, sodass er sie nicht für jedes neue Wort, das er generiert, neu berechnen muss.
Hören Sie sich diesen Leitfaden anKI-erzählt · ~2 min
It is the single biggest reason text generation is fast — and the main thing eating your GPU memory during long conversations.
Transformer generieren Text jeweils für ein Token, und die Aufmerksamkeitsschicht jedes neuen Tokens muss mit der aller vorherigen Token verglichen werden. Der Aufmerksamkeitsmechanismus verwandelt jedes Token in einen Abfrage-, Schlüssel- und Wertvektor. Ohne Caching würde die Generierung der Token-Nummer 1.000 bedeuten, dass Schlüssel und Werte für alle 999 früheren Token bei jedem Schritt neu berechnet werden müssten – quadratische, verschwenderische Arbeit. Der KV-Cache speichert diese Schlüssel- und Wertvektoren nach der ersten Berechnung und verwendet sie wieder, sodass bei jedem neuen Schritt nur Vektoren für das jeweils neueste Token berechnet und der gespeicherte Cache überwacht wird. Dadurch sinken die Kosten pro Token von der Skalierung mit der Sequenzlänge auf annähernd konstante Werte. Der Kompromiss ist der Speicher: Der Cache wächst linear mit der Kontextlänge, der Anzahl der Ebenen und den Aufmerksamkeitsköpfen und wird bei der Bereitstellung von langen Kontexten oft zum dominierenden Speicherverbraucher.
Beschleunigen Sie Chatbot-Antworten durch die Wiederverwendung zwischengespeicherter Schlüssel/Werte aus dem Konversationsverlauf, anstatt sie jede Runde neu zu verarbeiten.
Präfix-Caching, das den Cache für eine lange Systemaufforderung für viele Benutzer gemeinsam nutzt und so Kosten und Latenz senkt.
PagedAttention von vLLM verwaltet den KV-Cache in Blöcken, um viele gleichzeitige Anforderungen auf einer GPU effizient zu bedienen.
Quantisierung des KV-Cache auf eine geringere Präzision, um längere Kontexte in den begrenzten GPU-Speicher zu integrieren.
Da sich Kontextfenster auf Hunderttausende von Tokens erstrecken, wird der KV-Cache zum zentralen Engpass, sodass Innovationen heftig sind: Cache-Quantisierung auf 8 oder 4 Bits, Räumungsrichtlinien, die Token mit geringer Bedeutung verwerfen, gemeinsame Nutzung von Präfixen über mehrere Anforderungen hinweg und Auslagerung auf CPU oder Festplatte. Architektonische Veränderungen wie die latente Aufmerksamkeit mehrerer Köpfe komprimieren den Cache selbst. Erwarten Sie eine weitere gemeinsame Gestaltung von Aufmerksamkeitsvarianten und Speichersystemen, die darauf abzielen, sehr lange Kontexte kostengünstig und mit hohem Durchsatz zu bedienen.
Kostenloser Newsletter
Drei verifizierte KI-Geschichten jeden Werktagmorgen, in einfachem Englisch geschrieben. Für immer kostenlos, keine Werbung.
Eine E‑Mail jeden Werktag. Abmelden mit einem Klick. Wir verkaufen oder teilen Ihre Adresse nie.
Testen Sie sich selbst
Sofortiges Feedback zu jeder Antwort und ein teilbares Zertifikat mit verifizierbarer ID, sobald Sie einen Kurs bestanden haben.
Unterstützen Sie kostenlose KI-Bildung. AI Understanding ist eine 501(c)(3) gemeinnützige Organisation – keine Werbung, keine Paywall, nie. Machen Sie eine Spende
Der KV-Cache speichert die Schlüssel- und Wertvektoren, die ein Transformator bereits für frühere Token berechnet hat, sodass er sie nicht für jedes neue Wort, das er generiert, neu berechnen muss. Dies ist der Hauptgrund dafür, dass die Textgenerierung schnell ist – und der Hauptgrund dafür, dass bei langen Gesprächen Ihr GPU-Speicher beansprucht wird.
Der KV-Cache speichert die Schlüssel- und Wertvektoren früherer Token, sodass die Aufmerksamkeit sie wiederverwenden kann, anstatt sie neu zu berechnen.
The cache reuses keys and values computed for earlier tokens instead of rebuilding them at every decode step. The new query still attends over cached positions, so attention work and cache memory continue to grow with context length.
Der Cache wächst mit der Sequenzlänge, den Ebenen und den Köpfen und wird häufig zum Hauptverbraucher des GPU-Speichers bei der Bereitstellung langer Kontexte.
Durch gruppierte Abfragen und die Aufmerksamkeit mehrerer Abfragen können mehrere Abfrageköpfe weniger Schlüssel-/Wertsätze gemeinsam nutzen, wodurch der Cache erheblich verkleinert wird.
Prefill füllt den Cache mit dem K/V des Prompts; Bei der Dekodierung wird bei jedem Schritt ein neues Token-K/V angehängt und der Cache erneut überprüft.
Lerne weiter
Weitere Leitfäden zu diesem Thema ausgewählt
Als nächstesNächster Leitfaden
KV-Cache-Optimierung
Technisch