Che cosa è la quantizzazione nei modelli AI LLM?

La quantizzazione in un LLM (Large Language Model) è una tecnica di ottimizzazione che riduce la precisione dei numeri utilizzati per rappresentare i parametri del modello (pesi e attivazioni), allo scopo di diminuire la dimensione del modello e migliorare l’efficienza computazionale senza sacrificare eccessivamente le prestazioni.

A cosa serve?

  1. Riduzione della memoria:
    • I modelli LLM moderni hanno miliardi di parametri (spesso in formato float32, 4 byte per parametro).
    • Quantizzando a float16 (2 byte) o int8 (1 byte), si riduce drasticamente la memoria richiesta.
  2. Inferenza più veloce:
    • Operazioni matematiche con numeri a bassa precisione sono più veloci su hardware moderno (GPU/TPU).
  3. Efficienza energetica:
    • Minore precisione significa meno operazioni in virgola mobile, riducendo il consumo energetico.

Tipi di quantizzazione

  1. Quantizzazione statica:
    • I pesi sono convertiti a precisione inferiore prima dell’inferenza (es. da float32 a int8).
    • Spesso richiede un “calibrazione” su un dataset per adattare i range.
  2. Quantizzazione dinamica:
    • La conversione avviene al volo durante l’inferenza, adattandosi ai dati di input.
  3. Quantizzazione post-training (PTQ):
    • Applicata dopo l’addestramento, senza ulteriore fine-tuning.
  4. Quantizzazione-aware training (QAT):
    • Il modello viene addestrato tenendo conto della quantizzazione futura, migliorando la robustezza.

Esempio pratico

  • Un modello come LLaMA-2 (70B parametri) in float32 occupa ~280GB.
  • Quantizzato a int4 (4 bit), può scendere a ~35GB, rendendolo eseguibile su una singola GPU consumer.

Svantaggi

  • Perdita di precisione: Potenziale degradazione delle prestazioni, soprattutto in task complessi.
  • Overhead di conversione: Alcune tecniche richiedono calibrazione o fine-tuning.

Librerie per la quantizzazione

  • GGML (per esecuzione su CPU, usata in strumenti come llama.cpp)
  • TensorRT (NVIDIA)
  • Hugging Face Optimum (integrazione con Transformers)
  • Bitsandbytes (quantizzazione 8/4-bit per GPU)

Conclusioni

La quantizzazione è essenziale per democratizzare l’uso degli LLM, permettendo l’esecuzione su hardware limitato (laptop, smartphone) senza costi eccessivi in termini di prestazioni.

Rispondi