Just tested the new whisper add-on and it lags pretty badly on my RPi4 and the only sensible model option that actually runs, tiny-int8, has about 40% WER (word error rate) in my language (Polish) which is basically unusable for anything. I wanted to run whisper on an external beefier server, I made this docker-compose:
services:
whisper:
image: homeassistant/amd64-addon-whisper:latest
container_name: whisper
ports:
- 10300:10300
restart: unless-stopped
volumes:
- whisper-data:/data
entrypoint: python3
command: -m wyoming_faster_whisper --uri tcp://0.0.0.0:10300 --model tiny-int8 --beam-size 1 --language pl --data-dir /data --download-dir /data
volumes:
whisper-data:
which in theory runs the same command as the official add-on does. Then I add the wyoming integration in HA with the IP of my docker host 192.168.10.22 and 10300 port. It adds successfully, I can select it as the speech to text option, but when I try to use it in the conversation window it just hangs on listening indefinitely and never do anything.
Nothing in HA logs, whisper docker logs says itās running fine:
INFO:__main__:Downloading FasterWhisperModel.TINY_INT8 to /data
INFO:__main__:Ready
and doesnāt output anything when I try to dictate commands. When I run the whisper server health check command:
echo '{ "type": "describe" }' | nc -w 1 192.168.10.22 10300
from the homeassistant container I get this response from the whisper server:
{"type": "info", "data": {"asr": [{"name": "faster-whisper", "attribution": {"name": "Guillaume Klein", "url": "https://github.com/guillaumekln/faster-whisper/"}, "installed": true, "models": [{"name": "tiny-int8", "attribution": {"name": "rhasspy", "url": "https://github.com/rhasspy/models/"}, "installed": true, "languages": ["pl"]}]}], "tts": [], "handle": []}}
which indicates that HA conatiner communicates with whisper server just fine.
Debug assistant unfortunately time outs:
So what am I missing?
Can I run whisper server on a different machine somehow at all?