Référence
Aide-mémoire LLM : formats, quantification et commandes
La référence rapide pour l'inférence locale : formats, K-quants GGUF, calcul mémoire, paramètres de génération et flags llama.cpp, vLLM et Ollama.
L’essentiel de l’inférence LLM locale rassemblé en une page : choix du logiciel, formats, quantification, formules de mémoire, paramètres de génération et commandes clés. À garder sous la main.
Quel logiciel choisir ?
- Apple Silicon → MLX ou LM Studio.
- GPU NVIDIA, production multi-utilisateurs → vLLM (throughput) ou TensorRT-LLM (latence min).
- GPU NVIDIA, dev local → Ollama ou LM Studio.
- iGPU AMD / mémoire unifiée → llama.cpp (Vulkan).
- CPU ou GPU limité → llama.cpp ou Ollama.
- Qualité locale max (EXL2/EXL3) → ExLlamaV2 / TabbyAPI.
Formats et quantification
| Format | Moteurs |
|---|---|
| GGUF | llama.cpp, Ollama |
| SafeTensors | vLLM, HuggingFace |
| MLX | Apple Silicon |
| AWQ / GPTQ | vLLM, TensorRT |
| EXL2 / EXL3 | ExLlamaV2 |
Nomenclature GGUF (K-quants)
| Quant | Précision | Note |
|---|---|---|
| Q2_K | ~2,5 bpw | Très dégradé |
| Q3_K_S/M/L | ~3 bpw | Économique |
| Q4_K_M | ~4,5 bpw | Recommandé |
| Q5_K_M | ~5,5 bpw | Qualité |
| Q6_K | ~6,5 bpw | Haute fidélité |
| Q8_0 | ~8 bpw | Quasi lossless |
bpw = bits per weight. S = Small, M = Medium, L = Large.
Règle qualité : ≥ Q4_K_M est acceptable, Q5_K_M/Q6_K est le meilleur compromis. Préférez un modèle plus petit bien quantifié à un gros modèle fortement compressé (un 7B Q5 bat un 13B Q2). Lors de nos tests sur Strix Halo, Q5_K_XL se situe sur le front de Pareto qualité/taille.
Calcul de la mémoire requise
RAM modèle = Params × (bpw / 8) + overhead
KV cache = 2 × layers × d_kv × ctx × bytes
Total = Modèle + KV cache + ~10 %
| Empreinte modèle | Taille |
|---|---|
| 7B @ Q4_K_M | ~4,5 Go |
| 13B @ Q4_K_M | ~8 Go |
| Qwen3.6-27B @ Q4_K_XL | ~18 Go |
| Qwen3.6-35B-A3B @ Q5_K_XL | ~26 Go |
| 70B @ Q4_K_M | ~42 Go |
| KV cache | Effet |
|---|---|
| Qwen3.6-27B @ 32K (FP16, GQA) | ~8 Go |
| Avec KV cache Q8 | ÷2 vs FP16 |
| Avec KV cache Q4 | ÷4 vs FP16 |
| Attention MLA (DeepSeek) | ÷10 vs MHA standard |
Paramètres de génération
| Usage | Temp | Top-P | Top-K |
|---|---|---|---|
| Code / factuel | 0.1 | 0.95 | 40 |
| Chat général | 0.7 | 0.9 | 40 |
| Créatif | 0.9 | 0.95 | 100 |
| Roleplay | 1.0 | 0.95 | 0 |
Repères : Temperature 0.0 = déterministe, >1.0 = très aléatoire. Top-P 0.7-0.9 équilibré, 1.0 = désactivé. Top-K 40-100 (0 = off). Repeat penalty 1.0-1.2. Min-P 0.05-0.1. Top-P et Temperature étant multiplicatifs, ajustez l’un en gardant l’autre fixe.
Commandes essentielles
# Ollama
ollama run qwen3.6:27b # télécharge et lance
ollama list # modèles installés
ollama pull model:tag # télécharge sans lancer
ollama serve # serveur API
# llama.cpp — flags clés
--ngl 999 # offload GPU (toutes couches)
-fa 1 # Flash Attention
--no-mmap # OBLIGATOIRE sur mémoire unifiée (UMA)
--cache-type-k q8_0 --cache-type-v q8_0 # KV cache quantifié
--parallel 2 # requêtes concurrentes
--n-predict 32768 # budget de tokens en sortie
--spec-draft-n-max 3 # décodage spéculatif
# HuggingFace CLI
huggingface-cli download unsloth/Qwen3.6-27B-Instruct-GGUF \
--include "*UD-Q4_K_XL*" --local-dir ./models
Optimisations clés
- Flash Attention : mémoire O(N) au lieu de O(N²), speedup 2-4× sur GPU. Auto sous Ollama et vLLM,
-fa 1sous llama.cpp. - KV cache quantifié : Q8_0 → -50 % mémoire pour ~0 % de perte ; Q4_0 → -75 % avec légère perte. Sur notre RTX 3090, un KV cache fp8 pousse Qwen3.6-27B à 81k de contexte.
- Batching : continuous batching (vLLM), tensor/pipeline parallel en multi-GPU.
- Décodage spéculatif : 2-3× de speedup via un modèle draft.
Règle d’or
Un modèle qui tient entièrement en RAM/VRAM bat un modèle partiellement offloadé. Un 7B Q5 entièrement sur GPU sera toujours plus rapide qu’un 70B Q4 partagé entre CPU et GPU. Et sur mémoire unifiée, un MoE comme Qwen3.6-35B-A3B exploite la grande capacité tout en ne lisant que 3B de poids actifs par token.