Agents and automation
Last updated
Raising local LLM voice command accuracy: aliases, exposure and instructions
When commands miss, check names and the exposed list before swapping the model.
Voice commands fail in three ways: the words were misheard, the wrong device was chosen, or the right device was chosen and nothing ran. Each has a different place to check, so testing twenty sentences and sorting them by type fixes things faster.
Splitting failures into three
Say the same sentence twenty times and note the outcome. Whether it was misheard, turned on another device, or picked the right one and did nothing each points to a different fix.
Mishearing is the most common. Check microphone placement and sentence length first, then aliases and instructions.
- Adding an Ollama conversation agent to Home Assistant: exposed entities and instructions
- Can a local LLM run the house? Exposure scope and safety boundaries
- What Is a Local AI Agent? When It Makes Sense to Run One
- Running local AI for a smart home: splitting voice, conversation and video across your own machines
- A morning brief from Home Assistant: turning sensor data into sentences with a local LLM

Matching names with aliases
Mixing 'living room light' and 'main lamp' makes the model interpret each differently. Adding an alias on the Expose tab under Settings > Voice assistants ties both names to one device.
Aliases also work for areas and floors. In a house that mixes Korean and English, both names make the same device reachable in either language.
Checking the exposed list
An alias does nothing if the entity is not exposed. The conversation agent can only see entities exposed through the Assist API1, so check that frequently used lights, switches and climate devices are on the list, and leave locks and garage doors off.
A very long list makes the choice harder for the model. Keep the devices each room uses and drop seasonal ones for a while.

Refining the instructions
Put naming rules and the answer format in the instructions: say only the device and its state when switching, and ask rather than act when unsure.
Long instructions delay the first response; short ones invite wrong actions. After adding each rule, rerun the twenty-sentence test and see whether failures dropped.
Deciding whether to change the model
If failures still exceed half after names and lists are tidy, a larger model is worth trying. If most failures are wrong-device picks, the list is the problem, not the model.
A large model answers slowly and the conversation stalls. Keep device control on a small model and send long questions through text input instead.

Terminology notes
API — A defined interface that lets other code call a program’s functions.
Back to the text
Frequently asked questions
- What should you check first in this article?
- Voice commands fail in three ways: the words were misheard, the wrong device was chosen, or the right device was chosen and nothing ran. Each has a different place to check, so testing twenty sentences and sorting them by type fixes things faster.
Read next
Agents and automation
Adding an Ollama conversation agent to Home Assistant: exposed entities and instructions
Agents and automation
Can a local LLM run the house? Exposure scope and safety boundaries
Local speech recognition & synthesis
A Home Assistant voice satellite that listens and answers without leaving the house
Agents and automation
Running local AI for a smart home: splitting voice, conversation and video across your own machines
