About

Rhasspy was created and is currently maintained by Michael Hansen.

Special thanks to:

Motivation

A typical voice assistant (Alexa, Google Home, etc.) solves a number of important problems:

  1. Deciding when to record audio (wake word)
  2. Listening for voice commands (command listener)
  3. Transcribing command/question (speech to text)
  4. Interpreting the speaker's intent from the text (intent recognition)
  5. Fulfilling the speaker's intent (intent handling)

Rhasspy provides offline, private solutions to problems 1-4 using off-the-shelf tools. These tools are:

For problem 5 (fulfilling the speaker's intent), Rhasspy works with external home automation software, such as Home Assistant's built-in automation capability or a Node-RED flow.

For each intent you define, Rhasspy emits a JSON event that can do anything Home Assistant can do (toggle switches, call REST services, etc.). This means that Rhasspy will do very little out of the box compared to other voice assistants, but there are also be no limits to what can be done.

Supporting Tools

The following tools/libraries help to support Rhasspy: