Utiliser le modèle d'IA intégré à macOS avec fm serve et le relier à Open WebUI
Un guide pas à pas pour activer le modèle de langage d'Apple Intelligence inclus dans macOS 27, le servir avec la commande fm serve et l'utiliser depuis Open WebUI, sans télécharger de modèle ni rien payer.
Depuis macOS 27, les Mac à puce Apple incluent une commande appelée fm qui donne un accès direct au modèle de langage d'Apple Intelligence : celui que le système utilise pour résumer des textes ou reformuler des e-mails. Elle permet de transformer ce modèle en petit serveur et de l'utiliser depuis d'autres applications, comme Open WebUI.
Les avantages sont nets : rien de plus à télécharger, il fonctionne hors ligne, il est gratuit et vos textes ne quittent pas le Mac. Il a aussi des limites importantes, que nous expliquons avant de commencer pour que vous sachiez à quoi vous attendre.
Ce que c'est et à quoi il sert
Le modèle d'Apple est petit (environ 3 milliards de paramètres) et pensé pour des tâches précises :
- Résumer un texte.
- Extraire des données d'un document (noms, dates, montants).
- Classer ou étiqueter du contenu.
- Reformuler un paragraphe sur un autre ton.
Ce n'est pas un bon substitut aux grands modèles pour programmer, calculer ou répondre à des questions de culture générale.
Prérequis
Ce guide est réservé au Mac. Le modèle d'Apple n'existe ni sur Windows ni sur Linux (vous trouverez des alternatives à la fin).
- Un Mac à puce Apple (M1 ou plus récente).
- macOS 27 ou plus récent. La commande
fm serven'existe pas sur macOS 26. - Apple Intelligence activé et son modèle téléchargé (environ 7 Go).
- Être connecté à votre compte Apple sur le Mac.
- Pour la seconde partie, Open WebUI installé (un guide est disponible sur ce blog).
Étape 1. Vérifier la version de macOS
- Cliquez sur le menu Pomme (en haut à gauche) → À propos de ce Mac.
- Regardez la version de macOS. Si elle est antérieure à la 27, mettez à jour dans Réglages Système → Général → Mise à jour de logiciels.
Étape 2. Activer Apple Intelligence
- Ouvrez Réglages Système.
- Allez dans Apple Intelligence et Siri.
- Activez Apple Intelligence.
- Le Mac télécharge le modèle en arrière-plan. Cela peut prendre un moment selon votre connexion. Pendant ce temps, le même écran indique qu'il se prépare.
Étape 3. Ouvrir le Terminal et vérifier la commande fm
- Appuyez sur ⌘ + Espace, tapez « Terminal » et appuyez sur Entrée.
- Tapez cette commande puis Entrée :
which fmElle doit répondre /usr/bin/fm. Si rien ne s'affiche, votre Mac n'a pas macOS 27 : revenez à l'étape 1.
Étape 4. Accepter la licence (une seule fois)
Avant d'utiliser fm, Apple demande d'accepter sa licence. Comme elle s'applique à tous les utilisateurs du Mac, il faut le faire avec les droits d'administrateur, en ajoutant sudo devant :
sudo fm license- Le Terminal demande le mot de passe de votre Mac. Tapez-le (les caractères ne s'affichent pas, c'est normal) et appuyez sur Entrée.
- Lisez le texte de la licence et tapez
yespour l'accepter.
Une seule fois suffit. Tant que vous ne l'avez pas acceptée, toute commande fm échoue.
Étape 5. Vérifier que le modèle est disponible
fm availableSi le modèle est prêt, la commande l'indique. Attention : cette vérification n'est pas infaillible et peut annoncer le modèle disponible alors que le service se prépare encore. Le vrai test est celui de l'étape 7.
Étape 6. Démarrer le serveur
Tapez :
fm serve --port 1976Le modèle d'Apple est alors disponible à l'adresse http://localhost:1976, dans le même format que les services d'OpenAI. Nous indiquons le port 1976 explicitement pour toujours savoir où il se trouve.
Laissez cette fenêtre ouverte pendant l'utilisation. Pour arrêter le serveur, appuyez sur Ctrl + C dans cette fenêtre.
Étape 7. Tester le serveur
Ouvrez une deuxième fenêtre de Terminal (avec ⌘ + N dans le Terminal) et collez cette commande :
curl http://127.0.0.1:1976/v1/chat/completions -H "Content-Type: application/json" -d '{"model": "system", "stream": false, "messages": [{"role": "user", "content": "Résume en une phrase ce qu’est la photosynthèse"}]}'En quelques secondes, vous recevez un texte avec la réponse du modèle. Si c'est le cas, le serveur fonctionne.
Deux particularités de ce serveur :
- Le nom du modèle est
system: c'est le seul qu'il propose. - Par défaut, il répond en streaming (par morceaux). C'est pourquoi le test ajoute
"stream": false, pour recevoir la réponse complète d'un coup.
Étape 8. Le relier à Open WebUI
Serveur démarré et Open WebUI ouvert dans le navigateur :
- Cliquez sur votre nom ou avatar et ouvrez le Panneau d'administration (Admin Panel).
- Allez dans Paramètres → Connexions (Settings → Connections). Dans certaines versions, le chemin est Settings → Admin → Connections.
- Dans API OpenAI, cliquez sur + pour ajouter une connexion.
- Remplissez :
- URL :
http://localhost:1976/v1si vous avez installé Open WebUI avec uv, ouhttp://host.docker.internal:1976/v1si vous l'avez installé avec Docker. - Clé (API Key) : n'importe quel texte, par exemple
apple. Le serveur d'Apple ne la vérifie pas, mais Open WebUI exige que le champ soit rempli.
- Cliquez sur Enregistrer.
Ouvrez une Nouvelle discussion : un modèle appelé system apparaît dans le sélecteur. C'est le modèle d'Apple. Pour un nom plus clair, dans Panneau d'administration → Modèles, vous pouvez le modifier et l'appeler, par exemple, « Apple (sur ce Mac) ».
Si la connexion échoue : passer par LiteLLM
Le serveur d'Apple est récent et a encore quelques particularités : il refuse certaines requêtes portant des en-têtes typiques des navigateurs (erreur 403) et répond par morceaux par défaut. Si Open WebUI n'arrive pas à l'utiliser directement, le plus simple est de le relier via LiteLLM, qui sert d'intermédiaire et envoie des requêtes « propres ».
Si vous avez LiteLLM (un guide est disponible sur ce blog), ajoutez ce bloc à votre config.yaml, dans model_list :
- model_name: apple-local
litellm_params:
model: openai/system
api_base: http://localhost:1976/v1
api_key: appleRedémarrez LiteLLM. Le modèle apparaît dans Open WebUI sous le nom apple-local, avec vos autres modèles.
Bonnes pratiques avec ce modèle
- Des demandes courtes et précises : « Résume ce paragraphe en trois points », « Extrais les dates de ce texte », « Reformule ceci sur un ton plus formel ».
- De nouvelles discussions souvent : quand la conversation s'allonge, elle dépasse sa mémoire de 4 096 tokens.
- Pour les tâches lourdes, un autre modèle : dans Open WebUI, passez à un modèle Ollama, LM Studio ou OpenRouter depuis le même sélecteur.
Sous macOS 26 : l'alternative afm
fm serve n'existe pas sous macOS 26, mais un projet open source appelé afm fait quelque chose de semblable avec le modèle d'Apple. Il nécessite Homebrew (le gestionnaire de paquets de brew.sh). Homebrew installé :
brew install scouzi1966/afm/afm
afmLe serveur tourne sur http://127.0.0.1:9999/v1 (si votre version utilise d'autres options, consultez afm --help). Pour connaître le nom exact du modèle, ouvrez http://127.0.0.1:9999/v1/models dans le navigateur. Il se relie à Open WebUI comme à l'étape 8, en changeant le port.
Et sur Windows ou Linux ?
Le modèle d'Apple n'existe que sur Mac. Sur Windows et Linux, l'alternative équivalente (un petit modèle gratuit et local) consiste à installer Ollama et à télécharger un modèle léger comme llama3.2 ou gemma3. Le guide Ollama est sur ce même blog.
Problèmes fréquents
which fmn'affiche rien. Votre Mac n'a pas macOS 27 ou pas de puce Apple.- Toutes les commandes
fméchouent immédiatement. Vous n'avez pas accepté la licence : lancezsudo fm license. fm availablerépond oui, mais le serveur ne répond pas. Apple Intelligence se prépare ou se télécharge encore. Vérifiez Réglages Système → Apple Intelligence et Siri et attendez la fin.- Open WebUI affiche une erreur 403. Le serveur refuse la requête à cause de ses en-têtes. Reliez-le via LiteLLM, comme expliqué à l'étape 8.
- Réponses coupées ou erreurs avec de longs textes. Vous avez dépassé les 4 096 tokens de contexte. Raccourcissez le texte ou ouvrez une nouvelle discussion.
- Cela ne fonctionne pas depuis Open WebUI dans Docker. Utilisez
host.docker.internalau lieu delocalhostdans l'URL de la connexion.
Et ensuite
Le modèle d'Apple est désormais disponible avec vos autres modèles. Dans le dernier guide de la série, vous installerez Hermes, un agent d'intelligence artificielle capable de mener des tâches complètes, le relierez à Ollama, LM Studio et LiteLLM, et verrez quel rôle peut jouer le modèle d'Apple.
Guide suivant: Installer Hermes Agent et le relier à Ollama, LM Studio, LiteLLM et au modèle d'Apple