Fink: Schlüssel-Wert-Cache-Komprimierung unter Verwendung von Vorgaben
Finch: Prompt-guided Key-Value Cache Compression
July 31, 2024
Autoren: Giulio Corallo, Paolo Papotti
cs.AI
Zusammenfassung
Jüngste Anwendungen großer Sprachmodelle, wie die abrufgestützte Generierung und Chatbots, haben zu einem gesteigerten Bedarf an der Verarbeitung längerer Eingabekontexte geführt. Diese Anforderung wird jedoch durch inhärente Einschränkungen beeinträchtigt. Architektonisch gesehen sind Modelle durch ein während des Trainings definiertes Kontextfenster eingeschränkt. Darüber hinaus erfordert die Verarbeitung umfangreicher Texte erheblichen GPU-Speicher. Wir schlagen einen neuartigen Ansatz namens Finch vor, um den Eingabekontext zu komprimieren, indem wir die vortrainierten Modellgewichte der Selbst-Aufmerksamkeit nutzen. Anhand einer Eingabeaufforderung und eines langen Textes identifiziert Finch iterativ die relevantesten Schlüssel (K) und Wert (V)-Paare über Textabschnitte, die auf der Eingabeaufforderung basieren. Nur solche Paare werden im KV-Cache gespeichert, der letztendlich innerhalb des durch das Kontextfenster begrenzten Raums eine komprimierte Version des langen Textes enthält. Unser Vorschlag ermöglicht es Modellen, auch bei hoher Kompression (bis zu 93-fach) große Eingaben zu verarbeiten, während die semantische Integrität ohne die Notwendigkeit einer Feinabstimmung erhalten bleibt.
English
Recent large language model applications, such as Retrieval-Augmented
Generation and chatbots, have led to an increased need to process longer input
contexts. However, this requirement is hampered by inherent limitations.
Architecturally, models are constrained by a context window defined during
training. Additionally, processing extensive texts requires substantial GPU
memory. We propose a novel approach, Finch, to compress the input context by
leveraging the pre-trained model weights of the self-attention. Given a prompt
and a long text, Finch iteratively identifies the most relevant Key (K) and
Value (V) pairs over chunks of the text conditioned on the prompt. Only such
pairs are stored in the KV cache, which, within the space constrained by the
context window, ultimately contains a compressed version of the long text. Our
proposal enables models to consume large inputs even with high compression (up
to 93x) while preserving semantic integrity without the need for fine-tuning.Summary
AI-Generated Summary