The decision
A choice over your actions, each written as a short phrase: "turn the lights on", "turn the lights off", "set the heating", "play music", "set a timer", "none of these". Then a choice over the rooms, for commands that name one.
How to build it
- Run a speech-to-text model on the Pi, such as whisper.cpp or Vosk, and pass the text it hears as the state.
- Package Julia 1 on your computer with
noulxp export julia, copy the package to the Pi, installnoulxp[onnx]there and startnoulxp serve. Julia 1 has 144M parameters and runs on a CPU. - Map each action to a call to Home Assistant's API, or to your own scripts.
- Act above 0.85. Below it, say what you understood and wait for a yes.
- Measure the time from the end of speech to the action on your Pi, and keep a log of commands and corrections.
Make it better
Some actions, like unlocking a door or turning off an alarm, should be confirmed every time, whatever the probability. Then fine-tune on your log: a household's own phrasing is what a general model gets wrong.