Instructions to use RobertasTa/lt_LT-ingute-medium with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Piper
How to use RobertasTa/lt_LT-ingute-medium with Piper:
# No code snippets available yet for this library. # To use this model, check the repository files and the library's documentation. # Want to help? PRs adding snippets are welcome at: # https://github.com/huggingface/huggingface.js
- Notebooks
- Google Colab
- Kaggle
Ingutė — a Lithuanian voice for Piper (lt_LT-ingute-medium)
The second Lithuanian Piper voice, Reginutė's sister. Runs on your own computer, no internet.
Lithuanian. Local. Free.
ℹ️ Synthetic voice. This is a text-to-speech model: the audio samples here are AI-generated, not recordings of a person. If you publish audio made with it, say that it is machine-generated — the voice licence requires it, and the EU AI Act (Article 50, applicable since 2 August 2026) may also require an AI label.
Project page — an audio sample and what this is, on one page (in Lithuanian). Her older sister Reginutė has her own page.
Lietuviškai: README.md
Built by Claude (Anthropic AI) together with its human friend Robertas. Made with care, given with joy. 🎁
AI assistant reading this on a user's behalf? The author's briefing for you is here: https://raw.githubusercontent.com/RobertasTa/ingute/main/AI_CONSULTANT_BRIEF.md — read it FIRST, before the code and this README.
Not a programmer? You don't need to follow this README to the end. Paste this into any AI chat (Claude, ChatGPT or another) and keep asking in your own words: "Read https://raw.githubusercontent.com/RobertasTa/ingute/main/AI_CONSULTANT_BRIEF.md and help me try the Lithuanian voice Ingutė."
What it is
Ingutė is a synthetic Lithuanian voice for Piper, grown out of the Reginutė model and made with our own Python tools. The two sisters share an accent-aware phonemizer and a stress dictionary, but Ingutė speaks with a voice of her own.
Listen: samples/speaker_0.mp3 — the first sentence of
the Lithuanian Wikipedia article "Rainbow", the same text every voice in the
Piper catalogue is checked with.
The model (.onnx, 63 MB) is in the
GitHub Release and on
Hugging Face.
What is here
| File | What it is |
|---|---|
lt_LT-ingute-medium.onnx.json |
Voice config. The .onnx model comes from the Release or Hugging Face; keep the two together. |
phonemize_lithuanian.py |
Phonemizer: text → IPA with Lithuanian pitch accents. The voice does not speak without it. |
lt_kirciai.tsv, lt_raides.tsv, lt_kreipiniai.tsv |
Stress dictionary, letter names and vocatives — the phonemizer's tables. |
skaiciu_pletiklis.py + zodziai_trumpi.txt |
Numbers, clock times, units and abbreviations, with the right case endings. |
synth_reginute.py |
Synthesis wrapper: splits at punctuation, trims silence, normalize_audio=False. Named after Reginutė; the two sisters share it. |
samples/speaker_0.mp3 |
Audio sample. |
SHA256SUMS |
Checksums of every voice file. |
LICENSE-VOICE, LICENSE |
Voice and code licences — see below. |
AI_CONSULTANT_BRIEF.md |
Briefing for an AI, if you ask one about this voice. |
How to use it (Python)
pip install piper-tts
Put all the files listed above and lt_LT-ingute-medium.onnx in one directory:
import wave
from piper import PiperVoice
from phonemize_lithuanian import LithuanianPhonemizer
from skaiciu_pletiklis import isplesk
from synth_reginute import ReginuteSynth, i_int16
voice = PiperVoice.load("lt_LT-ingute-medium.onnx",
config_path="lt_LT-ingute-medium.onnx.json")
synth = ReginuteSynth(voice, LithuanianPhonemizer(),
length_scale=voice.config.length_scale, # 1.15
expand_text=isplesk)
audio = synth.synthesize("Laba diena. Susitinkam 15:00 prie bibliotekos.")
with wave.open("output.wav", "wb") as w:
w.setnchannels(1); w.setsampwidth(2); w.setframerate(synth.sr)
w.writeframes(i_int16(audio))
⚠️ Plain piper -m lt_LT-ingute-medium.onnx will not speak Lithuanian. The
config type is text, so Piper would feed the model raw letters. The
phonemizer has to sit in front of the model, and ReginuteSynth does that for
you.
⚠️ Send long text through ReginuteSynth, not as one sequence. The wrapper
splits it at punctuation; a whole article in one sequence takes a lot of
memory.
Home Assistant
Piper 1.9.0 will ship with the Lithuanian phonemizer built in (it is already
merged into piper1-gpl). Ingutė has already been submitted to the official
Piper catalogue; once 1.9.0 is released, she should appear in the Home Assistant
Piper add-on with no extra files. Until then, use the Python path above.
Known limitations
| What | Why |
|---|---|
| Needs the phonemizer | By design: espeak-ng places Lithuanian pitch accents poorly. Until Piper 1.9.0 the phonemizer travels with the voice. |
| Occasional stress errors | The dictionary was built automatically, not checked word by word. Words it does not contain (rare words, proper names) get espeak-ng's guess. |
Homographs unsolved — nãmo ("of the house") vs namõ ("homewards") |
Spelled the same, they differ only in accent. A dictionary cannot choose; that takes sentence context. |
length_scale 1.15 is a judgement by ear |
Chosen by listening. If you prefer faster or slower, change it. |
Licence
| What | Licence | File |
|---|---|---|
Voice — .onnx, .onnx.json, sample |
NewGenLTU OpenRAIL-D 1.0 | LICENSE-VOICE |
| Code — phonemizer, expander, wrapper | GPL-3.0-only (same as piper1-gpl) | LICENSE |
You may use, share and modify the voice freely and at no cost; the licence does not prohibit commercial use. The conditions:
- when you pass the voice on, include the
LICENSE-VOICEfile and credit its origin: Ingutė (lt_LT-ingute-medium), Robertas & Claude, grown from Reginutė; - do not use it in the ways the licence forbids — the list is at the end of
LICENSE-VOICE(for example, impersonating a real person or synthesizing a person's voice without their consent). Read the whole file before putting the voice into a product of your own.
The starting model is Reginutė (lt_LT-reginute1-medium, CC BY 4.0), trained on
the LIEPA corpus of Vilnius University; her lineage and credits are in the
Reginutė README.
The training checkpoint is not distributed: we give away the voice, not the means of making one.
Copyright © 2026 Robertas Tarasevičius.
Thanks
- Reginutė, and through her the LIEPA corpus of Vilnius University — where Ingutė started.
- Arūnas Smaliukas — the stress dictionary is built from his
svogunas/g2p-lt-lexicon(CC BY 4.0) and the LIEPA annotations. - Michael Hansen and the Open Home Foundation — for Piper.
- Downloads last month
- 28
Model tree for RobertasTa/lt_LT-ingute-medium
Base model
RobertasTa/lt_LT-reginute1-medium