2026 OLLAMA
MLX_PREVIEW_
ROLLBACK_
RUNBOOK.
Activer la couche MLX preview dans Ollama sur Apple Silicon peut accélérer le décodage, mais les modes d’échec glissent vers les contrats dtype, les saccades Metal et les trous de quantification. Ce guide classe les symptômes (pas de chargement, crash après le premier jeton, une seule quant qui tombe), propose un rollback en cinq étapes vers llama.cpp stable et une matrice pour un nœud Mac distant de contrôle afin que veille thermique et sommeil du portable ne faussent pas la preuve. Lectures croisées : benchmark MLX, comparatif stacks, SSH/VNC.
1. Décomposition des douleurs
Les canaux preview privilégient le débit à la couverture. Un portable avec Xcode, Electron et CI sous-estime les backends sensibles à la bande passante mémoire. Même nom commercial avec digest différent = autre binaire. TTFT et débit doivent être mesurés séparément (N≥24).
2. Matrice symptômes
| Signal | Piste | À éviter |
|---|---|---|
| Erreur juste après pull OK | dtype/quant ≠ build preview | changer de tag sans pin semver |
| Crash GPU après token 1 | Metal + rafales parallèles | stress GUI + API headless |
| Une seule quant HS | couverture MLX partielle | « plus petit = plus sûr » |
| Reprod solo | cache/sommeil | refuser un second hôte propre |
3. Cinq étapes de rollback
Step 1 Triplet figé
Version Ollama, digest modèle, patch macOS → ticket.
Step 2 Couper preview explicitement
Flags/env officiels, diff d’une ligne.
Step 3 Chirurgie cache
Supprimer blobs suspects, journal avant/après digest.
Step 4 Sondes 1→4 flux
Refléter la concurrence IDE.
Step 5 Politique écrite
Preview lab-only ? Second backend obligatoire ?
4. Matrice décision
| Déclencheur | Priorité | Secours |
|---|---|---|
| Reprod sur 2e Mac même génération + digest | suivi régression | pin build stable |
| Spikes seulement portable | thermique/alim/sommeil | Mac mini distant |
| Charge multi-clients | séparer interactif/batch | monoprocess tout-en-un |
5. Note de terrain
« Ce n’était pas la RAM : preview off + deux blobs supprimés, la tempête de recompilations dtype s’est arrêtée. »
Six flux CI vers localhost : RSS plat, tokens figés visuellement. Rollback + journaux digest ont isolé des recompilations Metal intermittentes sur une voie quant étroite. Rejeu sur Mac distant au rack : courbes normalisées. La vélocité preview exige artefacts figés et hôte de contrôle thermiquement honnête.
6. Langage Ops & créatif
Traiter semver comme des majors Node et digest comme lockfile. Pour les studios créatifs, préservez la stabilité couleur/audio en isolant l’inférence lourde sur un Mac distant Apple Silicon — workflow GPU/Metal plus prévisible qu’un portable en déplacement.
Louer une capacité MACGPU permet de rejouer ce runbook à l’identique sur un second silicium Apple sans CAPEX Ultra pour toute l’équipe.
7. Garde-fous Metal/quant
A : dtype+manifest+digest ensemble. B : séparer premier shader-build et TTFT nominal. C : inventaire concurrence implicite clients. Rejeu distant tranche environnement vs code.
8. Seuils MR
N≥24 ; TTFT p95 4 flux >2.8× mono → revue d’architecture ; swap moyen 90s >768MB bloque nouveaux clients.
9. FAQ
mlx_lm.server en parallèle ? Isolez ports/budget RAM. Uniquement M5 ? Alignez patch OS + build. Logs warnings ? Montez verbose, rattachez stderr au ticket.