Qu’est-ce que la quantization des modèles d’IA ? Guide complet des techniques (GPTQ, AWQ, GGUF) et formats de précision (INT8, INT4)
La quantization réduit la taille des modèles IA de 4 à 8 fois.
- PTQ : perte de qualité limitée à 3-5% en INT4.
- QAT : coût élevé, mais perte minimale (0,1%).
- GPTQ : référence open-source pour GPU NVIDIA.
- AWQ : gain de +0,5 à 1% vs GPTQ.
- NF4 : essentiel pour le fine-tuning QLoRA.
- Un modèle 70B passe de 140 Go à 35 Go en FP32.
Méthodes et techniques de quantization : GPTQ, AWQ, PTQ, QAT et NF4
| Technique | Précision cible | Qualité relative | Cas d’usage |
|---|---|---|---|
| PTQ | INT4 / INT8 | Perte 1-5% | Déploiement rapide |
| QAT | INT4 / INT8 | Perte ~0,1% | Production exigeante |
| GPTQ | INT4 / INT8 | Référence standard | GPU NVIDIA |
| AWQ | INT4 | +0,5-1% vs GPTQ | Précision maximale |
| NF4 | 4 bits | Perte 3-5% | Fine-tuning QLoRA |
Quantization post-entraînement (PTQ) et Quantization-Aware Training (QAT)
La PTQ quantifie un modèle déjà entraîné sans réentraînement. Sa mise en œuvre est simple et rapide. Le QAT simule la quantification pendant l’entraînement, ce qui coûte extrêmement cher en calcul. Le QAT limite la perte de qualité à environ 0,1%, contre 3-5% pour une PTQ en INT4. Pour un usage local sur GPU grand public, la PTQ reste le choix pragmatique : elle permet de réduire la taille d’un modèle de 4 à 8 fois en quelques minutes.
GPTQ, AWQ et NF4 : les techniques de quantification par couche
GPTQ domine l’écosystème open-source. Elle convertit les poids d’un modèle FP32 vers INT4 ou INT8, couche par couche, en minimisant l’erreur quadratique. AWQ est une alternative plus récente qui protège les canaux de poids les plus importants : elle offre un gain de précision de +0,5 à 1% sur les benchmarks par rapport à GPTQ, à coût de calcul égal.
NF4 (4-bit Normal Float) repose sur une distribution quantile : les 16 valeurs possibles (-8 à 7) sont réparties selon la distribution statistique des poids. Cette technique est au cœur de QLoRA, qui permet de fine-tuner un modèle quantisé avec des résultats proches d’un entraînement complet. Pour un modèle de 70 milliards de paramètres, l’adoption de ces méthodes fait passer le poids en FP32 de 140 Go à environ 35 Go en INT4 compatible avec une RTX 4090 et ses 24 Go de VRAM pour l’inférence.
Formats de précision numérique : FP32, FP16, BF16, INT8 et INT4

Le choix du format de précision détermine à la fois la taille du modèle et sa qualité. Chaque format représente un compromis différent entre le nombre de valeurs possibles et la fidélité des calculs. Voici comment ils se comparent concrètement.
| Format | Plage de valeurs | Valeurs possibles | Perte de qualité |
|---|---|---|---|
| FP32 | ±3.4 × 10³⁸ | 4 milliards | Référence |
| FP16 | ±65 504 | ~65 000 | 0.5% |
| BF16 | ±3.4 × 10³⁸ | ~65 000 | Négligeable |
| INT8 | -128 à 127 | 256 valeurs | 1-2% |
| INT4 | -8 à 7 | 16 valeurs | 3-5% |
Du FP32 vers les entiers : ce que chaque saut implique
Le FP32 (32 bits) est la norme de départ : il offre environ 4 milliards de valeurs possibles et une précision de 7 décimales. Ses limites sont sa lourdeur les 140 GB de Llama 3.1 70B en FP32 et sa consommation mémoire, incompatible avec la plupart des GPU grand public. , comme expliqué dans notre guide choix ia, , selon les indicateurs de performance IA, , comme un agent IA mémoire longue,
Le FP16 réduit la précision à 3 décimales avec une plage de ±65 504. La perte reste sous 0.5%, ce qui en fait une option quasi transparente. Le BF16 conserve l’exposant du FP32 (±3.4 × 10³⁸) mais tronque la mantisse : il évite les problèmes de sous-dimensionnement numérique tout en divisant la taille par deux.
Passer aux entiers change la donne. L’INT8 n’offre que 256 valeurs (-128 à 127 en signé, 0 à 255 en non-signé), mais dégrade les benchmarks de seulement 1-2% par exemple -0.5% sur MMLU. L’INT4 ne propose plus que 16 valeurs (-8 à 7) : la perte grimpe à 3-5%, soit -1-2% sur MMLU, un niveau acceptable pour la plupart des usages.
En dessous, la recherche explore les formats 2 bits et 1 bit, mais la perte dépasse 10%, rendant les modèles difficiles à exploiter. Le ratio compression est pourtant alléchant : 4x pour INT8 vs FP32, 8x pour INT4 vs FP32, et jusqu’à 32x avec des poids binaires.
Principes de fonctionnement : de la précision numérique aux mathématiques de la quantization
La quantization repose sur un principe simple : réduire la précision des nombres flottants qui stockent les poids d’un modèle. Un modèle FP32 peut représenter environ 4 milliards de valeurs possibles, tandis qu’un modèle INT8 se limite à 256 valeurs (−128 à 127). Cette compression drastique rend les multiplications matricielles nettement plus rapides, accélérant l’inférence sans nécessiter de matériel plus puissant.
La taille d’un modèle est proportionnelle au nombre de paramètres multiplié par la précision. Un modèle comme Llama 3.1 70B occupe 140 GB en FP32, mais seulement 35 GB en INT4, soit une réduction de 75 %. Cette équation simple explique pourquoi la quantization est devenue indispensable pour déployer des LLM sur du matériel grand public, comme une RTX 4090 avec 24 GB de VRAM.
Pour minimiser la perte d’information, deux stratégies s’opposent. La quantification symétrique centre la plage de valeurs autour de zéro, idéale pour des distributions de poids équilibrées. La quantification asymétrique ajoute un point zéro et un facteur d’échelle, optimisant la représentation des activations. L’étalonnage permet alors de sélectionner les plages de valeurs les plus pertinentes, réduisant l’erreur de représentation à 1–2 % sur des benchmarks INT8 et à 3–5 % en INT4.
Avantages, limites et cas d’usage concrets de la quantization
Le principal avantage de la quantization réside dans la réduction drastique de la taille du modèle, de 4 à 8 fois selon le format choisi. Un LLM comme Llama 3 70B, dont les poids occupent 140 GB en FP32, passe à environ 35 GB en INT4. Cette compression permet de faire tourner des modèles performants sur du matériel contraint, comme un GPU avec 16 GB de VRAM pour un Llama 13B en Q4, ou même sur un Apple M2 Max avec une cadence d’inférence de 20 t/s.
En contrepartie, la quantization induit une perte de précision, généralement de 3 à 5% en INT4 sur les benchmarks standards. Des formats plus agressifs, comme INT2 ou les poids binaires, entraînent des pertes supérieures à 10%, ce qui les réserve à la recherche. Pour les applications critiques nécessitant des calculs complexes diagnostic médical, pilotage autonome cette dégradation reste un frein majeur, tout comme le coût élevé d’un entraînement QAT qui ne réduit la perte qu’à environ 0.1%.
Concrètement, la quantization s’impose pour le déploiement en local ou en edge computing, où la latence et la vie privée priment. Elle offre aussi des économies d’énergie significatives en réduisant le volume de calculs matriciels, un atout décisif pour les systèmes embarqués comme les drones ou les véhicules autonomes.
Outils et frameworks pour la quantization : Ollama, LM Studio, bitsandbytes et TensorFlow Lite
- Ollama exécution locale de LLM en format GGUF, idéal pour débuter.
- LM Studio interface graphique pour charger et tester des modèles quantifiés.
- bitsandbytes intégration INT8 et NF4 directement dans Transformers.
- TensorFlow Lite conversion de modèles pour mobile et edge computing.
- TheBloke plus de 1000 modèles pré-quantifiés GPTQ et GGUF sur Hugging Face.
Le choix de l’outil dépend de votre objectif. Pour une exécution locale sur Mac ou PC, Ollama et LM Studio dominent grâce à leur support natif du format GGUF, optimisé pour le CPU et Apple Metal. Avec une simple commande, vous téléchargez et lancez un modèle quantifié en INT4 ou INT8 sans configuration complexe. Sur un Mac M2 Max, un Llama 70B en Q4 atteint ainsi environ 20 t/s, tandis qu’un Llama 34B en Q8 monte à 25 t/s.
Côté intégration Python, bitsandbytes permet de charger n’importe quel modèle Transformers directement en NF4 ou INT8, ce qui réduit l’empreinte mémoire de 4 à 8 fois sans réécrire le code. C’est la solution privilégiée pour expérimenter la quantization dynamique ou combiner avec QLoRA pour du fine-tuning.
Le format GGUF : standard de fait pour le local
Le format GGUF (successeur de GGML) est devenu le standard pour l’exécution locale. Il embarque le tokenizer, les métadonnées et les poids quantifiés dans un seul fichier. Un modèle Llama 70B en FP32 pèse 140 GB ; en GGUF Q4, il tombe à environ 35 GB, chargeable sur une carte RTX 4090 avec ses 24 GB de VRAM. Pour le mobile, TensorFlow Lite reste la référence avec l’exportation de modèles YOLO ou de petits LLM en INT8, avec une perte de qualité de seulement 1 à 2% sur les benchmarks.
Impact matériel de la quantization : exigences VRAM et exemples de déploiement
La quantization modifie radicalement les besoins en mémoire GPU. Un grand modèle non compressé exige entre 40 et 50 Go de VRAM, ce qui dépasse la capacité d’une RTX 4090 (24 GB). En passant en INT4, le même modèle tient dans cette mémoire, réduisant la charge de 4 à 8 fois. Le choix du format détermine directement le matériel nécessaire pour une inférence fluide.
– 16 GB VRAM : config optimale pour un Llama 13B en Q4, avec une vitesse d’inférence confortable.
– 24 GB VRAM : permet de charger un Llama 70B en Q4 (fichier d’environ 35 GB), exploitant pleinement une RTX 4090.
– 32-64 GB RAM CPU : alternative sans GPU ; un Llama 8B en Q4 devient utilisable, mais avec une latence accrue.
– Edge computing : la quantization rend possible un traitement 100 % local, supprimant la latence réseau et renforçant la confidentialité des données.
– Systèmes autonomes : véhicules et drones exploitent des modèles quantifiés pour des décisions en temps réel, où chaque milliseconde compte et où la connexion cloud est souvent indisponible.
Sur une puce Apple M2 Max, les résultats sont éloquents : un Llama 70B en Q4 atteint 20 t/s, tandis qu’un Llama 34B en Q8 grimpe à 25 t/s. Ces performances démontrent qu’une machine équipée de 32 à 64 Go de mémoire unifiée fait tourner des modèles de pointe sans serveur dédié.
La règle est simple : moins de bits signifie moins de VRAM, mais aussi plus d’erreurs d’arrondi. Le compromis entre taille mémoire et qualité de sortie se joue à chaque niveau de précision. Pour un usage professionnel, viser INT8 (perte de 1 à 2 % sur les benchmarks) reste le meilleur équilibre ; pour un prototype sur machine modeste, l’INT4 débloque des scénarios impossibles quelques années plus tôt.
Quantification symétrique et asymétrique : étapes et défis
| Type de quantification | Plage centrée sur zéro | Point zéro requis | Utilisation typique |
|---|---|---|---|
| Symétrique | Oui | Non | Poids des réseaux |
| Asymétrique | Non | Oui | Activations, GPTQ |
Quantification symétrique vs asymétrique
La quantification symétrique centre la plage de valeurs autour de zéro. Pour une cible INT8, la plage d’entrée est mappée uniformément sur l’intervalle -128 à 127. Cette approche est simple : elle ne nécessite qu’un facteur d’échelle, pas de décalage. Elle fonctionne bien pour les poids de modèles, dont la distribution est généralement symétrique autour de zéro.
La quantification asymétrique, plus flexible, n’est pas symétrique et nécessite l’utilisation d’un point zéro et d’un facteur d’échelle. Le point zéro décale la plage pour couvrir exactement les valeurs réelles, y compris les activations dont la distribution peut être décalée. C’est la méthode employée par GPTQ, qui réalise une quantification asymétrique couche par couche pour mieux préserver l’information sensible.
Étapes du processus de quantification
- Étalonnage : sélection d’une plage de valeurs qui minimise l’erreur, en analysant les activations sur un jeu de données de référence.
- Facteur d’échelle : calcul du ratio entre la plage flottante d’origine et la plage entière cible, noté S.
- Point zéro : détermination du décalage Z qui aligne la valeur zéro du modèle sur une valeur entière, indispensable en mode asymétrique.
- Poids statiques : quantification des poids une fois pour toutes après l’entraînement, sans coût d’inférence supplémentaire.
- Activations dynamiques : quantification des activations à la volée pendant l’inférence, plus coûteuse mais nécessaire pour la vitesse.
Questions fréquentes sur la quantization des modèles IA
Quelle est la différence entre quantification symétrique et asymétrique ?
La quantification symétrique centre la plage de valeurs autour de zéro, tandis que l’asymétrique permet un décalage (offset) pour mieux capturer les distributions déséquilibrées. Symétrique est plus simple et rapide, mais peut perdre en précision sur les poids non centrés ; asymétrique offre généralement une meilleure fidélité.
L’inférence sur un modèle quantifié diffère-t-elle d’un modèle standard ?
Oui, l’inférence sur un modèle quantifié utilise des opérations mathématiques en précision réduite (INT8/INT4) au lieu de FP32/FP16. Cela accélère le calcul et réduit la consommation mémoire, mais peut légèrement modifier les résultats de sortie en raison de l’arrondi des valeurs.
Quid de la précision et des performances du modèle après quantification ?
La précision baisse généralement de 1 à 3 % pour une quantification INT8, et de 3 à 8 % pour INT4. En contrepartie, l’inférence est 2 à 4 fois plus rapide et la mémoire requise est divisée par 2 à 4. La perte peut être minimisée avec des techniques comme QAT.
Quels modèles sont adaptés à la quantification ?
Tous les modèles de deep learning peuvent être quantifiés, mais les plus adaptés sont les grands modèles de langage (LLaMA, Mistral, GPT) et les réseaux de vision (ResNet, YOLO). Les modèles avec de nombreux paramètres et une structure redondante tolèrent mieux la réduction de précision.
Comment choisir le bon format de quantification ?
Choisissez INT8 pour une précision maximale, INT4 pour une forte réduction mémoire, et NF4 pour un bon compromis sur les modèles de langage. Privilégiez GPTQ et AWQ pour un usage GPU, GGUF pour une compatibilité universelle avec Ollama ou LM Studio, et adaptez le format à votre matériel.
Quel est le coût en ressources (VRAM et RAM) pour exécuter un modèle quantifié ?
Pour un modèle 7B, comptez environ 4 Go de VRAM en INT4, 6 Go en INT8 et 14 Go en FP16. La RAM système est moins sollicitée, mais 8 Go sont recommandés. Un modèle 70B nécessite 35 Go en INT4, idéalement sur GPU ou en CPU avec suffisamment de RAM.
Quelles sont les limites actuelles et les perspectives futures ?
Les limites incluent une perte de précision sur les tâches complexes, un support matériel variable et des difficultés de calibration. Les perspectives futures portent sur la quantification adaptative, l’entraînement directement en basse précision et l’amélioration des algorithmes pour réduire l’écart avec les modèles non quantifiés.
