veilletech.fr
2 sept. Feed du jour
#07 LLM Article

104 Go de modèle sur un Mac de 48 Go

Le modèle ne tient pas en mémoire. Il tourne quand même.

slotstream est un binaire Swift qui exécute Qwen3.8-Flash-Next (125 Md de paramètres, MoE, 103,8 Go de poids en 4 bits) sur un Mac dont la mémoire ne suffit pas, en streamant les experts depuis le SSD. Environ 12 tok/s sur un M5 Pro de 48 Go, avec 32 Go de pic mémoire, et une API compatible Ollama et OpenAI.

3 min de lectureintermédiairevidéo 1:07
Partager
Sommaire5 sections
  1. Ce qui se passe
  2. Ce que chaque machine obtient
  3. Installer et servir
  4. Les limites, annoncées
  5. À retenir

Ce qui se passe

slotstream fait tourner Qwen3.8-Flash-Next — un mélange d'experts de 125 milliards de paramètres, 103,8 Go de poids sur disque en 4 bits — sur un Mac incapable de le contenir en mémoire. C'est un binaire Swift unique, sans Python, qui parle les API d'Ollama et d'OpenAI : les outils existants fonctionnent sans modification.

Le principe tient à la structure du modèle. Dans un mélange d'experts, seule une fraction des poids sert à chaque token. slotstream ne charge au démarrage qu'un tronc de 3,8 Go — environ 2 secondes — puis maintient en mémoire les experts les plus utiles et va chercher les autres sur le SSD.

Ce que chaque machine obtient

Mémoire de la machine slotstream prend Décodage à chaud
8 Go 8,1 Go (plancher) ~3 tok/s, avec avertissement de swap
16 Go 10 Go ~4 tok/s
24 Go 16 Go ~8 tok/s
32 Go 22 Go ~9 tok/s
48 Go et plus 33 Go ~12 tok/s

L'auteur est explicite sur le statut de ces chiffres : seule la ligne 48 Go est mesurée sur du matériel réel, les autres sont extrapolées de la courbe, et les Mac plus petits ont aussi des SSD plus lents. Le tableau se reproduit avec slotstream doctor --sim-ram N.

Installer et servir

Terminal
curl -fsSL https://raw.githubusercontent.com/carloslfu/slotstream/main/install.sh | sh
slotstream doctor          # plan de la machine, avant tout téléchargement
slotstream pull            # 103,8 Go sur 24 fichiers, vérifiés en SHA-256
slotstream serve           # port 11434, sous-ensemble Ollama et OpenAI

Les artefacts sont construits en CI avec attestation de provenance, vérifiable par gh attestation verify slotstream-arm64.tar.gz --repo carloslfu/slotstream. Le téléchargement ouvre huit connexions TCP : 16 minutes depuis un lien datacenter à 1 Gbit/s, environ 2 h 20 à 100 Mbit/s, 9 h à 25 Mbit/s. Une interruption reprend où elle s'est arrêtée.

Les limites, annoncées

Le disque mord avant la mémoire : il faut ~110 Go libres, donc un Mac de 512 Go au minimum, quelle que soit la RAM.

Surtout, l'axe lent est le prompt. Tout le contexte est traité avant le premier token : 8 000 tokens font attendre environ une minute sur un Mac de 48 Go, plus de trois sur un 16 Go. Le total prompt + complétion est plafonné à 32 768 tokens (--max-context). Dans une conversation, on ne paie ce prix qu'une fois : les tours suivants ne préremplissent que le nouveau — 6,0 s au huitième tour au lieu de 25,8 s.

Ce qui n'est pas supporté — outils, images, sortie JSON schématisée, logprobs — renvoie un 400 explicite plutôt que d'être ignoré en silence.

À retenir

  1. Lancer slotstream doctor avant de télécharger : il refuse si le disque ne suit pas.
  2. Le compromis est un décodage correct contre un temps au premier token élevé : c'est un moteur pour les longues réponses, pas pour l'interactif nerveux.
  3. Le cache de préfixe n'est pas bit-à-bit identique à un recalcul ; --no-prefix-cache si vous avez besoin de reproductibilité exacte.

Source : slotstream