Ce înseamnă Cuantizarea Modelelor (Quantization)
În BF16 sau FP16, fiecare parametru ocupă 2 octeți, deci un model de 70 de miliarde de parametri are nevoie de aproximativ 140 GB doar pentru ponderi. Pe 4 biți, aceleași ponderi ocupă un sfert, aproximativ 35 GB, plus mici costuri pentru factorii de scalare.
Cuantizarea înseamnă pierdere de precizie. Cât de mult afectează calitatea depinde de metodă, de numărul de biți și de model, deci trebuie măsurat pe sarcinile tale.
Cum funcționează
Ponderile sunt mapate pe un set mic de valori, cu factori de scalare calculați pe blocuri de ponderi.
GPTQ (Frantar et al., 2022) folosește informație de ordinul doi și a cuantizat modele de 175B la 3–4 biți în aproximativ patru ore GPU, cu pierdere de acuratețe neglijabilă. AWQ (Lin et al., 2023) pornește de la observația că protejarea a 1% din ponderi, alese după activări, reduce mult eroarea.
GGUF este formatul de fișier al llama.cpp. Tipurile lui au un număr precis de biți pe pondere: de exemplu Q4_K are 4,5 biți pe pondere (documentația Hugging Face).
Pe înțelesul tuturor
Seamănă cu salvarea unei fotografii ca JPEG în loc de RAW: fișierul ocupă mult mai puțin, iar la o compresie moderată diferența se observă greu; la compresie puternică apar artefacte.
Exemplu
OpenAI a publicat gpt-oss-120b cu ponderile MoE cuantizate în MXFP4 din post-antrenare, ca modelul să încapă pe un singur GPU de 80 GB, iar gpt-oss-20b în 16 GB de memorie (model card-ul de pe Hugging Face).
QLoRA folosește tipul NF4 pe 4 biți pentru modelul de bază în timpul fine-tuning-ului.
De reținut
- Memoria pentru ponderi ≈ numărul de parametri × biți pe pondere / 8; la rulare se adaugă KV cache și activări.
- Cu cât sunt mai puțini biți, cu atât crește riscul de degradare a calității.
Nu confunda
- Cuantizare vs. distilare: cuantizarea păstrează modelul și îi reduce precizia; distilarea antrenează un model nou, mai mic.
Termeni înrudiți
- LoRA și QLoRA: Metodă de fine-tuning care antrenează doar două matrice mici atașate straturilor modelului, cu mult mai puțină memorie decât fine-tuning-ul complet.
- KV Cache (Key-Value Caching): Memoria în care modelul păstrează vectorii Key și Value ai tokenilor deja procesați, ca fiecare token nou să fie generat fără recalcularea întregului istoric.
- Decodarea Speculativă (Speculative Decoding): Tehnică de accelerare în care un model mic ghicește următorii tokeni, iar modelul mare îi verifică în paralel, cu aceeași distribuție a rezultatului.
- Distilarea modelelor (Knowledge Distillation): Tehnica prin care un model mic învață din răspunsurile sau probabilitățile unui model mare, ca să păstreze o parte din calitate la un cost de rulare mai mic.
- Mixture of Experts (MoE): Arhitectură în care fiecare token trece doar prin câțiva dintre experții unui strat, deci modelul are mulți parametri în total, dar folosește puțini pentru fiecare token.
Întrebări & Discuții: Cuantizarea Modelelor (Quantization)
Ai o întrebare despre Cuantizarea Modelelor (Quantization) sau ai descoperit un truc, prompt sau fragment de cod util? Distribuie-l cu ceilalți membri ai comunității!
Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau resurse pentru această pagină. Dacă ai testat un prompt sau ai un snippet util, adaugă-l mai jos pentru comunitate.