Remplacer Alexa par une IA locale, c’est une question que se posent beaucoup de foyers et d’ateliers en Hauts-de-France une fois qu’Ollama tourne déjà sur un mini-PC. Home Assistant peut dialoguer avec un modèle local pour comprendre une demande en français courant — « baisse le chauffage du bureau », « est-ce que la porte du garage est fermée ? » — sans envoyer la voix ni le contexte chez un géant du cloud. Ce tutoriel avancé pose l’architecture, l’intégration, la voix, des scénarios réalistes et surtout les limites : ce n’est pas un remplacement magique d’un assistant commercial rodée depuis des années. IAHDF reste indépendant : aucune marque n’est sponsorisée, les menus évoluent, vérifiez toujours la documentation officielle Home Assistant et Ollama du jour.
Pour qui, et quelle question se pose vraiment
Ce parcours s’adresse à des personnes qui ont déjà Home Assistant sous la main — supervised, Container, ou OS dédié — et qui font tourner ou peuvent faire tourner Ollama sur la même machine ou un second hôte du LAN. Profils typiques : bricoleur numérique à Lens, médiateur qui anime un atelier « maison connectée » à Amiens, responsable technique d’une petite structure associative près de Valenciennes qui veut montrer qu’on peut commander des lumières sans compte Amazon.
La question « remplacer Alexa par une IA locale ? » mérite une réponse nuancée. Oui, vous pouvez parler à votre maison sans cloud pour une partie des gestes. Non, vous n’obtiendrez pas d’emblée la même robustesse de reconnaissance vocale, le même catalogue d’intentions, ni le même support grand public. IAHDF vous propose de viser un usage utile et maîtrisé, pas une démo Instagram où tout paraît magique.
Architecture : qui parle à qui
Schéma de principe : un micro (haut-parleur intelligent open source, navigateur, ou téléphone sur le Wi‑Fi) envoie l’audio ou le texte vers Home Assistant. HA dispose d’une intégration conversation / assistant qui s’appuie sur un agent LLM. Cet agent appelle l’API HTTP d’Ollama (ou d’un backend compatible) sur le réseau local. Le modèle propose une intention ou un outil ; HA exécute l’action sur les entités (lumières, thermostats, alarmes) selon les permissions que vous avez définies.
Deux machines ou une seule : tout-en-un sur un mini-PC avec GPU optionnel, ou HA sur un NUC sobre et Ollama sur une tour plus musclée au garage. L’important est la latence réseau locale (idéalement Ethernet) et le fait que rien ne sorte vers Internet pour la boucle conversation → action. Les mises à jour d’images et de modèles restent un sujet à part : croisez avec mise à jour et sauvegarde Open WebUI / Ollama si vous partagez le même hôte de modèles.
Prérequis matériel et logiciels
Logiciel : Home Assistant à jour, accès administrateur, quelques entités déjà fiables (au moins deux lumières et un capteur). Backend : Ollama installé, un modèle capable de suivre des instructions en français (taille et qualité à évaluer chez vous — pas de score inventé ici). Documentation : pages officielles Home Assistant sur Conversation, Assist, et les intégrations LLM du jour ; documentation Ollama pour l’API et les tags de modèles.
Matériel : mini-PC (Intel N‑series, Ryzen, etc.) suffisant pour HA ; GPU optionnel si vous voulez un modèle plus large ou une latence plus confortable. Sans GPU, un petit modèle d’instructions reste souvent utilisable pour des ordres courts, au prix d’un temps de réponse parfois perceptible. Micro : USB de bureau pour les tests, puis un pipeline voix (Wyoming, satellite open source, ou simple navigateur) selon ce que la doc HA du jour recommande. Ne promettez pas « Alexa-like » avec un micro de conférence mal placé dans une cuisine bruyante à Roubaix.
Intégration : brancher le LLM local
Les noms exacts des intégrations et des menus changent. Le jour où vous lisez ce tutoriel, ouvrez la documentation officielle Home Assistant et cherchez les termes Conversation agent, Assist, Ollama, ou OpenAI-compatible local. Principe stable : vous déclarez l’URL de base du service Ollama (souvent sur le port documenté par Ollama), vous choisissez un modèle déjà tiré (`ollama pull …`), vous créez un agent de conversation lié à cet backend, puis vous l’associez à Assist.
Testez d’abord en texte dans l’interface Assist (panneau conversation), sans micro. Demandez des choses que HA sait déjà faire via l’interface classique. Observez si le modèle invente des noms d’entités : s’il invente, resserrez le prompt système, réduisez le périmètre d’outils exposés, ou choisissez un modèle qui suit mieux les instructions. Documentez la version de HA, le tag du modèle, et l’URL interne dans un README papier collé près du rack — dans six mois, vous saurez ce qui marchait à Boulogne.
| Couche | Rôle | Point de contrôle |
|---|---|---|
| Assist / Conversation | Interface utilisateur texte ou voix | L’agent sélectionné est bien le LLM local |
| Agent LLM | Interpréter la demande, proposer une action | Prompt système, outils autorisés, modèle Ollama |
| Ollama | Inférence locale du modèle | URL LAN, modèle tiré, charge CPU/GPU |
| Entités HA | Exécuter l’action réelle | Noms stables, zones, permissions |
Voix : de la dictée au satellite
La voix ajoute deux briques : reconnaissance de la parole (STT) et synthèse (TTS). Chacune peut être locale (pipelines open source documentés par HA / Wyoming) ou, si vous l’acceptez, hybride. Pour rester « sans cloud », choisissez des composants STT/TTS locaux même s’ils sont moins flatteurs qu’un service commercial. La qualité dépend du micro, du bruit ambiant, de l’accent, et du modèle STT — mesurez dans votre salon, pas d’après une vidéo tournée en studio.
Parcours recommandé : (1) Assist texte OK, (2) STT local sur une phrase courte près du mini-PC, (3) TTS pour confirmer l’action, (4) satellite ou appareil dédié dans une pièce. Activez une wake word seulement quand le reste est stable. En atelier IAHDF à Lille, Montrez d’abord l’échec contrôlé (« j’ai dit bureau, il a allumé la cuisine ») : cela forme mieux qu’une démo sans friction.
Scénarios utiles avant les gadgets
Scénario 1 — état et bascule : « Quelle est la température du bureau ? », « Éteins toutes les lumières du rez-de-chaussée ». Scénario 2 — routine du soir : une phrase qui déclenche un script HA déjà écrit (pas le LLM qui invente dix services). Scénario 3 — accessibilité : une personne à mobilité réduite près d’Arras commande volets et lumière sans toucher l’appli. Scénario 4 — atelier pédagogique : les participants voient la trace dans les logs HA (intention, entité, résultat) pour comprendre que ce n’est pas de la magie.
Évitez au début les ordres ambigus (« mets une ambiance cosy ») et les actions critiques (ouvrir portail, désarmer alarme) sans confirmation explicite ou sans code. Le LLM est un interprète ; le script HA reste la source de vérité pour les enchaînements sensibles. Préférez exposer peu d’outils au modèle : mieux vaut trois services fiables que cinquante entités mal nommées.
# Exemple pédagogique IAHDF — PAS un fichier à coller tel quel. # Vérifiez les clés exactes dans la documentation Home Assistant # et Ollama de votre version avant toute modification. # --- Côté Ollama (hôte modèles) --- # ollama pull <modele_instructions_fr> # ollama serve # écoute locale, firewall LAN restrictif # --- Principe agent conversation (pseudo-config) --- # conversation: # intents: ... # llm_agent_local: # backend: ollama # base_url: "http://<IP_OLLAMA_LAN>:<PORT>" # model: "<tag_modele>" # system_prompt: | # Tu es l’assistant domotique de la maison. # Tu n’inventes aucune entité. Tu n’appelles que les outils listés. # Si la demande est ambiguë ou dangereuse, tu demandes confirmation. # Tu réponds en français, concis. # tools_allowed: # - light.turn_on # - light.turn_off # - climate.set_temperature # - script.routine_soir # deny: # - alarm_control_panel.disarm # - lock.unlock # - cover.open_garage # --- Test manuel --- # 1) Assist texte : "Quelle est la température du bureau ?" # 2) Assist texte : "Éteins la lumière du bureau" # 3) Seulement ensuite : micro / STT local
Limites honnêtes : latence, compréhension, Alexa
Latence : entre la fin de votre phrase et l’action, comptez un délai variable selon modèle, charge machine, STT et réseau. Sur un petit modèle CPU, la pause peut être gênante pour un usage « réflexe ». Sur GPU correct, l’ordre de grandeur s’améliore souvent, sans garantie de temps réel commercial. Compréhension : accents, chevauchements, télévision en fond, synonymes (« salon » vs zone mal nommée) provoquent des erreurs. Ce n’est pas un défaut honteux : c’est le terrain.
Alexa et assimilés cumulent des années de données cloud, des wake words rodés, et un écosystème d’skills. Une stack HA + Ollama locale gagne sur la souveraineté et la transparence ; elle perd souvent sur le polish. Ne vendez pas « on remplace Alexa ce week-end » à une famille ou à une collectivité. Vendez « on commande trois gestes utiles sans cloud, avec un bouton physique de secours ». Pour la posture données et cloud, gardez les bases d’une IA locale et les sujets voisins de la série avancée à portée.
Sécurité et réseau domestique
Ollama et HA doivent rester sur le LAN ou un VPN ; pas d’exposition Internet brute des ports d’API. Segmentez si possible (VLAN IoT vs VLAN modèles). Compte HA : pas d’admin pour les tablettes murales. Mises à jour : lisez les notes de version ; un changement d’intégration conversation peut casser votre agent. Sauvegardez la config HA (et les volumes modèles si partagés) avant d’expérimenter — la routine de sauvegarde Open WebUI / Ollama inspire la même discipline sur l’hôte modèles.
RGPD / vie privée : la voix qui ne quitte pas le domicile est un avantage net pour un foyer ou un atelier. Cela n’autorise pas à enregistrer indéfiniment des conversations de collègues sans information claire. Décidez une politique simple : pas d’enregistrement longue durée, ou stockage chiffré local avec durée de rétention courte.
Pas à pas : d’HA seul à trois commandes vocales utiles
Figer l’existant Home Assistant
Avant toute IA, vérifiez que vos entités critiques répondent depuis l’interface classique : deux lumières, un thermostat ou équivalent, un script « routine soir » déjà testé au doigt. Renommez proprement zones et friendly names (bureau, cuisine, rez-de-chaussée). Exportez ou notez une sauvegarde de configuration HA. Sur un papier, listez ce que le LLM aura le droit de faire et ce qui restera interdit. Ce cadre évite de déboguer à la fois la domotique et le modèle le même soir dans un appartement de Tourcoing.
Préparer Ollama sur le LAN
Installez ou démarrez Ollama sur le mini-PC (GPU optionnel). Tirez un modèle d’instructions raisonnable pour votre machine — sans chase au plus gros tag. Testez `curl` ou l’équivalent vers l’API locale avec une phrase courte. Ouvrez le firewall seulement vers le sous-réseau HA. Notez IP, port, tag du modèle dans le README du rack. Si Ollama et HA partagent l’hôte, confirmez que la charge d’inférence ne rend pas HA injoignable pendant les gros prompts ; sinon, séparez les machines. Vérifiez aussi qu’aucune exposition Internet du port Ollama n’est active « par habitude ».
Brancher l’intégration LLM selon la doc du jour
Ouvrez la documentation officielle Home Assistant du jour pour Conversation / Assist / backend Ollama ou compatible. Créez l’intégration avec l’URL interne, sélectionnez le modèle, définissez un prompt système strict (pas d’invention d’entités, français, demande de clarification). Associez l’agent à Assist. Désactivez temporairement les autres agents cloud pour ne pas vous tromper de cible pendant les tests. Documentez chaque clic réel : les captures de blogs anciens mentent souvent sur les libellés. Si un champ exigé a changé de nom, suivez la doc officielle, pas ce tutoriel figé.
Valider en texte trois intentions stables
Dans Assist texte, enchaînez : question d’état, bascule d’une lumière nommée sans ambiguïté, déclenchement du script « routine soir ». Pour chaque essai, lisez les traces : quelle intention, quelle entité, succès ou erreur. Si le modèle hallucine un nom, réduisez les outils exposés et enrichissez le prompt avec la liste courte des entités autorisées. Ne passez à la voix que lorsque ces trois intentions réussissent plusieurs fois d’affilée, y compris après un redémarrage d’Ollama. Notez les formulations qui marchent : elles deviendront votre script de test régressif.
Ajouter STT/TTS locaux et un micro de test
Selon la documentation HA / Wyoming du jour, activez un pipeline de reconnaissance et de synthèse locales. Placez un micro USB à distance réaliste (deux mètres, bruit de frigo). Répétez les trois intentions. Chronométrez grossièrement le délai ressenti — ordre de grandeur qualitatif, pas benchmark de labo. Ajustez wake word seulement si la fausse détection reste rare. Formez un proche : s’il ne comprend pas comment annuler une action, votre UX n’est pas prête pour la famille. Acceptez un usage texte sur téléphone tant que la voix reste capricieuse.
Durcir, documenter, et planifier la suite
Retirez les outils dangereux de l’agent. Activez une confirmation pour tout geste sensible restant. Sauvegardez configs HA et notes de versions (HA, Ollama, tag modèle). Affichez près du tableau électrique un rappel : « IA locale = secours manuel obligatoire ». Présentez le dispositif en cinq minutes à un atelier IAHDF ou à un voisin bricoleur. Planifiez une revue mensuelle : le modèle a-t-il bougé ? Assist répond-il encore ? Pour la maintenance de l’hôte modèles, enchaînez avec sauvegarder et mettre à jour sans casser.
Animer un atelier d’une heure trente
Découpe possible : quinze minutes d’architecture au tableau, vingt minutes de démo texte Assist, vingt minutes de branchement guidé (binômes), quinze minutes de voix et d’échecs volontaires, dix minutes de checklist sécurité, dix minutes de questions. À Calais comme à Compiègne, le moment où l’on refuse d’exposer `lock.unlock` au LLM crée plus de confiance que la lumière qui s’allume au premier essai.
Exercice maison : rédiger le prompt système et la liste blanche d’outils pour son propre logement ou sa salle asso, sans brancher la voix. Au prochain atelier, comparez les listes blanches : vous construisez une culture de minimisation plutôt qu’une course aux satellites.
Mesurer chez soi, sans chiffres inventés
Notez pour dix commandes : succès / échec / délai ressenti (court, moyen, long). Notez le bruit ambiant. Ces observations valent mieux qu’un tableau de tokens/s trouvé sur un forum. Si la latence gêne le quotidien, réduisez le modèle, passez un geste critique en automatisation HA pure, ou acceptez le texte sur téléphone plutôt que la voix libre. L’honnêteté technique est un marqueur IAHDF : pas de scores marketing, pas de VRAM « labo », pas de prix inventés.
Questions fréquentes
Peut-on vraiment remplacer Alexa par une IA locale ?
Pour une partie des commandes simples, oui, si vous acceptez plus de réglages et parfois plus de latence. Pour le polish, le catalogue d’intentions et le support grand public, non, pas en miroir exact. Visez trois gestes utiles et souverains plutôt qu’une promesse de remplacement total. Gardez toujours un contrôle manuel. La bonne question n’est pas « est-ce aussi fluide qu’Alexa ? », c’est « est-ce assez fiable pour mon foyer sans envoyer la voix ailleurs ? ».
Faut-il un GPU ?
Pas obligatoire pour expérimenter : un petit modèle sur CPU peut suffire à des ordres courts. Un GPU optionnel améliore souvent le confort (réponses plus snappy, modèles un peu plus capables), sans transformer magiquement la compréhension du français bruité. Dimensionnez selon votre machine réelle et vos essais, pas selon une fiche marketing. Si HA devient lent pendant l’inférence, séparez les hôtes.
Home Assistant doit-il tourner sur la même machine qu’Ollama ?
Les deux schémas marchent. Colocaliser simplifie le réseau ; séparer isole la charge. Dans un pavillon près de Douai, beaucoup placent HA sur un petit NUC et Ollama sur une tour au sous-sol, reliés en Ethernet. L’essentiel : IP stable, firewall restrictif, et documentation de qui parle à qui. Évitez le Wi‑Fi capricieux pour le chemin HA → Ollama si vous pouvez.
Que faire si le modèle invente des pièces ou des entités ?
Resserrez le prompt système, exposez uniquement une liste blanche d’outils/services, améliorez les noms d’entités HA, et retestez en texte. Changez de modèle si nécessaire. Ne « corrigez » pas en ajoutant encore plus d’outils. Journalisez les échecs une semaine : vous verrez si le problème est STT, naming, ou raisonnement. Tant que ce n’est pas stable, n’activez pas la voix dans les pièces de vie.
Où se former ensuite avec IAHDF ?
Consolidez d’abord vos trois intentions stables, puis la routine de sauvegarde de l’hôte modèles avec mettre à jour sans rien casser. Pour les bases d’une posture locale, relisez installer Ollama. Les sessions près de chez vous sont sur l’agenda ; pour rejoindre un parcours, utilisez l’inscription ci-dessous.
