Home Assistant mit Ollama integrieren
Was dieser Artikel über Home Assistant mit Ollama behandelt
- Wie Du Ollama als KI-Backend für Home Assistant einrichtest.
- Wie Du den lokalen Sprachassistenten mit Ollama nutzt.
- Wie Automatisierungen mit KI-Entscheidungen aussehen.
- Praxisbeispiele für natürliche Sprachbefehle und intelligente Steuerung.
- Best Practices für Performance und Datenschutz.
Einleitung: Home Assistant mit Ollama verständlich erklärt
Home Assistant hat einen eingebauten Sprachassistenten (Assist). Standardmäßig nutzt er Cloud-Dienste. Mit Ollama als Backend bleibt alles lokal: Du sprichst, Whisper transkribiert, Ollama versteht und entscheidet, Home Assistant führt aus. Keine Daten verlassen Dein Netzwerk.
Dieser Artikel richtet sich an Anwender, die Home Assistant mit lokaler KI verbinden wollen. Grundlagen findest Du in Home Assistant und Ollama.
Warum brauche ich Home Assistant mit Ollama?
Standard-Sprachassistenten (Alexa, Google) senden Deine Sprachbefehle in die Cloud. Home Assistant mit Ollama verarbeitet alles lokal: „Mach das Licht im Wohnzimmer an” wird von Whisper transkribiert, von Ollama interpretiert und von Home Assistant ausgeführt, ohne dass ein Byte Dein Haus verlässt.
Home Assistant mit Ollama kurz erklärt
Ollama wird als Conversation-Agent in Home Assistant eingebunden. Assist (der Sprachassistent) nutzt dann Ollama statt Cloud-Dienste. Zusätzlich kannst Du Ollama in Automatisierungen und Skripten für intelligente Entscheidungen nutzen.
Der Kerngedanke lautet: Lokale KI als Gehirn für Dein Smart Home.
Für wen ist dieser Artikel gedacht?
- Home-Assistant-Nutzer, die lokale KI wollen.
- Privacy-Bewusste, die keine Cloud-Sprachassistenten wollen.
- Self-Hoster, die Ollama im Smart Home nutzen.
- Tinkerer, die natürliche Sprachsteuerung bauen.
Vorkenntnisse in Home Assistant und Ollama sind hilfreich.
Wichtige Begriffe
- Home Assistant - Smart-Home-Plattform. Wann nützlich: die Basis.
- Assist - HA-Sprachassistent. Wann nützlich: für Sprachsteuerung.
- Ollama - Lokaler Modellserver. Wann nützlich: das KI-Backend.
- Whisper - Speech-to-Text. Wann nützlich: für Spracheingabe.
- Piper - Text-to-Speech. Wann nützlich: für Sprachausgabe.
- Conversation Agent - KI-Backend für Assist. Wann nützlich: die Verbindung.
- Wyoming - Protokoll für Sprachdienste. Wann nützlich: für Whisper/Piper.
Setup: Ollama als Conversation Agent
1. Ollama läuft
# Ollama läuft auf http://ollama:11434
# Modell laden:
ollama pull llama3.1
2. Ollama-Integration in HA
# configuration.yaml
ollama:
url: http://ollama:11434
Oder über die UI:
- Settings → Devices & Services → Add Integration
- „Ollama” suchen
- URL eingeben:
http://ollama:11434 - Modell wählen:
llama3.1
3. Assist konfigurieren
# configuration.yaml
conversation:
intents:
# Custom Intents hier
In der UI:
- Settings → Voice Assistants → Assist
- Conversation Agent: Ollama
- STT: Whisper (lokal)
- TTS: Piper (lokal)
Sprachassistent komplett lokal
Spracheingabe
│
▼
Whisper (STT) ──► Text
│
▼
Ollama (LLM) ──► Versteht Befehl
│
▼
Home Assistant ──► Führt aus
│
▼
Piper (TTS) ──► Sprachausgabe
Wyoming-Container für Whisper und Piper
version: "3.8"
services:
whisper:
image: rhasspy/wyoming-whisper:latest
container_name: whisper
restart: unless-stopped
ports:
- "10300:10300"
volumes:
- whisper_data:/data
command: --model small --language de
networks:
- smarthome
piper:
image: rhasspy/wyoming-piper:latest
container_name: piper
restart: unless-stopped
ports:
- "10200:10200"
volumes:
- piper_data:/data
command: --voice de_DE-thorsten-high
networks:
- smarthome
ollama:
image: ollama/ollama:latest
container_name: ollama
restart: unless-stopped
ports:
- "11434:11434"
volumes:
- ollama_data:/root/.ollama
networks:
- smarthome
homeassistant:
image: homeassistant/home-assistant:latest
container_name: homeassistant
restart: unless-stopped
ports:
- "8123:8123"
volumes:
- ha_config:/config
networks:
- smarthome
volumes:
whisper_data:
piper_data:
ollama_data:
ha_config:
networks:
smarthome:
driver: bridge
Praxisbeispiel 1: Natürliche Sprachbefehle
# Home Assistant Automation
automation:
- alias: "KI-Lichtsteuerung"
trigger:
- platform: conversation
command:
- "Mach das Licht [im] {room} [an|aus]"
action:
- service: light.toggle
target:
area_id: "{{ trigger.slots.room }}"
Oder komplexer mit Ollama:
automation:
- alias: "KI-Befehl interpretieren"
trigger:
- platform: event
event_type: voice_command
action:
- service: ollama.generate
data:
prompt: "Interpretiere: '{{ trigger.event.data.command }}'
Verfügbare Aktionen: licht_an, licht_aus, temperatur,
musik_an, musik_aus, rollo_hoch, rollo_runter
Antworte als JSON: {action, entity, params}"
response_variable: ki_response
- choose:
- conditions: "{{ 'licht' in ki_response.text }}"
sequence:
- service: light.toggle
data:
entity_id: "{{ ki_response.entity }}"
Praxisbeispiel 2: Intelligente Temperatursteuerung
automation:
- alias: "KI-Klima"
trigger:
- platform: time_pattern
minutes: "/15"
action:
- service: ollama.generate
data:
prompt: |
Aktuelle Daten:
- Außentemperatur: {{ states('sensor.aussentemperatur') }}°C
- Innentemperatur: {{ states('sensor.innentemperatur') }}°C
- Luftfeuchtigkeit: {{ states('sensor.luftfeuchtigkeit') }}%
- Anwesend: {{ states('person.max') }}
- Uhrzeit: {{ now().strftime('%H:%M') }}
- Tag: {{ now().strftime('%A') }}
Was sollte die Heizung/Klima tun?
Antworte: heizen, kuehlen, aus, oder lueften
+ kurze Begründung
response_variable: ki_decision
- choose:
- conditions: "{{ 'heizen' in ki_decision.text }}"
sequence:
- service: climate.set_hvac_mode
data:
hvac_mode: heat
- conditions: "{{ 'kuehlen' in ki_decision.text }}"
sequence:
- service: climate.set_hvac_mode
data:
hvac_mode: cool
Praxisbeispiel 3: Täglicher Briefing
automation:
- alias: "Morgen-Briefing"
trigger:
- platform: time
at: "07:30:00"
action:
- service: ollama.generate
data:
prompt: |
Erstelle ein kurzes Morgen-Briefing:
- Wetter: {{ states('weather.home') }}
- Außentemperatur: {{ states('sensor.aussentemperatur') }}°C
- Heute: {{ now().strftime('%A, %d.%m.%Y') }}
- Kalender: {{ states('calendar.personal') }}
- Strompreis: {{ states('sensor.strompreis') }} Cent/kWh
Fasse alles in 3 Sätzen zusammen.
response_variable: briefing
- service: notify.notify
data:
title: "Morgen-Briefing"
message: "{{ briefing.text }}"
- service: tts.speak
data:
message: "{{ briefing.text }}"
media_player_entity_id: media_player.kueche
Praxisbeispiel 4: Sicherheits-Analyse
automation:
- alias: "KI-Sicherheitsanalyse"
trigger:
- platform: state
entity_id: binary_sensor.bewegung
to: "on"
condition:
- condition: time
after: "23:00"
before: "06:00"
action:
- service: ollama.generate
data:
prompt: |
Nächtliche Bewegung erkannt:
- Sensor: {{ trigger.entity_id }}
- Zeit: {{ now().strftime('%H:%M') }}
- Personen zu Hause: {{ states('group.personen') }}
- Letzte Alarme: {{ states('sensor.letzte_alarme') }}
Ist das verdächtig? Antworte: normal/verdaechtig + Grund
response_variable: analyse
- choose:
- conditions: "{{ 'verdaechtig' in analyse.text }}"
sequence:
- service: notify.notify
data:
title: "Sicherheitsalarm"
message: "{{ analyse.text }}"
- service: camera.snapshot
data:
entity_id: camera.flur
Sicherheitshinweise
- Alles lokal: Ollama, Whisper, Piper, alle lokal. Keine Cloud nötig.
- Token: HA-Token für Ollama-Integration minimal halten.
- Validierung: KI-Entscheidungen für kritische Aktionen (Tür öffnen, Alarm) sollten von Menschen bestätigt werden. Siehe Menschliche Freigabe.
- Logging: Protokolliere KI-Entscheidungen. Siehe Protokollierung.
Typische Stolpersteine
- Modell zu langsam: Große Modelle (>13B) sind langsam für Echtzeit-Sprache. Nutze llama3.1:8b oder phi3.
- Whisper-Modell:
smallist ein guter Kompromiss.largeist genauer, aber langsamer. - Deutsche Stimme: Für Piper nutze
de_DE-thorsten-highfür gute Qualität. - Kontext zu lang: Zu viele Entities im Prompt überlasten das Modell. Filtere relevante.
- KI falsch interpretiert: „Licht an” kann mehrere Entities betreffen. Präzise Prompts mit Entity-Liste.
Weiterführende Links
- Node-RED Home Assistant - Node-RED + HA.
- Heimautomatisierung - Smart Home mit KI.
- Ollama - Modellserver.
- Whisper - Speech-to-Text.
- Sprachassistenten - Lokale Assistenten.
- Ollama Integrationen - Andere Tools.
Key Takeaways:
- Home Assistant + Ollama = komplett lokaler Sprachassistent.
- Whisper für STT, Ollama für Verständnis, Piper für TTS.
- KI in Automatisierungen für intelligente Entscheidungen.
- Alles lokal, keine Cloud, keine Daten raus.
- Kleine Modelle (8B) für Echtzeit, große für Analyse.
FAQ
Wie verbinde ich Ollama mit Home Assistant?
Kann ich den Sprachassistenten komplett lokal betreiben?
Welches Ollama-Modell für Smart Home?
Welches Whisper-Modell?
Wie schnell ist die Sprachsteuerung?
Bleiben meine Daten privat?
Welche Hardware brauche ich?
Was, wenn die KI falsch versteht?
Quellen und weiterführende Literatur
- Home Assistant Ollama Integration - Offizielle Integration.
- Home Assistant Assist - Sprachassistent.
- Wyoming - Sprachdienste-Protokoll.
- Ollama - Lokaler Modellserver.


