> ## Documentation Index
> Fetch the complete documentation index at: https://docsmlx.otterly.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Quantification des modèles

> Réduire la taille d'un modèle pour le rendre plus facile à exécuter avec MLX

La quantification consiste à stocker les poids d'un modèle avec moins de bits. Le but est simple : **réduire la mémoire nécessaire**, souvent avec une perte de qualité acceptable.

Pour beaucoup de workflows MLX, la quantification est ce qui rend un modèle réellement exploitable sur un Mac personnel.

***

## Pourquoi quantifier

Sans quantification, un modèle peut être trop lourd pour votre machine. Avec une version quantifiée, vous pouvez :

* charger le modèle plus facilement
* réduire la pression sur la mémoire unifiée
* tester des modèles plus grands
* accélérer le prototypage local

<Info>
  Le `4bit` est souvent le meilleur point d'équilibre pour démarrer. Il réduit fortement la mémoire sans compliquer votre workflow.
</Info>

***

## Les niveaux de quantification les plus courants

| Niveau | Quand l'utiliser                                             |
| ------ | ------------------------------------------------------------ |
| `8bit` | Vous privilégiez la qualité et vous avez de la marge mémoire |
| `4bit` | Le choix par défaut pour la plupart des usages locaux        |
| `3bit` | Seulement si la mémoire devient la contrainte principale     |

Ne cherchez pas le réglage parfait dès le début. Essayez d'abord `4bit`, puis comparez seulement si vous voyez un vrai problème.

***

## Convertir un modèle avec `mlx_lm.convert`

### Conversion locale en 4-bit

```bash theme={null}
mlx_lm.convert \
  --hf-path mistralai/Mistral-7B-Instruct-v0.3 \
  -q \
  --q-bits 4 \
  --mlx-path ./models/mistral-7b-4bit
```

### Utiliser ensuite le modèle converti

```bash theme={null}
mlx_lm.generate \
  --model ./models/mistral-7b-4bit \
  --prompt "Explique la quantification en deux phrases."
```

***

## Les options à connaître

| Option          | Rôle                                              |
| --------------- | ------------------------------------------------- |
| `--hf-path`     | Modèle source sur Hugging Face                    |
| `-q`            | Active la quantification                          |
| `--q-bits`      | Choisit le niveau de quantification               |
| `--mlx-path`    | Dossier de sortie local                           |
| `--upload-repo` | Publie directement la conversion sur Hugging Face |

***

## Faut-il convertir ou utiliser MLX Community ?

Utilisez un modèle déjà publié dans `mlx-community` si c'est possible. Convertissez vous-même seulement quand vous avez une raison claire :

* modèle absent
* variante spécifique
* besoin de publier votre propre build

Cette règle vous évite beaucoup de travail inutile.

***

## Vérifier rapidement que la conversion est correcte

Après conversion, posez quelques questions simples au modèle :

* suit-il correctement les consignes ?
* la sortie est-elle cohérente ?
* le chargement tient-il en mémoire sur votre machine ?

N'essayez pas d'évaluer la qualité avec un seul prompt, mais vérifiez au moins que le modèle reste exploitable pour votre cas d'usage.

***

## MLX n'utilise pas le format GGUF

Si vous venez de `llama.cpp` ou d'Ollama, gardez ce point en tête :

* `GGUF` est le format courant côté `llama.cpp`
* MLX attend un format compatible MLX

<Warning>
  Ne partez pas d'un fichier `GGUF` si votre objectif est MLX. Cherchez d'abord la version source sur Hugging Face, puis convertissez-la avec `mlx_lm.convert`, ou utilisez une variante déjà publiée dans `mlx-community`.
</Warning>

***

<CardGroup cols={2}>
  <Card title="MLX Community" icon="users" href="/mlx/models/mlx-community">
    Trouver un modèle déjà préparé.
  </Card>

  <Card title="QLoRA" icon="microchip" href="/mlx/fine-tuning/qlora-guide">
    Réutiliser un modèle quantifié pour le fine-tuning.
  </Card>
</CardGroup>
