LT_ausys — Lithuanian speech recognition: a robotic hand holding a gift box under a glowing globe (illustration made with AI)

LT_ausys — Lithuanian ears

Lithuanian speech to text for Home Assistant: a voice command in 0.2 s on an ordinary CPU.

Lithuanian. Local. Free.

Model on Hugging Face Code on GitHub Wyoming server

Offline Lithuanian speech recognition, at home

A voice assistant needs a mouth and ears. The ears are speech-to-text (STT, also called ASR): they hear “Įjunk šviesą svetainėje” (“turn on the living-room light”) and turn it into text Home Assistant can act on. LT_ausys is Kristijonas Jakubsonas's Lithuanian model, which we converted to ONNX and compressed so it runs fast on a CPU with no GPU, served over the Wyoming protocol — the same one Home Assistant uses for its own voice services.

Fast

A voice command is recognised in 0.21 s. Whisper-family models (Paprika included) take 3.55 s on the same mini PC: they encode a 30-second window for every phrase, however short.

No GPU

Four CPU cores and 4 GB of RAM are enough — a mini PC or a Proxmox container. The compressed (int8) model is 0.9 GB.

More accurate

On read speech (FLEURS) it gets 10.6 % of words wrong; Paprika 12.0 %. Home Assistant's default Whisper base gets 88 % wrong in Lithuanian.

No cloud

Everything runs on your own computer or home server. No account, no API key, no subscription. What is said at home stays at home.

Writes like a person

The output is normal written Lithuanian: punctuation, capital letters and numbers spelled out as words.

Free to use

The model is CC BY 4.0, like the original: commercial use is allowed with credit to Kristijonas Jakubsonas. The server and tools are GPL-3.0.

Why not Whisper

Whisper is the most popular open speech-recognition model, but it encodes a fixed 30-second window for every phrase, however short. On a CPU that is a cost of several seconds per command. LT_ausys is built on NVIDIA's Parakeet-TDT transducer, which processes only as much audio as it is given. Same machine (Ryzen 7 8845HS mini PC, 4 threads), same 127 home commands:

per commandFLEURS word error ratecommand intent exam
LT_ausys (int8)0.21 s10.6 %101 / 119
Paprika (Whisper large-v3-turbo)3.55 s12.0 %93 / 119
faster-whisper tiny0.73 s99 %17 / 119

Measured on 2026-10-24 on one machine. Full tables, test sets and caveats: docs/results.md.

Getting started: Home Assistant in Lithuanian

Three ways in — pick the one closest to what you already run.

A. Python only

pip install "onnx-asr[cpu,hub]"
import onnx_asr
model = onnx_asr.load_model("RobertasTa/lt-ausys", quantization="int8")
print(model.recognize("command.wav"))   # 16 kHz mono WAV

B. A small Wyoming STT server of its own (Linux or Docker)

About 5 minutes: a Python environment with a systemd unit, or a single Docker image. The full recipe is in the README. The server listens on port 10302.

C. Already running wyoming-faster-whisper?

Since version 3.9 it has an onnx-asr engine, so no new server is needed:

wyoming-faster-whisper --uri tcp://0.0.0.0:10302 --stt-library onnx-asr \
    --model RobertasTa/lt-ausys --language lt --data-dir /data --download-dir /data

This route loads the larger fp32 model (2.5 GB) and ignores the thread count; for int8 use route B. Why.

Then Home Assistant

Settings → Devices & services → Add integration → Wyoming Protocol → the server's address and port 10302. In your Assist pipeline choose lt_ausys as the Speech-to-text engine and Lithuanian as the language.

The whole Lithuanian voice pipeline

For Home Assistant to understand and answer in Lithuanian you need three parts. All are free and run at home:

  1. Ears — this project: Lithuanian speech recognition.
  2. Mouth — a Lithuanian Piper voice, Reginutė or Ingutė: spoken answers with correct stress.
  3. A microphone in the room — Home Assistant Voice PE, an ESPHome satellite, or a USB conference speakerphone via Speakerphone Assist.

Home Assistant already has Lithuanian intents (“įjunk šviesą svetainėje”).

Whose model this is

The ears are Kristijonas Jakubsonas's. His model kmynas-parakeet-lt-v4 is NVIDIA Parakeet-TDT 0.6B v3 fine-tuned on 3,087 hours of Lithuanian speech from Vilnius University's LIEPA-3 corpus, published under CC BY 4.0 with an honest model card.

We (Robertas and Claude) added only the packaging: conversion to ONNX, int8 compression that keeps the accuracy, a Wyoming server, measurements and install guides. If you use or redistribute the model, credit Kristijonas Jakubsonas and say what you changed.

What it does not do

Questions people ask

Can Home Assistant understand Lithuanian?
Yes. Home Assistant already has Lithuanian commands; what was missing is good speech recognition. The default Whisper base gets 88 % of Lithuanian words wrong, LT_ausys 10.6 %.
Does it need the internet or a GPU?
No. The model runs on a CPU (4 cores, 4 GB of RAM) and no audio leaves your network.
How is it different from Paprika?
Paprika is also Kristijonas Jakubsonas's model, but a Whisper one: accurate, yet several seconds per command on a CPU. LT_ausys is a different kind of model (Parakeet) and more than 15 times faster.
Can I use it in a commercial product?
The model's CC BY 4.0 licence allows it with attribution. Read the licences before you ship it.

Stuck? Ask an AI

Not a programmer? Paste this into any AI chat (Claude, ChatGPT or another) and keep asking in your own words:

Read https://raw.githubusercontent.com/RobertasTa/lt-ausys/main/AI_CONSULTANT_BRIEF.md and help me connect the LT_ausys Lithuanian speech recognition to Home Assistant.

That file lists what the assistant must ask before advising and what it must not claim.

Thanks

Kristijonas Jakubsonas — for the model itself. NVIDIA — for Parakeet-TDT 0.6B v3 (CC BY 4.0). Vilnius University and raštija.lt — for the LIEPA-3 corpus (CC BY 4.0). Ilya Stupakov — for onnx-asr, Microsoft — for onnxruntime, Open Home Foundation — for the Wyoming protocol.

No institution sponsors this project. Full credits with licences are at the end of the README.