ReALLM: A general framework for LLM compression and fine-tuning
Louis Leconte, Lisa Bedin, Van Minh Nguyen, Eric Moulines
TL;DR
ReALLM tackles the memory bottleneck of large language models by representing pretrained weights as a high-precision residual plus a vector-quantized latent learned by a residual autoencoder. Only the residual and the autoencoder scales are fine-tuned, enabling efficient training on modest hardware while preserving a compact, decoder-based reconstruction of each weight matrix. By adapting the autoencoder shape to per-matrix patterns and using block-wise/ end-to-end fine-tuning, ReALLM achieves state-of-the-art performance at a 3-bit budget without training and strong results at 2 bits with minimal calibration data. The approach unifies post-training quantization and finetuning under a single framework, offering practical pathways for deploying and updating large LLMs on memory-constrained devices.
Abstract
We introduce ReALLM, a novel approach for compression and memory-efficient adaptation of pre-trained language models that encompasses most of the post-training quantization and fine-tuning methods for a budget of <4 bits. Pre-trained matrices are decomposed into a high-precision low-rank component and a vector-quantized latent representation (using an autoencoder). During the fine-tuning step, only the low-rank components are updated. Our results show that pre-trained matrices exhibit different patterns. ReALLM adapts the shape of the encoder (small/large embedding, high/low bit VQ, etc.) to each matrix. ReALLM proposes to represent each matrix with a small embedding on $b$ bits and a neural decoder model $\mathcal{D}_φ$ with its weights on $b_φ$ bits. The decompression of a matrix requires only one embedding and a single forward pass with the decoder. Our weight-only quantization algorithm yields the best results on language generation tasks (C4 and WikiText-2) for a budget of $3$ bits without any training. With a budget of $2$ bits, ReALLM achieves state-of-the art performance after fine-tuning on a small calibration dataset.
