LW IT Solutions
« Blog Overview /Smart Home/Tutorials / Lokale Sprachsteuerung in Home Assistant mit Whisper...
This post in other languages:

Lokale Sprachsteuerung in Home Assistant mit Whisper & Piper

Teil 4 von 6 der Reihe Home Assistant ohne Cloud

Lokale Sprachsteuerung in Home Assistant mit Whisper & Piper
Inhalt
  1. 1. Architektonische Grundlagen: Die Wyoming-Sprachpipeline
  2. 2. Schritt-für-Schritt-Installation der Whisper- & Piper-Add-ons
  3. 3. Schritt-für-Schritt-Konfiguration der Assist-Pipeline
  4. 4. Zusammenfassung & Mehrwert
  5. Quellen

Cloud-abhängige Sprachassistenten wie Amazon Alexa, Google Assistant und Apple Siri basieren auf externen Servern für die Spracherkennung (ASR), die Aktivierungserkennung und die Verarbeitung natürlicher Sprache (NLP). Diese Abhängigkeit verursacht Latenzen, schafft Anfälligkeiten bei Internetausfällen und wirft erhebliche Datenschutzbedenken bezüglich permanenter akustischer Überwachung auf. Die Implementierung einer vollständig lokalen Sprachsteuerungsarchitektur in Home Assistant über das Wyoming-Protokoll – durch die Kombination von OpenAI Whisper für Speech-to-Text (STT) und Piper für neuronales Text-to-Speech (TTS) – führt Sprachbefehle in Bruchteilen von Sekunden aus, komplett innerhalb des lokalen Netzwerks.

1. Architektonische Grundlagen: Die Wyoming-Sprachpipeline

Die lokale Sprachverarbeitung in Home Assistant operiert als modulare, entkoppelte Pipeline, in der Audioströme sequenziell ohne externe API-Aufrufe verarbeitet werden:

  • Wake-Word-Erkennung (openWakeWord / microWakeWord): Leichte KI-Modelle analysieren kontinuierlich die Mikrofoneingaben direkt auf der Satelliten-Hardware (z. B. ESP32-S3), um die Pipeline bei Erkennung des Aktivierungswortes zu starten.
  • Speech-to-Text (Whisper): Audiopakete werden über das Wyoming-Protokoll an den lokalen Whisper-Container gestreamt und in strukturierte Zeichenketten transkribiert.
  • Absichtserkennung (Home Assistant Assist): Natürliche Sprachparser gleichen die transkribierte Zeichenkette mit definierten Entitäten, Räumen und Automatisierungs-Aliasnamen ab.
  • Text-to-Speech (Piper): Der Antworttext wird durch Piper in eine natürlich klingende Sprachausgabe synthetisiert und an den Lautsprecher des Satelliten zurückgestreamt.
Kreislauf der lokalen Sprachsteuerung vom ESPHome-Satelliten über Whisper und Home Assistant bis zur Antwort über Piper
Die Wyoming-Pipeline ist ein Kreislauf: Der Satellit hört, Whisper macht Text daraus, Home Assistant handelt, und Piper spricht die Antwort auf demselben Weg zurück — vollständig im lokalen Netz.

2. Schritt-für-Schritt-Installation der Whisper- & Piper-Add-ons

Die Bereitstellung lokaler Sprachdienste erfordert die Installation dedizierter Container-Add-ons unter Home Assistant OS oder in überwachten Docker-Umgebungen:

  1. Installation des Whisper-Add-ons: Unter Einstellungen > Add-ons > Add-on Store ist nach Whisper zu suchen. Bei der Konfiguration muss die passende Modellgröße gewählt werden: tiny-int8 oder base für reine CPU-Server (Raspberry Pi 4/5) oder medium für Systeme mit GPU-Beschleunigung oder Google Coral TPUs.
  2. Installation des Piper-Add-ons: Nach der Installation des Piper-Add-ons wird im Konfigurationsbereich das gewünschte neuronale Sprachmodell (z. B. de_DE-thorsten-medium für Deutsch) ausgewählt und der Dienst gestartet.
  3. Konfiguration der Wyoming-Integration: Unter Einstellungen > Geräte & Dienste > Integration hinzufügen wird nach Wyoming Protocol gesucht und sowohl Whisper (Standardport 10300) als auch Piper (Standardport 10200) hinzugefügt.

3. Schritt-für-Schritt-Konfiguration der Assist-Pipeline

Sobald die Verarbeitungsmodule integriert sind, muss eine einheitliche Sprachassistenten-Pipeline eingerichtet werden:

  1. Erstellung einer Sprachpipeline: Unter Einstellungen > Sprachassistenten > Pipeline hinzufügen ist ein aussagekräftiger Name wie Lokaler Assist - Deutsch zu vergeben.
  2. Zuweisung lokaler Engines: Als Sprache-zu-Text-Engine wird Whisper, als Konversationsagent Home Assistant und als Text-zu-Sprache-Engine Piper konfiguriert.
  3. Aktivierung des lokalen Wake-Words: Für die lokale Aktivierungserkennung wird openWakeWord gewählt und ein passendes Schlüsselwort (z. B. Okay Nabbu oder Hey Jarvis) festgelegt.

Produktionsreifes ESPHome-Satelliten-YAML

Um Sprache aufzunehmen und Antworten ohne Cloud-Hardware auszugeben, kann ein ESP32-S3-Sprachsatellit (z. B. ESP32-S3-BOX-3 oder Atom Echo) mit folgender ESPHome-Konfiguration betrieben werden:

esphome:
  name: "voice-satellite-livingroom"
  friendly_name: "Living Room Voice Satellite"

esp32:
  board: esp32-s3-devkitc-1
  framework:
    type: esp-idf

api:
  encryption:
    key: "GENERATE_YOUR_KEY_HERE"

i2s_audio:
  - id: i2s_in
    i2s_lrclk_pin: GPIO4
    i2s_bclk_pin: GPIO5
  - id: i2s_out
    i2s_lrclk_pin: GPIO15
    i2s_bclk_pin: GPIO16

microphone:
  - platform: i2s_audio
    id: sat_mic
    i2s_audio_id: i2s_in
    i2s_din_pin: GPIO6
    adc_type: external
    pdm: false

speaker:
  - platform: i2s_audio
    id: sat_speaker
    i2s_audio_id: i2s_out
    i2s_dout_pin: GPIO17

voice_assistant:
  id: va_pipeline
  microphone: sat_mic
  speaker: sat_speaker
  use_wake_word: true
  noise_suppression_level: 2
  auto_gain: 31dBFS
  volume_multiplier: 2.0

4. Zusammenfassung & Mehrwert

Was sich damit erreichen lässt: Die erfolgreiche Bereitstellung einer vollständig autonomen, lokalen Sprachsteuerungsarchitektur in Home Assistant mit dem Wyoming-Protokoll, Whisper STT, Piper TTS und ESPHome-basierter Hardware-Satelliten.

Resultierender Mehrwert: Die Sprachsteuerung im Smart Home wird komplett unabhängig von Cloud-Servern Dritter. Privatsphäre und akustische Telemetriedaten bleiben strikt innerhalb des lokalen Netzwerks isoliert, was jegliches Profiling und Datenabfischen ausschließt. Darüber hinaus entfällt das Routing über externe Server, wodurch Sprachbefehle in weniger als einer Sekunde verarbeitet werden und eine 100-prozentige Verfügbarkeit auch bei Internetausfällen garantiert ist.

Home Assistant ohne Cloud

  1. Zigbee2MQTT vs. ZHA: Aufbau eines ausfallsicheren Mesh-Netzwerks in Home Assistant
  2. ESPHome und ESP32 in der Praxis: Eigene Cloud-freie Umweltsensoren entwickeln
  3. Präsenzerkennung 2.0: mmWave-Radare (LD2410/LD2450) in der Lichtautomatisierung
  4. Lokale Sprachsteuerung in Home Assistant mit Whisper & Piper
  5. WireGuard & Tailscale DMZ: Sicherer externer Zugriff auf Home Assistant und eigene Server
  6. Lokales Energiemanagement: Integration von PV-Wechselrichtern und Batteriespeichern über Modbus TCP
Lukas Wojcik

Lukas Wojcik

Systems architect and technology enthusiast specializing in scalable tracking solutions, GMP Stack (GA4 & GTM), and robust backend architectures. Advocate for clean code and privacy-first design.

Get in Touch

Briefly describe your project or inquiry for a tailored response. This site is protected by reCAPTCHA.

Kommentar schreiben

Die E-Mail-Adresse wird nicht veröffentlicht. Pflichtfelder sind mit einem Stern versehen.

ALL ARTICLES & CATEGORIES

CCTV

Diese Rubrik per RSS verfolgen

Cloud & AI

Diese Rubrik per RSS verfolgen

Data Privacy

Alle 12 Artikel dieser Rubrik Diese Rubrik per RSS verfolgen

Digital Analytics

Alle 47 Artikel dieser Rubrik Diese Rubrik per RSS verfolgen

Digital Marketing

Alle 25 Artikel dieser Rubrik Diese Rubrik per RSS verfolgen

IT & Networks

Alle 16 Artikel dieser Rubrik Diese Rubrik per RSS verfolgen

Raspberry Pi

Diese Rubrik per RSS verfolgen

Smart Home

Alle 17 Artikel dieser Rubrik Diese Rubrik per RSS verfolgen

Web Entwicklung

Diese Rubrik per RSS verfolgen

WordPress-Plugins & Tricks

Diese Rubrik per RSS verfolgen