Quantizzazione del modello linguistico di grandi dimensioni per una messa a punto e un’inferenza convenienti sul tuo computer
Man mano che i modelli linguistici di grandi dimensioni (LLM) sono diventati più grandi con sempre più parametri, sono state proposte anche nuove tecniche per ridurre l’utilizzo della memoria.
Uno dei metodi più efficaci per ridurre le dimensioni del modello in memoria è quantizzazione. Puoi vedere la quantizzazione come una tecnica di compressione per LLM. In pratica, l’obiettivo principale della quantizzazione è ridurre la precisione dei pesi dell’LLM, in genere da 16 bit a 8 bit, 4 bit o anche 3 bit, con un degrado minimo delle prestazioni.
Esistono due metodi di quantizzazione popolari per gli LLM: GPTQ e bitsandbytes.
In questo articolo, discuto quali sono le principali differenze tra questi due approcci. Entrambi hanno i propri vantaggi e svantaggi che li rendono adatti a diversi casi d’uso. Presento un confronto tra l’utilizzo della memoria e la velocità di inferenza utilizzando Llama 2. Discuto anche le loro prestazioni sulla base di esperimenti di lavori precedenti.
Nota: se vuoi saperne di più sulla quantizzazione, ti consiglio di leggere questa eccellente introduzione di Maxime Labonne:
GPTQ (Frantar et al., 2023) è stato applicato per la prima volta ai modelli pronti per la distribuzione. In altre parole, una volta che il modello sarà completamente messo a punto, verrà applicato GPTQ per ridurne le dimensioni.
GPTQ può ridurre la precisione del peso a 4 bit o 3 bit. In pratica, GPTQ viene utilizzato principalmente per la quantizzazione a 4 bit. 3-bit si è dimostrato molto instabile (Dettmers e Zettlemoyer, 2023).
Quantizza senza caricare l’intero modello in memoria. Invece, GPTQ carica e quantizza il modulo LLM per modulo. La quantizzazione richiede anche un piccolo campione di dati per la calibrazione che può richiedere più di…