toverainc / willow

Open source, local, and self-hosted Amazon Echo/Google Home competitive Voice Assistant alternative

Home Page:https://heywillow.io/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Strange words when Willow is not undestanding the command.

bert269 opened this issue · comments

Hi

On the lastest v0.2.2, flashing through WAS. Wakeword is Alexa. All five (one ESP-lite) devices behave like this, so it must be software based. The last one-two iterations (0.2.1 and 0.2.2) of software updates have added weird few words to the end of the response when the command is not understood/wrong.
"Sorry I couldn't undersatnd that" - sounds garbled at the end, but a lot like ".....couldn't understand that then the"
If anyone needs more details, I can try to record a sound clip and attach/send it somewhere.

Unless we are just hearing it wrong. I will experiment by flashing older firmware and keep going back to where it does not happen anymore and then provide feedback.

I cannot downgrade the ESP32-S3-BOX-lite, but I could the ESP-Box.
0.2.1 - same end of response..
0.2.0 - same end of response.
0.1.1 - same end of response.

Is the problem with WIS? That when the command is not understood, it respond with this message?

Sounds like corrupt tts cache. You may need to stop wis, the navigate to the nginx directory and do sudo rm -rf cache

How do I locate the location of the nginx cache directory under docker? According to Google it should either be in /var/cache or /opt - but both of these does not contain cache entries for Nginx.
The ~/willow-inference-server/nginx directory is empty too.
Neither is it set in the variable fastcgi_cache_path.

It's actually not in the docker container, it would be in the directory you built WIS from. If it's empty it may be because your user doesn't have permission to read the directory. What user owns the directory? You can also do ls -alh to see hidden items as well.

My userid owns the willow-inference-server directory:
drwxrwxr-x 13 bert bert 4.0K Dec 2 16:20 willow-inference-server

It was build from ~/willow-inference-server directory.
There is a directory: ache/huggingface/hub which contains only one file, 1 byte long - version.txt.
So there is nothing in cache.
Also, I rebuild the WIS enviroment yesterday from scratch (by deleteing the whole ~/willow-inference-server dirctory), so this behavior is from a fresh WIS (& nginx) installation.

The nginx cache directory is nginx/cache.

If cache is gone, only other things i have seen cause this are network issues, boxes needing a reboot, or the GPU running out of VRAM. Are you running latest main branch of WIS? Also for it to be fresh, you would need to stop and remove the old containers, do utils build, then utils start -d. This would replace the containers with new ones using the new images. You could then purge the old images. 🙂

WIS build show as willow-inference-server:latest

I reinstalled WIS yesterday with this scipt after stopping and removing the containers:
image

If you send a tts request directly to wis in the browser, is it doing the same thing? For instance you could send something like https://wis:19000/api/tts?text=Sorry+I+couldn't+understand+that

no it does not - it seems perfecty fine and it ends with only the '......couldn't understand that'. Over the ESP-boxes it sounds like an additional word: "then" is added

So that points to issue being either network the boxes are on, or the boxes themselves. Have you tried rebooting the boxes? I also checked home assistant, and the literal text is "Sorry, I don't understand that" so may want to try that against tts in case that string is cached somewhere.

commented

Had the same thing happening with both s3-box and s3-box-3. Same behavior using local wis or public wis. Tried just now and it seems 0.3.0-rc.1 fixes that.

I've also noticed that sometimes the box needs a physical power cycle (unplug, wait a few seconds, plug back in) to fix this behavior. I haven't personally run into this often (maybe once or twice after I do a bunch of reflashes), but when I do see it that usually fixes it. :)

dioes not make a difference. They get powered cycle a lot.