Compressing Many-Shots in In-Context Learning
Devvrit Khatri, Pranamya Kulkarni, Nilesh Gupta, Yerram Varun, Liqian Peng, Jay Yagnik, Praneeth Netrapalli, Cho-Jui Hsieh, Alec Go, Inderjit S Dhillon, Aditya Kusupati, Prateek Jain
TL;DR
This paper addresses the memory and compute costs of long-context many-shot In-Context Learning (ICL) by introducing MemCom, a layer-wise compression framework that maps a long prompt of length $t$ to $m$ memory tokens ($m<t$) across transformer layers. MemCom employs two compressor stacks (Source-LLM and Memory-LLM) to generate per-layer compressed representations that the frozen Target-LLM attends to during inference, reducing KV-cache storage and attention computation. A two-phase training procedure on large pretraining data yields a strong compressor, with MemCom achieving robust performance across compression ratios from $3\times$ to $8\times$ on five classification tasks with large label spaces, often outperforming ICAE and other baselines, especially at high compression. The approach enables practical edge deployment and cloud-edge hybrid setups by allowing offline compression of demonstrations and inference on compressed memory, though it incurs substantial compressor training costs and is best demonstrated on classification benchmarks where long-context benefits are most pronounced.
Abstract
Large Language Models (LLMs) have been shown to be able to learn different tasks without explicit finetuning when given many input-output examples / demonstrations through In-Context Learning (ICL). Increasing the number of examples, called ``shots'', improves downstream task performance but incurs higher memory and computational costs. In this work, we study an approach to improve the memory and computational efficiency of ICL inference by compressing the many-shot prompts. Given many shots comprising t tokens, our goal is to generate a m soft-token summary, where m < t. We first show that existing prompt compression methods are ineffective for many-shot compression, and simply using fewer shots as a baseline is surprisingly strong. To achieve effective compression, we find that: (a) a stronger compressor model with more trainable parameters is necessary, and (b) compressing many-shot representations at each transformer layer enables more fine-grained compression by providing each layer with its own compressed representation. Based on these insights, we propose MemCom, a layer-wise compression method. We systematically evaluate various compressor models and training approaches across different model sizes (2B and 7B), architectures (Gemma and Mistral), many-shot sequence lengths (3k-6k tokens), and compression ratios (3x to 8x). MemCom outperforms strong baselines across all compression ratios on multiple classification tasks with large label sets. Notably, while baseline performance degrades sharply at higher compression ratios, often by over 20-30%, MemCom maintains high accuracy with minimal degradation, typically dropping by less than 10%.
