Is Local Voice AI Private? What Stays on Your Machine in LU
A voice assistant has a microphone, a speech model, a voice and a chat model, and each of them can sit somewhere else. This post goes through the Voice surface of Locally Uncensored part by part and says what stays on your computer and what does not. Voice is in beta and English only.
The Short Answer
Your microphone audio goes to the voice engine on your own computer and nowhere else. Speech recognition, the voice and the turn taking run locally. The text of the conversation goes to the chat model you picked. With a local model, nothing leaves the computer. With a provider you connected yourself, the text goes to that provider.
What Runs Locally
Voice starts one process of its own, the voice engine. It holds three things:
- Speech recognition: Whisper base.en, through faster-whisper. It turns what you say into text
- The voice: Pocket TTS by Kyutai, with fifteen fixed English voices. It speaks the answers
- Turn taking: Pipecat with Silero VAD and Smart Turn, which notice when you start and stop speaking
The engine listens only on 127.0.0.1, the address that cannot be reached from another machine. Its log is built so it cannot carry audio, transcripts, tool data or tokens: messages from the libraries it uses are cut down to level, location and error type.
The One-Time Download
The speech models and their Python do not come with the installer. The first time you open Voice, a setup screen shows the download size, the space needed and your free space before anything is fetched. "What is downloaded" lists every part:
| Part | Fetched from |
|---|---|
| A private Python 3.12 (your own Python is not touched) | GitHub, the python-build-standalone releases |
| Speech packages | PyPI and the PyTorch download server |
| Whisper base.en | Hugging Face, Systran/faster-whisper-base.en |
| Pocket TTS and the voice you picked | Hugging Face, kyutai/pocket-tts-without-voice-cloning |
Each host sees your IP address and what you fetched. The Python and the model files are pinned to exact versions and checked against a SHA-256. Everything lands in a folder named voice inside LU's own data folder, and "Stored in" on the setup screen shows the full path. Uninstall in the Voice settings removes it again.
Where the Answer Comes From
Voice has no model of its own. It talks to the chat model selected in Chat, and that is where "local" depends on you. With a local model, nothing leaves the computer. With a provider you added with your own key, the text of the conversation goes to that provider, exactly as in the chat. The audio does not.
LU Cloud models are not available in Voice. With the Cloud switch on, Voice is hidden, because LU Cloud has no voice service yet. Dictation in a Cloud chat is a different feature and runs hosted.
Agent Tools Reach the Network
With the Agent switch on, a voice session can use the tools of the agent chat. A web search sends the search words to a search service: a SearXNG instance on your own machine if you installed one, otherwise DuckDuckGo, with Wikipedia as a fallback. Pages the agent reads are requested directly from your machine.
The Screen
With "Where it may work" set to Whole computer, Voice can use computer control, which is in beta. Screenshots go to the model that looks at the screen. With a cloud model in that role, the screenshots go to that provider. The pictures are kept in memory only and are not written to the conversation file. On a Mac, computer control is in the app but not fully tested yet, as the Mac page notes.
What the App Sends on Its Own
The app has no analytics kit and sends no crash reports. On its own it uses the network for two things:
- It asks GitHub Releases for a new version a few seconds after start and at most every six hours after that
- It counts each press of the Cloud switch: which way it was pressed, the platform and the app version, without an identifier
While you are signed in to LU Cloud, it also checks your account every five minutes, and a press of the Cloud switch is counted for your account as well.
The privacy page has the details, and Is Locally Uncensored safe? covers the installer and the update signature.
What Is Stored
- The session. When you stop, the exchange is saved as a normal conversation in your chat history, on your machine. A session in which nothing was said is deleted
- No audio. LU stores your settings, such as the microphone and the voice. It does not store audio
- Memories. When a session ends, LU hands what was said to the same memory step the chat uses, once per session, and marks any memory it writes with the source voice. That step is one more model call, on the provider of your chat model. It runs only while "Auto-extract memories" under Settings, Agent, Memory is on, which it is out of the box. Answers that described the screen are left out, so what a model saw there is not remembered
Memories stay on your computer. They sync to an LU Cloud account only after you tick the consent box in Settings and start a sync yourself.
The Microphone
You pick the microphone under Settings, Voice & Remote, Speech. The names of your devices appear once your system lets the app use the microphone. On a Mac the system asks with the line "Voice chat and dictation transcribe your speech locally on this device."
A microphone hears the whole room, not only you. A television, a call on speaker or another person can say "yes" too. In LU a spoken yes does not approve the steps that carry risk:
- A tool that needs your approval waits for a click on Approve or Reject
- The card "Allow computer control in this chat?" needs a click on Allow
- A sensitive action of computer control needs your click, also when other questions take a spoken answer
At the computer control card, a spoken no or stop declines.
So, Is It Private?
With a local chat model and Agent off, a voice session in LU runs on your machine from microphone to speaker, after a one-time download from the hosts listed above. Each feature you add moves the line: a provider gets the text, web tools reach the web, and a cloud model in the screen role gets the screenshots. For the setup itself, read Talk to a Local LLM.
Locally Uncensored is AGPL-3.0 licensed and built by PurpleDoubleD. Corrections welcome on GitHub Discussions or in the Discord.
In the handbook
- Chat, dictation, read-aloud and memory
- Agent, the tools and permissions a voice session shares
- Settings and troubleshooting, every settings tab and where the log file is