La quantification : comment faire tenir de grands modèles sur son propre ordinateur
Stocker un modèle avec une précision numérique plus faible économise énormément d'espace de stockage – le prix à payer est une petite perte de qualité, souvent à peine perceptible.
Le principe de base
Les poids d'un modèle sont généralement stockés lors de l'entraînement avec une haute précision, souvent en nombre à virgule flottante 16 bits (FP16). La quantification réduit cette précision après coup, par exemple à 8 bits (INT8) ou 4 bits (INT4) – chaque nombre individuel nécessite alors nettement moins d'espace de stockage, et le modèle entier rétrécit en conséquence.
Pourquoi c'est déterminant pour les modèles locaux
Un modèle de 7 milliards de paramètres nécessite environ 14 Go de mémoire vive en FP16 – trop pour de nombreux ordinateurs portables. Avec une quantification courante en 4 bits (Q4_K_M), ce même besoin descend à environ 4,5 Go, ce qui rend le modèle enfin utilisable sur du matériel grand public classique. C'est précisément pour cette raison que les modèles quantifiés sont la base d'outils comme Ollama.
Le format GGUF
GGUF est le format de fichier courant pour les modèles quantifiés, tels qu'utilisés par Ollama ou llama.cpp – il regroupe les poids et les métadonnées (tokenizer, configuration) en un seul fichier, reconnaissable dans son nom à des abréviations comme Q4_K_M ou Q8_0.
Le prix à payer : la perte de qualité
Plus la quantification est agressive, plus la perte de précision est importante. Pour Q4_K_M, la perte de qualité mesurée sur des benchmarks standards se situe généralement entre un et trois pour cent seulement – à peine perceptible pour la plupart des tâches quotidiennes. Avec une compression encore plus forte, la perte devient en revanche nettement plus sensible.
EXEMPLE
ollama create --quantize q4_K_M monmodele # Convertit un modèle FP16 en version 4 bits – le besoin en mémoire tombe à environ un tiers, la perte de qualité reste généralement sous 3 %.
🛠️ EXERCICE — À TOI DE JOUER
Télécharge un modèle ouvert avec Ollama et compare la taille ainsi que le comportement selon différents niveaux de quantification.
- Installe Ollama et télécharge un modèle dans sa quantification standard, par ex. ollama run gemma4.
- Vérifie la taille du fichier du modèle téléchargé (par ex. via ollama list).
- Télécharge, à titre de comparaison, si disponible, un autre niveau de quantification du même modèle (par ex. un tag avec q8_0) et compare la taille ainsi que le comportement de réponse pour la même question.
✅ AUTO-VÉRIFICATION
- ☐ Quelle était l'ampleur de la différence de taille de fichier entre les deux niveaux de quantification ?
- ☐ As-tu seulement remarqué une différence de qualité sur des questions normales ?
QUIZ RAPIDE
Que se passe-t-il lors de la quantification d'un modèle de FP16 vers 4 bits (par ex. Q4_K_M) ?
SOURCES
- Documentation Hugging Face : GGUF ↗ huggingface.co
- GitHub : llama.cpp – README de quantification ↗ github.com
- Documentation Ollama : Importer un modèle (quantification) ↗ docs.ollama.com