WhispyWyser - Voice Assistant for Home Assistant
WhispyWyser is a flexible and efficient voice assistant for Home Assistant, leveraging Faster Whisper for speech recognition and the Wyoming protocol for seamless integration. It supports both CPU and CUDA architectures for optimized performance.
Features
- 🎙️ High-accuracy speech-to-text with Faster Whisper
- 🏠 Deep Home Assistant integration
- 🐳 Docker support for easy deployment
- 🚀 GPU acceleration support (CUDA)
- 🔌 Wyoming protocol for extensibility
- 🔒 Secure authentication with long-lived tokens
Prerequisites
- Docker and Docker Compose
- Home Assistant instance (local or remote)
- NVIDIA GPU with drivers (for CUDA support)
Quick Start
-
Clone the repository
git clone https://github.com/yourusername/whispywyser.git cd whispywyser
-
Configure environment
cp .env.example .env # Edit .env with your configuration nano .env
-
Start the service
# For CPU docker-compose up -d whispywyser-cpu # For GPU (CUDA) docker-compose up -d whispywyser-gpu
Configuration
Environment Variables
| Variable | Required | Description |
|---|---|---|
HA_TOKEN |
✅ | Home Assistant long-lived access token |
HOME_ASSISTANT_URL |
✅ | URL of your Home Assistant instance |
HF_TOKEN |
❌ | Hugging Face Hub token (for private models) |
MODEL |
❌ | Model name (default: openai/whisper-large-v3) |
DEVICE |
❌ | cuda or cpu (auto-detected) |
LANGUAGE |
❌ | Language code (e.g., en, de) |
Generating a Long-Lived Access Token
- In Home Assistant, click on your profile
- Scroll down to "Long-Lived Access Tokens"
- Click "Create Token"
- Copy the token and add it to your
.envfile
Docker Compose
The project includes two services:
- whispywyser-gpu: For systems with NVIDIA GPU
- whispywyser-cpu: For CPU-only systems
Volumes
/data: Stores models and configuration
Ports
10300: Wyoming protocol port
Development
Building the Image
# For CPU
docker-compose build whispywyser-cpu
# For GPU
docker-compose build whispywyser-gpu
Running Tests
docker-compose run whispywyser-cpu python -m pytest
Troubleshooting
Common Issues
-
CUDA errors
- Ensure NVIDIA drivers are installed
- Run
nvidia-smito verify GPU detection - Check Docker has access to GPU:
docker run --gpus all nvidia/cuda:11.0-base nvidia-smi
-
Connection to Home Assistant
- Verify
HOME_ASSISTANT_URLis correct - Check if the token has the right permissions
- Ensure Home Assistant is accessible from the container
- Verify
License
MIT
Acknowledgements
Metadata
Release files for WhispyWyser 0.0.27
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| whispywyser-0.0.27.tar.gz | 35.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| whispywyser-0.0.27-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details |
Total release size: 68.4 kB
Release files / whispywyser-0.0.27.tar.gz
| Download URL | whispywyser-0.0.27.tar.gz |
|---|---|
| Size | 35.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c9d45f5d215f8197dce1dfd8c68d0b7428a44353e302c8b363841f6dec479958
|
|
BLAKE2b-256 checksum How to use checksums |
ec0c233e8e4a754afa82d3936c88cdd5102159240c4f4b02f0ab7d1a70b00c10
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Release files / whispywyser-0.0.27-py2.py3-none-any.whl
| Download URL | whispywyser-0.0.27-py2.py3-none-any.whl |
|---|---|
| Size | 33.1 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
2a98cfed7869aa2fba8606e81ce4a77a2976d7c51037c0cb4889a0c074e403d7
|
|
BLAKE2b-256 checksum How to use checksums |
fa491595a2d7a1aff3c654a253894644634ac6e202577920fb37d30d3cbeaae9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|