Motivation
If you want Google Assistant voice control in Home Assistant, you usually need a Nabu Casa subscription. But I wanted three things:
- Save money — no monthly subscription.
- Keep my privacy — no smart-home data leaving my LAN.
- Utilize my unused gaming PC — put my Intel Arc A580 GPU to work.
So I built my own fully local voice assistant — offline, GPU-accelerated, and integrated with Home Assistant.
Inspiration
This project was inspired by NetworkChuck’s video. He showed how to run a Pi satellite. I extended the idea into a automated setup powered by Docker Desktop and Task Scheduler.
My Core Idea
I wanted a system that would start automatically, run fast on my Intel Arc GPU, and stay simple. My setup is built on these pillars:
- Docker Desktop + Docker Compose → manages Whisper (STT) + Piper (TTS). Auto-start ensures they’re always online.
- Task Scheduler (Windows 11) → launches Ollama Portable Zip at login.
- IPEX-LLM → gives GPU acceleration on my Intel Arc A580.
- Qwen 3-4B Instruct → the local LLM, tuned with a system prompt to only return actionable device commands.
- Home Assistant Voice Assistants → everything wired up under one assistant with Wake Word, STT, TTS, and LLM.
This combination — Docker Desktop + Compose + Task Scheduler + IPEX Ollama + Qwen 3-4B — is what made it work.
The Result
It actually works better than I expected:
- Say a command → Pi mic (ReSpeaker HAT) picks it up.
- Whisper transcribes speech.
- Qwen interprets it into an intent.
- Piper responds with voice.
- Home Assistant executes the action.
All fully offline. No cloud, no Nabu Casa, no Google/Amazon.
Summary
- Docker Desktop auto-start + Compose keeps STT/TTS reliable.
- Task Scheduler ensures Ollama is always alive.
- IPEX-LLM makes Intel Arc GPUs practical for real-time AI.
- For NVIDIA/Apple users, it’s simpler: just use the Ollama Desktop app.
What’s Next
- GPU-accelerated Whisper and Piper.
- Larger models with IPEX-LLM.
- Smarter intent handling.
- Multilingual support (English + Japanese).
👉 Want the full setup with configs, batch scripts, and step-by-step Home Assistant integration?
Read it here: Full Blog Post
Top comments (0)