Babble und Rhasspy
An dieser Seite wird momentan noch gearbeitet. |
Einleitung
Rhasspy ist eine Open Source Server-Lösung für Spracherkennung und Sprachsteuerung, welche auf einem RaspBerry Pi oder einem anderen Debian-basierten Serversystem lauffähig ist. Es handelt sich dabei um eine Sammlung von Programmen (=Skripten in der Python-Sprechweise), die unter einer einheitlichen und sehr flexiblen Benutzungsoberfläche zusammengefasst sind. Die Besonderheit an Rhasspy ist, dass es nach der Installation komplett offline betrieben werden kann. Es werden also keine Daten an einen Server im Internet geschickt, und für den Betrieb nur für FHEM werden nur moderate Hardwareanforderungen gestellt - ein aktueller Raspberry Pi ab Modell 3B+ sollte in der Regel genügen.
Die Anbindung weiterer Räume ist über sogenannte "Satelliten" möglich. Dies kann z.B. ein Pi Zero mit Mikro und Lautsprecher sein, ein ESP32 mit entsprechender Hardware oder ein Mobiltelefon mit Android und der entsprechenden App.
Rhasspy besteht aus vielen unterschiedlichen Modulen (Hot-Word Erkennung, Text-to-Speech, Speech-to-Text, Intent Erkennung, etc.). Alle diese Module kommunizieren miteinander über das MQTT-Protokoll.
Das Modul 95_Babble.pm stellt eine komfortable Oberfläche bereit, um per Webinterface ein Natural Language User Interface (NLUI) zu konfigurieren. Mit ein paar zusätzlichen Codezeilen kann Babble ganz komfortable mit einem Rhasspy-Server zusammenarbeiten
Darüber hinaus stellt Babble eine Verbindung zu einem RiveScript-Modul her, falls dies in der lokalen Perl-Installation vorhanden ist. RiveScript ist eine einfache Programmiersprache für ChatBots, Babble realisiert also für die Ansprache von FHEM auch einen ChatBot.
Wakeword-Erkennung
Das Erkennen einen Wakewords, mit welchem die Spracherkennung des Systems "aufgeweckt" wird, ist ein Schlüsselfaktor. Im Prinzip lässt sich das auch über Alexa oder Google Home erreichen - allerdings bieten diese nur eingeschränkte Möglichkeiten für das Wakeword. Verwendet man dazu ein anderes System, kann dieses selbst mit einem Wakeword trainiert werden. Bisher gibt es aber noch keinen Standard für die Anbindung eines (oder mehrerer) solcher System an FHEM. Rhasspy ist an dieser Stelle sehr zu empfehlen, weil sowohl die Ankopplung einer Wakeword-Engine an das Soundsystem des Computers, als auch die Auswahl der Wakeword Engine komfortabel über das Web Frontend von Rhasspy möglich ist.
Spracherkennung
Sprachausgabe von Rhasspy direkt oder via FHEM ?
Rhasspy bietet verschiedene integrierte Open Source Sprach-Synthesizer an
- Vorteile
- Cloud-frei
- Nachteile
- Schlechte Sprachqualität
- Steuerung von Ausgabeparametern wie z.B. eine zur Nachtzeit verringerte Lautstärke, nur über externen Aufwand (=Fernsteuerung von Rhasspy) möglich
Es empfiehlt sich daher, die Sprachausgabe von Rhasspy komplett an FHEM zu übergeben.