Finch : Compression du cache clé-valeur guidée par des prompts
Finch: Prompt-guided Key-Value Cache Compression
July 31, 2024
Auteurs: Giulio Corallo, Paolo Papotti
cs.AI
Résumé
Les applications récentes des grands modèles de langage, telles que la génération augmentée par récupération et les chatbots, ont accru le besoin de traiter des contextes d'entrée plus longs. Cependant, cette exigence est entravée par des limitations inhérentes. Sur le plan architectural, les modèles sont contraints par une fenêtre de contexte définie lors de l'entraînement. De plus, le traitement de textes étendus nécessite une mémoire GPU substantielle. Nous proposons une nouvelle approche, Finch, pour compresser le contexte d'entrée en exploitant les poids pré-entraînés du mécanisme d'auto-attention. Étant donné une instruction et un texte long, Finch identifie itérativement les paires de Clés (K) et de Valeurs (V) les plus pertinentes sur des segments du texte, conditionnées par l'instruction. Seules ces paires sont stockées dans le cache KV, qui, dans l'espace limité par la fenêtre de contexte, contient finalement une version compressée du texte long. Notre proposition permet aux modèles de consommer des entrées volumineuses même avec un taux de compression élevé (jusqu'à 93x) tout en préservant l'intégrité sémantique, sans nécessiter de réglage fin.
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