Retour à l'accueil

IA locale pour Home Assistant : Ollama et MCP

L'article décrit une pile IA locale pour Home Assistant : Ollama pour LLM, Whisper pour la reconnaissance vocale, OpenClaw avec protocole MCP, n8n pour l'orchestration. Contournement des limitations de Llama 8B via le contexte dans l'invite et accélération GPU. Instructions et scripts de déploiement complets.

Pile IA pour HA : LLM local et voix sans cloud
Advertisement 728x90

Stack IA Local pour Home Assistant : Déploiement et Optimisation

Déployer des agents IA pour Home Assistant sans services cloud est réalisé en combinant Ollama, Whisper, OpenClaw et n8n. Cette stack traite les commandes vocales en 3 à 6 secondes sur un GPU : transcription, analyse d'intention et appels de services HA. La solution clé pour contourner les limitations de Llama 3.1 8B est d'injecter le contexte HA dans le prompt au lieu d'utiliser l'appel d'outils.

Ollama exécute les modèles localement : phi3:mini (4 Go VRAM), llama3.1:8b (6–8 Go). Sur CPU, les délais peuvent atteindre 30 secondes ; avec CUDA, les réponses prennent 2 à 5 secondes. Pour un accès externe : définir OLLAMA_HOST=0.0.0.0:11434 dans un override systemd et OLLAMA_API_KEY=ollama-local dans .env.

Whisper base gère la langue russe. Sur une P106-100 (6 Go VRAM, CUDA) — 10 secondes d'audio en 0,5 seconde (19× temps réel). Sur CPU — 25–30 secondes (0,4× temps réel). Cette différence détermine la réactivité de l'assistant.

Google AdInline article slot

Protocole MCP et Intégration OpenClaw

Le Model Context Protocol (MCP) fournit un accès IA aux entités HA via /api/mcp. OpenClaw est un agent avec support MCP, se connectant à Ollama et HA.

La configuration MCP est requise avant l'intégration d'OpenClaw : Token à Long Terme dans HA, activer le Serveur MCP dans les intégrations, config dans openclaw.json. Options de déploiement :

  • Addon dans HA pour la simplicité.
  • Docker sur un hôte séparé (NUC) si le matériel HA est faible (RPi/Odroid).

Vérifications réseau : docker compose exec openclaw ping -c 1 <HA_IP>. Interface web à partir de la version 2026.2.21 — HTTPS uniquement (port 8443 en cas de conflit : 8443:443). Appairage : devices listdevices approve <requestId>.

Google AdInline article slot

Configuration OpenClaw pour la stabilité :

  • gateway.bind: "lan" ou "auto".
  • tools.profile: "full", deny: ["message", "sessions_send"].
  • contextWindow: 16384, maxTokens: 163840.
  • tools.deny: ["web_search", "web_fetch"] pour éviter les erreurs 402.

Orchestration via n8n et Contournement de l'Appel d'Outils

n8n relie Telegram → Whisper → Ollama → HA. Deux workflows :

  • Principal : Déclencheur Telegram → Whisper → Ollama → API HA → réponse.
  • Sous-workflow comme outil d'agent pour les appels HA.

Llama 3.1 8B a un support médiocre de l'appel d'outils : hallucinations, échoue à appeler les vrais outils. Solution — script update-ha-context.sh :

Google AdInline article slot
  • Récupère les données HA via mcporter (thermostats, température).
  • Écrit dans TOOLS.md.
  • Cron : /5 * /chemin/vers/update-ha-context.sh.

Le modèle voit le contexte actuel dans le prompt : "La température dans la chambre est de 19,5°C (cible 25°C)." Désactiver mcp-hass pour les modèles 8B.

Scripts d'Automatisation et Déploiement

Automatisation pour le déploiement et les mises à jour :

| Script | Objectif |

|--------|---------|

| update-server.sh | Copie .env, docker-compose, openclaw.json, mcporter.json, TOOLS.md. Exécute docker compose pull && up -d. |

| update-ha-context.sh | Met à jour TOOLS.md avec les données HA (cron toutes les 5 min). |

| test-openclaw.sh | Teste l'API Ollama (timeout 90 secondes). |

| approve-device.sh | Appairage d'appareil. |

| pre-commit | Bloque les commits de secrets (.env, tokens). |

Déploiement : SSHPASS=motdepasse ./scripts/update-server.sh vers [email protected].

mcporter nécessite mcporter.json dans data/workspace/config/ (copié par le script). Compétence : npx clawhub install mcp-hass.

Architecture sur Trois Hôtes

Distribution optimale de la charge :

  • VM Proxmox (GPU GTX 1060) : Ollama (llama3.1:8b), Whisper base, n8n. Tient dans 6 Go VRAM.
  • NUC : Docker OpenClaw (CPU uniquement).
  • Odroid : Home Assistant.

Flux de requête : Telegram/UI → OpenClaw → Ollama (TOOLS.md avec données HA) → réponse. Pas d'appel d'outils, pas de cloud.

Points Clés

  • Le GPU est essentiel pour Whisper : accélération 50× (0,5 sec vs 30 sec).
  • MCP avant intégration : sinon OpenClaw ne verra pas HA.
  • Contexte dans le prompt pour Llama 8B : update-ha-context.sh au lieu de l'appel d'outils.
  • HTTPS et appairage pour l'UI de Contrôle OpenClaw.
  • Deux workflows dans n8n : principal + outil d'agent.

— Editorial Team

Advertisement 728x90

Lire ensuite