I run that command, and then restart rhasspy from the web and from Docker, but version 10 still comes out from the web and not 11.
Restarting will restart the old container, not 2.5.11
What command do you use?
The best way to do this is to first stop and remove the old container and then start the new one. Something like:
$ docker pull ...
$ docker stop rhasspy
$ docker rm rhasspy
$ docker run ...
I tried frequent words as low as 1, same result.
A configuration option for training timeout length would be great nonetheless. I tried setting app.config['BODY_TIMEOUT']
in Quart to extend the training timeout but it didn’t seem to take/had no effect - not sure why, any ideas? I had hoped to see quite how long training would take with frequent words set as 10.
Did you happen to see any other errors in the logs before the timeout? I did use some different Kaldi features to handle unknown words, so maybe something is also wrong there.
There’s a hard-coded training timeout of 600 seconds (10 minutes) currently. If it’s still taking that long with a value of 1, I don’t think it’s going to work great for most people in the Pi.
One option is to do the second, third, etc. word thing I mentioned. Another might be to just create a separate, low probability “catch all” intent that is made up of these frequent words. That should add almost no time to the training.
Hi,
I just came over this older Post:
Could you, if not already done, add Speex to the Container?
Thanks Kuumaur
Just wondering when the 64 debs might be available.
No rush just curious
Working on it this week
is there a way to get the best of both options? i really like the exact match on my sentences but also want wildcard on the end of them like uh: define (word). I was able to get it to work with the last image but idk what to do now. in one of these patches i swear it was just perfect. It would get the sentences and any extra words I’d throw in. It would just send it in the raw text.
I actually do know how to do this now. I will need to extend the templating language with a “wildcard” symbol. Maybe just “*”?
If I use the same trick as the “unknown words”, then *
would match any single word from the base dictionary. Unfortunately, multiple wildcards in a row would not be subject to the statistics of the base language model (so “the big dog” would be just as likely as “dog big the”).
Thoughts?
multiple words i dont need. that’s just too much. u need like cloud huge ai for that. I’m just looking for one word. Sometimes i’ll ask google a couple words to throw in its search engine too. Like i would just like the ability to choose at which point open transcription starts? Idk. I mean its pretty good at recognizing my sentences with fast speed too. If we want to throw random words in for questions though it just is all over the place. If i tweak the older version just open transcription with 0.3 confidence. It will half the time get what I’m saying i think. Idk how we could do it but unless there’s huge priority. We are really close to getting there. I know bash maybe i could help u out. Would have to look at the code base. I mean I’m pretty surprised how well i got it working considering its completely offline. New voices are a huge step forward btw. good job. sound a lot better. even if it takes an extra 2-3 seconds. On a raspberry pi 4 4gb
Update
The Docker images have been updated, and the Debian packages for 2.5.11 are now available!
Changes are described below:
Unknown Words
Based on feedback, I’ve modified the “unknown words” feature for Kaldi. To reduce training time with it enabled, I now create a single “unknown sentence” path in the grammar. Speaking something outside your sentences.ini
should produce something like <unk> <unk> ...
up to a maximum number of words.
You can adjust the probability of the “unknown sentence” (default is 1e-5). If you end up with too many false positives for unknown words, try lowering the probability.
Cancel Word
The old version of “unknown words” didn’t work, but I realized it was perfect for a “cancel” word! So now in the Kaldi settings, you can set a special word that will immediately cancel the current voice command. Just make sure it’s not a word you’re using in your intents
So if you were to set the “cancel” word to “terminate”, you could say something like:
turn on the terminate
and Kaldi will return:
turn on the <unk>
which will cause fsticuffs
to report a failed recognition. You can set the cancel word to whatever you like (I wouldn’t use a word from your intents), and change the probability.
I just pulled the new Docker Image.
Thanks for all the work.
Iam looking for the “cancel” word at Kaldi settings, but didnt found it. Are there some post tasks necessary to bring up the new features?
Btw.: Did you already add the german Voice “kerstin” to 2.5.11?
You’re welcome!
Did you pull the specific 2.5.11
version? I haven’t updated latest
yet. Hopefully I didn’t mess something up. Either way, I’ll be pushing a new update in the next few days.
No, but I’m working on this today. There will be a total of 50 voices for Larynx now, thanks to volunteers
I actually have the same problem as @Enc3ph4l0n with my raspberry pi 4 (64bit). I will not enable the “unknown” functionality right now.
The problem I am facing, is that rhasspy sometimes wakes up and turn on/off the light, when I am watching TV.
For the wakeup, I am still trying to adjust snowboy settings; However, for the intent recognization, can you explain how to create a separate “catch all” intent?
With the new unknown words functionality, the “catch all” intent is effectively the “not recognized” message. In the Kaldi settings, there should be a "Replace unknown words with " checkbox that you can enable. There are a few other settings to tweak, the unknown words probability and max unknown words (max length of the “unknown” sentence).
When will the new update talked about in the august 20th post be available?
And when will the next “official” release be available, if it is only a preview released next time?
Hi @WallyDW, I’ve released 2.5.11 via Docker and on Github. I haven’t made a post about it just yet, since I’m behind on some other stuff.
I will soon
Quite OK. I know how real life can interfere with the important stuff.
It just sounded like the next release was around the corner. Guess, I have to round around corners some more.
If you pull rhasspy/rhasspy
via Docker or grab the latest Debian packages, it should all be there