Streams microphone data from a PyAudio device (Documentation)


(outside ASR listening)

(output to different siteId)

Starts an arecord process locally and reads audio data from its standard out (Documentation)

(outside ASR listening)

Calls an external program to record raw audio (Documentation)

(Hertz)
(bytes)



(outside ASR listening)
(output to different siteId)

Expects audio frames from a custom external service that supports the Hermes Protocol (Documentation)


Note: statistics will not work if UDP audio is enabled

Connecting to websocket...

Listens for a keyphrase using pocketsphinx (Documentation)

3-4 syllables recommended

(outside ASR listening)

Listens for one or more wake words with snowboy (Documentation)

Put models in /profiles/it/snowboy
(comma-separated)

See documentation for how to use multiple wake words.


(outside ASR listening)

Listens for a wake word with porcupine (Documentation)

Put models in /profiles/it/porcupine
(comma-separated)

(outside ASR listening)

Listens for a wake word with Mycroft Precise (Documentation)

Put models in /profiles/it/precise

(outside ASR listening)

Listens for a wake word with Raven (Documentation)

  • Template Directory: profiles/it/raven
Enabled Keyword Example 1 Example 2 Example 3  
 

Default Settings
(1-3)

(outside ASR listening)

Calls a custom external program and wakes up when the program exits (Documentation)

Expects hotword detections from an external service that supports the Hermes Protocol (Documentation)

(comma-separated)

Does speech recognition with CMU's pocketsphinx. Less accurate, but supports many languages (Documentation)

  • Acoustic Model: profiles/it/acoustic_model
  • Dictionary: profiles/it/dictionary.txt
  • Language Model: profiles/it/language_model.txt
(0-1, 1 is most strict)
  • Base Dictionary: profiles/it/base_dictionary.txt
  • Base Language Model: profiles/it/base_language_model.txt
(0-1, 0 to disable)
  • Base Language Model FST: profiles/it/base_language_model.fst

Does speech recognition with Kaldi. Fast and accurate for trained sentences (Documentation)

  • Model Root: /profiles/it/kaldi/model
  • Graph Directory: <model_root>/graph
(re-train required)
(0-1, default: 1e-5)
(0-1, default: 0.5)
(words in longest possible misspoken sentence)
(used to catch misspoken words)
(word used to cancel an intent at any time)
(0-1, default: 1e-2)
(0-1, 1 is most strict)
  • Base Dictionary: /profiles/it/kaldi/base_dictionary.txt
  • Base Graph Directory: profiles/it/base_graph
  • Base Language Model: profiles/it/kaldi/base_language_model.txt
(0-1, 0 to disable)
  • Base Language Model FST: profiles/it/base_language_model.fst

Does speech recognition with Mozilla's DeepSpeech version 0.9. Slower on some hardware, but often more accurate (Documentation)

  • Acoustic Model: profiles/it/deepspeech/model/0.9/output_graph.pbmm
  • Language Model: profiles/it/deepspeech/lm.binary
  • Scorer: profiles/it/deepspeech/scorer
(0-1, 1 is most strict)
  • Base Language Model: profiles/it/deepspeech/model/0.9/base_lm.binary
  • Base Scorer: profiles/it/deepspeech/model/0.9/base.scorer
(0-1, 0 to disable)
  • Base Language Model FST: profiles/it/base_language_model.fst

(comma-separated)

Does speech recognition with Vosk. Fast and accurate for open transcription (Documentation)

  • Model Root: profiles/it/vosk/model
  • Words JSON: profiles/it/vosk/words.json
(0-1, 1 is most strict)

POSTs WAV audio to a remote HTTP endpoint, expecting a plain text transcription back (Documentation)

Example: http://localhost:12101//rhasspy/api/speech-to-text
(0-1, 1 is most strict)

Calls an external program with WAV audio on standard input and expects a text transcription on standard output (Documentation)

(0-1, 1 is most strict)

(comma-separated)

Expects an external service that supports the Hermes Protocol to do speech to text (Documentation)


(comma-separated)

Voice Command Settings
(1-3)
(audio above threshold is speech)
(audio below threshold is speech)
(set from audio input if no value)
(seconds)
(seconds)
(seconds or empty)
(seconds)
(seconds)
(seconds)
  • Intent Graph: /profiles/it/intent_graph.pickle.gz
  • Stop Words: /usr/lib/rhasspy/rhasspy-profile/rhasspyprofile/profiles/it/stop_words.txt
(input word that always causes recognition failure)

(comma-separated)

Finds the closest matching intent using rapidfuzz library (Documentation)

(0-1, 1 is most strict)

(comma-separated)

Note: requires an external service (installation)

Example: http://localhost:5005
  • Examples File: profiles/it/intent_examples.md
  • Intent Graph: /profiles/it/intent_graph.pickle.gz

(comma-separated)

Uses Snips NLU to flexibly recognize sentences (Documentation)

  • Engine: profiles/it/snips/engine
  • Dataset: profiles/it/snips/dataset.yaml
Supported Languages: de, en, es, fr, it, ja, ko, pt_br, pt_pt, zh

(comma-separated)

POSTs plain text to an HTTP endpoint and receives intent JSON back (Documentation)

Example: http://localhost:12101//rhasspy/api/text-to-intent

(comma-separated)

Calls an external program with text on standard input and expects intent JSON on standard output (Documentation)


(comma-separated)

Expects an external service that supports the Hermes Protocol to recognize intents (Documentation)

Uses eSpeak to speak sentences. Sounds robotic, but supports many languages and locales (Documentation).

Uses SVOX's picotts to speak sentences (Documentation)

Uses an improved fork of picoTTS to speak sentences (Documentation)

Uses FestVox's flite to speak sentences (Documentation)

Uses a remote MaryTTS web server to speak sentences (Documentation)

Note: requires an external service (Docker image available)

Uses Google's WaveNet to speak sentences (Documentation)

Note: requires an internet connection and a Google account

  • Credentials: profiles/it/tts/googlewavenet/credentials.json
  • WAV cache: profiles/it/tts/googlewavenet/cache

Uses a remote OpenTTS web server to speak sentences (Documentation)

Note: requires an external service (Docker image available)

Uses Larynx to speak sentences (Documentation)

POSTs text to a remote HTTP endpoint and plays received WAV audio (Documentation)

Example: http://localhost:12101//rhasspy/api/text-to-speech

Calls an external program with text on standard input and plays WAV audio from standard output (Documentation)


Expects an external service that supports the Hermes Protocol to speak sentences (Documentation)

(comma-separated)

Plays WAV files on the local device by calling the aplay command (Documentation)

POSTs WAV audio to a remote HTTP endpoint (Documentation)

Calls an external program with WAV audio on standard input (Documentation)

Expects an external service that supports the Hermes Protocol to play audio (Documentation)

Makes Rhasspy behave like a typical voice assistant, automatically listening for voice commands after hotword detections and recognizing intents from them (Documentation)

(comma-separated)

Expects a custom external service that supports the Hermes Protocol to do something with hotword detections, etc. (Documentation)

Sends intents or events directly to Home Assistant or Hass.io (Documentation)

Address of your Home Assistant server
Long-lived access token (automatically filled in Hass.IO)
Home Assistant password (deprecated)

Events will be named

Requires the intent component and intent scripts in your configuration.yaml

POSTs intent JSON to a remote HTTP endpoint (Documentation)

Calls a custom external program with intent JSON on standard input (Documentation)

(comma-separated)
Sounds

WAV files to play when Rhasspy wakes up and is finished recording a voice command.

Note: dialogue management must be set to "Rhasspy" to hear these sounds

Use ${RHASSPY_PROFILE_DIR} environment variable for your profile directory.

(empty to disable)
(empty to disable)
(empty to disable)
Certificates

Files needed for using HTTPS with your Rhasspy server or Home Assistant

Note: all paths should be absolute

Use ${RHASSPY_PROFILE_DIR} environment variable for your profile directory.

Private key file (optional)