ChatPaper.aiChatPaper

Quantização de Modelos de Linguagem de Grande Escala para Geração de Código: Uma Replicação Diferenciada

Quantizing Large Language Models for Code Generation: A Differentiated Replication

March 10, 2025
Autores: Alessandro Giagnorio, Antonio Mastropaolo, Saima Afrin, Massimiliano Di Penta, Gabriele Bavota
cs.AI

Resumo

Os Modelos de Linguagem de Grande Escala (LLMs) demonstraram uma capacidade impressionante na geração de código e, especificamente, na implementação automática de requisitos descritos em linguagem natural. A eficácia dos LLMs geralmente aumenta com seu tamanho: quanto maior o número de parâmetros treináveis do LLM, melhor sua capacidade de implementar código. No entanto, quando se trata de implantar geradores de código baseados em LLMs, modelos maiores apresentam desafios significativos relacionados à sua pegada de memória (e, consequentemente, de carbono). Um trabalho anterior de Wei et al. propôs aproveitar técnicas de quantização para reduzir a pegada de memória dos geradores de código baseados em LLMs sem degradar substancialmente sua eficácia. Em resumo, eles estudaram LLMs com até 16 bilhões de parâmetros, quantizando sua precisão de ponto flutuante de 32 bits para inteiro de 8 bits, mostrando um impacto limitado no desempenho da geração de código. Dado o ritmo acelerado em que as capacidades dos LLMs e as técnicas de quantização estão evoluindo, neste trabalho apresentamos uma replicação diferenciada do trabalho de Wei et al., na qual consideramos (i) por um lado, LLMs mais recentes e maiores relacionados a código, com até 34 bilhões de parâmetros; (ii) os avanços mais recentes em técnicas de quantização de modelos, que permitem levar a compressão ao nível extremo de 2 bits por parâmetro do modelo; e (iii) diferentes tipos de conjuntos de dados de calibração para orientar o processo de quantização, incluindo aqueles específicos para código. Nossa avaliação empírica revela que a nova fronteira para a quantização de LLMs é a precisão de 4 bits, resultando em uma redução média de 70% na pegada de memória em comparação com o modelo original, sem observar qualquer diminuição significativa no desempenho. Além disso, quando a quantização se torna ainda mais extrema (3 e 2 bits), um conjunto de dados de calibração específico para código ajuda a limitar a perda de desempenho.
English
Large Language Models (LLMs) have shown an impressive capability in code generation and, specifically, to automatically implement requirements described in natural language. The LLM effectiveness generally increases with its size: The higher the number of LLM's trainable parameters the better its ability to implement code. However, when it comes to deploying LLM-based code generators, larger LLMs pose significant challenges related to their memory (and, consequently, carbon) footprint. A previous work by Wei et al. proposed to leverage quantization techniques to reduce the memory footprint of LLM-based code generators without substantially degrading their effectiveness. In short, they studied LLMs featuring up to 16B parameters, quantizing their precision from floating point 32 bits down to int 8 bits and showing their limited impact on code generation performance. Given the fast pace at which LLM capabilities and quantization techniques are evolving, in this work we present a differentiated replication of the work by Wei et al. in which we consider (i) on the one side, more recent and larger code-related LLMs, of up to 34B parameters; (ii) the latest advancements in model quantization techniques, which allow pushing the compression to the extreme quantization level of 2 bits per model parameter and; (iii) different types of calibration datasets to guide the quantization process, including code-specific ones. Our empirical evaluation reveals that the new frontier for LLM quantization is 4-bit precision, resulting in an average memory footprint reduction of 70% compared to the original model without observing any significant decrease in performance. Additionally, when the quantization becomes even more extreme (3 and 2 bits), a code-specific calibration dataset helps to limit the loss of performance.

Summary

AI-Generated Summary

PDF82March 13, 2025