leokani-tts-4.5M

milliwattlabs/leokani-tts-4.5M

作者
milliwattlabs
任务
语音合成
下载量
144
点赞数
6
趋势分
6
许可证
other
收录时间
2026/11/13

license: other license_name: milliwatt-labs-model-license license_link: https://huggingface.co/milliwattlabs/leokani-tts-4.5M/blob/main/LICENSE-MILLIWATT-LABS.md language:

  • en pipeline_tag: text-to-speech library_name: pytorch tags:
  • text-to-speech
  • tts
  • kokoro
  • cpu

Leokani-tts 4.5M

Leokani-tts 4.5M is the smaller Leokani-tts: the same voice in 4.3 million parameters, for slower CPUs and microcontrollers. It speaks in one female American English voice, Dala, trained on synthetic speech generated with Kokoro-82M. The name is Hawaiian: leo (voice) and kani (sound).

Leokani-tts is from Milliwatt Labs: AI measured in milliwatts, not megawatts. We build small, efficient models that run on the devices you already own, with no data center and no GPU.

Apps, docs and the full-size model are on milliwattlabs.com:

  • Python with PyTorch or ONNX Runtime: the files in this repo.
  • Home Assistant: add https://github.com/Milliwatt-Labs/home-assistant-addons in the app store, install Leokani and set Model to Leokani-tts 4.5M (amd64 and arm64).
  • Leokani-tts 7M: the full-size voice, with apps for Mac, iPhone, Android, Linux, Raspberry Pi, Home Assistant and the browser.

Samples

TextAudio
Hello! I'm a small text-to-speech model, and I run on an ordinary computer.
That sounds like a great plan! Let me know how it goes, and good luck tomorrow.
Did you remember to water the tomatoes before the rain started?
Your flight leaves on March 14th at 7:45 AM, and the fare is 219 dollars.
The trail is 4.2 miles long, climbs about 1,200 feet, and takes around 3 hours.
Maria Gonzalez and Hiroshi Tanaka are meeting Dr. Okafor in Minneapolis on Friday.
The old lighthouse stood at the edge of the bay for more than a century, and every evening the keeper climbed one hundred and twelve steps to light the lamp.
Sure, no problem.

Usage

hf download milliwattlabs/leokani-tts-4.5M --local-dir leokani-tts-4.5M
cd leokani-tts-4.5M
pip install -r requirements.txt                      # torch, safetensors

python leokani.py "Hello there. How was your day?" -o hello.wav
python leokani.py "A little slower, please." --speed 0.85 -o slow.wav
python leokani.py --fp16 "Same voice, half-size weights." -o fp16.wav

To turn text into phonemes, Leokani-tts uses espeak-ng by default, or Leokani G2P with --g2p leokani. Leokani G2P is our own espeak-ng-compatible phonemizer, included in g2p/, so nothing else needs installing:

python leokani.py "Hello there. How was your day?" --g2p leokani -o hello.wav

espeak-ng is a separate dependency under GPL-3.0, and it is not included here. Install it with brew install espeak-ng (macOS) or sudo apt install espeak-ng (Debian/Ubuntu), or point to it with --espeak PATH. Or pass Kokoro-style phonemes with --phonemes "...". Leokani G2P on its own: milliwattlabs/leokani-g2p.

Usage (ONNX)

pip install onnxruntime
python leokani_onnx.py "Hello there. How was your day?" -o hello.wav
python leokani_onnx.py "No espeak-ng needed." --g2p leokani -o g2p.wav
python leokani_onnx.py --int8 "Same voice, a smaller file." -o int8.wav

Specs

4.3M parameters · 17 MB (fp32) or 8.6 MB (fp16) safetensors · leokani-tts.onnx (fp32), leokani-tts-fp16.onnx (fp16) and leokani-tts-int8.onnx (int8, 5.1 MB) · 24 kHz mono output.

On every platform

PlatformDeviceSpeedFirst speech
Linux1 Arm core (Cortex-A725, 2.8 GHz)38×128 ms
ESP32-P4ESP32-P4, 360 MHz, Arduino1.06×126 ms
ESP32-S3ESP32-S3, 240 MHz, Arduino0.56×247 ms
GPUDGX Spark (GB10), many lines at once4,257×9 ms

Speed = seconds of speech per second of compute. First speech = time to the first audio of a line, with the voice already loaded. ESP32: both cores. Leokani-tts 7M on the same ESP32-P4 and library: 0.84×.

On a GPU

No GPU is needed, but on one Leokani is very efficient. Same GPU (NVIDIA GB10, DGX Spark), same test:

ModelParams× real time, per line× real time, many lines at onceGPU J per minute of speech
Leokani-tts 4.5M4.3M485×4,257×0.47
Leokani-tts 7M7M486×3,500×0.52
Piper (en_US lessac medium)15.7M72×—3.52
KittenTTS nano 0.814M75×—6.15
KittenTTS mini 0.873M29×—9.29
Kokoro-82M82M86×—14.6
Kyutai Pocket TTS110M14.1×—32.1
Chatterbox798M2.1×—430

J per minute = GPU energy above idle; the GB10 has no CPU power sensor, so models that do part of their work on the CPU look slightly better than they are. — = no batch mode. Both Leokani rows were measured together, on one DGX Spark.

Performance on One Thread

ModelParamsSizeSpeed, MacSpeed, 1 Arm coreFirst speech, MacFirst speech, 1 Arm coreWERUTMOS
Leokani-tts 4.5M ¹4.3M17 MB—38×—128 ms0.07 %3.56
Leokani-tts 7M7.0M28 MB90×27×50 ms181 ms0.07 %3.61
KittenTTS nano 0.814.0M60 MB26×3.6×240 ms1.7 s0.41 %2.18
Piper (en_US lessac medium)15.7M63 MB49×5.6×86 ms710 ms0.90 %3.77
KittenTTS mini 0.873M82 MB16×3.4×330 ms1.6 s0.21 %2.04
Kokoro-82M82M328 MB7.6×0.48×670 ms11 s0.35 %3.76
Kyutai Pocket TTS110M226 MB9.7×1.2×34 ms280 ms0.35 %3.25
Chatterbox798M3.2 GB0.28×0.028×15 s150 s0.55 %3.36

¹ PyTorch on one thread, like every row here. The ONNX version gives the same output, within 1 % of this speed on the Arm core.

Speed = seconds of speech per second of compute; first speech = median time to first audio over 20 sentences. Mac: M3 Pro CPU; Arm: one 2.8 GHz Cortex-A725 core (Raspberry Pi-class). WER (Whisper large-v3), UTMOSv2: 120 sentences. — = not measured yet.

Limitations

  • One voice, English only.
  • Pronunciation follows espeak-ng, so unusual names may be misread. Some symbols are read literally ("$219" becomes "dollar two hundred nineteen"), so write amounts out ("219 dollars").
  • Delivery is neutral, intended for a home-assistant style of inflection.

Acceptable use

Don't use Leokani-tts, or speech made with it, to:

  • impersonate a real person, or make it sound like someone said something they didn't, without their consent;
  • deceive or defraud people, including scams, phishing calls and fake emergency or official messages;
  • harass, threaten or bully anyone, or produce hateful or sexual content involving minors;
  • spread disinformation, including fake news audio or election-related deception;
  • break any law, including privacy, consumer-protection and robocall rules.

Tell people when speech is synthetic wherever the law requires it or they could reasonably be misled. You are responsible for what you make with the model. These terms come in addition to the license.

Speech made with Leokani-tts carries an inaudible watermark, built into the model, that lets Milliwatt Labs recognize audio it generated. The mark is the same in all audio and contains no information about you or your text.

License

From November 8, 2026, Leokani-tts is under the Milliwatt Labs Model License 1.0 (see LICENSE-MILLIWATT-LABS.md): free for organizations with up to US$1M in annual revenue. Commercial use needs a free, one-time registration and a yearly one-tap self-report. Above US$1M, one flat, predictable yearly fee and no royalties: email hello@milliwattlabs.com. Copies downloaded before November 8, 2026 were licensed under CC BY-NC 4.0 (see LICENSE), non-commercial use only. You may keep using them under it, or move them to the new license. For a custom voice, email hello@milliwattlabs.com. Training audio data generated from Kokoro-82M by hexgrad, which is licensed under Apache-2.0 (licenses/Kokoro-82M-Apache-2.0.txt). The Leokani G2P files in g2p/ have their own licence: its code is MIT and its weights and lexicon are CC BY 4.0, free with attribution (g2p/LICENSE, g2p/NOTICE).

内容来源:Hugging Face 模型卡

在 Hugging Face 查看