Rhasspy 2.5 Pre-Release

Yes, I actually have one already built but not updated. I haven’t figured out how to include it in the main Docker manifest without conflicting with the armv7l image.

The Docker image is slightly different than rhasspy-satellite since it includes the ability to do training and speech to text with Pocketsphinx.

2 Likes

All: as I track down and squash bugs, it’s becoming clear that I need to move Rhasspy 2.5 to Python 3.7. Does anyone see that being a problem now that buster comes with 3.7?

1 Like

No problem on any system I run here.

1 Like

I should point out this only affects those running Rhasspy outside of Docker :slight_smile:

1 Like

No problem for me either.

That’s exactly what I did as well as mentioned on the GitHub page :thinking:

Thank you for the clarification. I’ll keep digging.

Great. I tried installing and running the rhasspy/rhasspy:2.5.0-pre image on my Pi Zero without luck. Looking forward to whatever solution you can come up with. Docker just makes life so much easier and it would be amazing to deploy Rhasspy on a few satellites around my house!

@synesthesiam, I am currently seeing the following error:
[ERROR:2020-03-26 19:22:20,756] rhasspyasr_kaldi_hermes: train
Traceback (most recent call last):
File “/home/vandaag/rhasspy-voltron/rhasspy-asr-kaldi-hermes/rhasspyasr_kaldi_hermes/init.py”, line 477, in handle_train
missing_words_path=self.unknown_words,
File “/home/vandaag/rhasspy-voltron/rhasspy-asr-kaldi/rhasspyasr_kaldi/train.py”, line 85, in train
model_dir, graph_dir, dictionary, language_model, kaldi_dir=kaldi_dir
File “/home/vandaag/rhasspy-voltron/rhasspy-asr-kaldi/rhasspyasr_kaldi/train.py”, line 183, in train_kaldi
subprocess.check_call(prepare_lang, cwd=model_dir, env=extended_env)
File “/usr/lib/python3.7/subprocess.py”, line 347, in check_call
raise CalledProcessError(retcode, cmd)

This is when I try to train rhasspy for speech to text with the use of kaldi using an nl profile.

I did a full reinstall with a git clone --recurse-submodules https://github.com/rhasspy/rhasspy-voltron

Any suggestions?

@geoffrey whats the gcc version on your device? I just figured out that in travis the issue with rapidfuzz was that it used gcc-5 which did not support C++17 yet.

I’m no expert at all, but it seems the error indicates a missing file. In my Dutch profile I have the following file:

profiles/nl/kaldi_unknown_words.txt

Perhaps check if you stil have that and in case it is missing, try creating it manually.

Not sure if the following output is correct, but I executed the command gcc -v

gcc version 8.3.0 (Raspbian 8.3.0-6+rpi1)

Hm this one has C++17 support already. I suppose I need to test a bit around on the pi aswell then :slight_smile:

Google Wavenet isnt supported in 2.5?

I just installed 2.5 on my pi4 with Matrix voice. (fuzzywuzzy, kaldi, pyaudio mic, alsa playback,porcupine). Its working great and very responsive. I have what is probably a dumb question, but how do i subscribe to the mqtt on the localhost. In previous version i was able to point to an external mqtt host, and subscribe to it. This version seems to be much different. I prefer to subscribe to the same localhost that rhasspy is installed on, if possible, but not necessary. I have a multi-robot app that parses and responds to the intents on mqtt, then controls motors and servos etc. I have just randomly tried different settings, but its now time to ask for help.

Not a dumb question – it can be a bit unintuitive if you’re using Docker. You should just need to do 2 things:

  1. Set Rhasspy’s MQTT to “external” with localhost/1883
  2. Add --network host to your docker run command so “localhost” in the container is your actual machine.

Thanks. 2.5 looks great! What a powerful and flexible solution, a huge step forward!

1 Like

Not yet. This would be a welcomed contribution :slight_smile:

1 Like

tried your suggestion, did docker stop then run but got this and rhasspy didnt start:

WARNING: Published ports are discarded when using host network mode
1209f691dc12fdbaf5c735fb197feaa6d78a63d7f2deb5af4f604b544b7e81b9

ran the following:
docker run -d -p 12101:12101
–restart unless-stopped
–network host
-v “$HOME/.config/rhasspy/profiles:/profiles”
–device /dev/snd:/dev/snd
rhasspy/rhasspy:2.5.0-pre
–user-profiles /profiles
–profile en

Looks like it did start, just in the background (-d). Do you see it running with docker ps ?

The warning about published ports just means you can leave off the -p 12101:12101 part because it’s meaningless with the Docker container attached to the host network.

I just tried to re-download the rhasspy:2.5.0-pre image.

But the new container seems to crash time and again. I am not able to open port :12101 and in Portainer the container is shown as running for a few seconds, even if I started it hours ago.

My setup: Raspberry Pi 4, Rasbian Buster
Docker command:
docker run -d --name Rhasspy -p 12101:12101
–restart unless-stopped
-v “$HOME/.config/rhasspy/profiles:/profiles”
–device /dev/snd:/dev/snd
rhasspy/rhasspy:2.5.0-pre
–user-profiles /profiles
–profile de

Maybe worth mentioning:
I have another docker container with Rhasspy 2.4.19 - but stopped it before installing the Rhasspy 2.5-pre container. Both de-profiles point to the same directory.