I ran into your really cool assistant when looking around after using snips, rhasspy, rasa and so on. With some tweaks I got it running in my environment. But there is a big drawback, which is a show stopper for me. I have plenty of devices of the same type in each room. Typically there are about 6 to 10 lights, each with different names in every room. Multiple main lights and multiple ambient lights…
With snips or rhasspy I simply trained a custom model for ASR and NLU/INTENTS which works with my lights (“Deckenlicht, Wandlicht, Treppenlicht, Bodenlicht, Ambiente Schräge, Spiegellicht, …”). I’ve found no way to do this with SEPIA. Am I simply missing the point?
I am able to train the Kaldi asr, which I did already, but NLU won’t get it. Ok, I could click “Teach it” on every sentence, but this would be a very very lengthy process.
You already implemented tags in your openhab adapter (sepia-type, …), so why not implement another tag “sepia-synonym” which automatically trains the NLU? This is the way I did slot injection on snips or training rasa in rhasspy.
Another really cool idea would be an mqtt adapter for NLU (like hermes). Publishing a text to it and receive the intent with slots and propabilities. I use an telegram bot for chatting with my “Home”, which would attach quite easy to such an connector.
At the moment I am using custom RPi3a/Respeaker4 devices in each room for voice interaction, while using a Sonos speaker in each room as Speaker-Device for my assistant. The sonos service subscribes to mqtt-protocol and parses the action to get the room to speak the text to. This service also does the tts part.
Where could I attach this sonos service to you sepia server? Probably I need to modify the tts module… but how to get it persistent to updates?