Technicals.

K.ai has four systems. A private path connects your phone to your own computer. Voice processing runs on your machine. A private index holds your own files. A managed router selects the model for each question.

Local Dictation

A global shortcut starts the recording. K.ai records only while the session is active.

Sticky mode uses one press to start and one press to stop. Hold-to-talk records while you hold the keys.

K.ai puts the text into the field that had the focus. K.ai identifies that field before it types.

  • One model download of approximately 500 MB
  • K.ai deletes the temporary audio after each result
  • Model weights unload after three minutes without use

Two routes, and you select one

On this Mac uses a pinned WhisperKit/Core ML model. You download the model one time. After that download the transcription works offline. It makes no provider charge.

Cloud is a separate route. You select it at the start of a recording. It needs the internet and K.ai credit. It uses less battery and less memory.

K.ai never changes from the local route to the cloud route without your instruction. A failure says so.

Private RAG

You select folders, and K.ai gets read-only access to them. K.ai extracts the text, divides it into chunks, and makes semantic vectors with Apple NLEmbedding.

K.ai keeps the index, the vectors, and the relationship graph in a local SQLite database. That database is separate from your files.

Your files, the folder locations, the vectors, and the database stay on the machine.

  • FTS5 finds the literal words; the vectors find the related meaning
  • Links, tags, backlinks, and folders connect related notes
  • Answers keep the file citation and the PDF page

What leaves the machine for an answer

K.ai selects a small number of passages for the question. Your question and those passages go into the transient no-logging request, with the relative source name of each passage. No other file content leaves the machine.

The index, the vectors, the graph, the folder locations, and the other files stay where they are. Unlinking a folder deletes the index for that folder. It never deletes your files.

LLM routing

K.ai selects a task lane. K.ai does not select a model brand.

The shape of the request, the language, the attachments, the recency, and the complexity select the lane. A small classifier decides the unclear cases.

Each lane points to a maintained model configuration: everyday answers, multilingual work, reasoning, code, vision, low-latency voice, and deep research.

The models can change. The app does not change, and you do not have to watch the model market.

What K.ai keeps

Cloud inference is temporary. K.ai keeps a delivery copy only until the app receives it, or until that copy expires.

The usage record keeps the lane, the token counts, the latency, and the cost. It does not store the prompt or answer.

This is the K.ai router. It follows similar methodologies as the UIUC LLMRouter package. It is a smaller implementation of its own, built around the K.ai lanes, the accounting, the source rules, and the fallbacks.