kitten-tts-2-mini

KittenML/kitten-tts-2-mini

作者
KittenML
任务
语音合成
下载量
346
点赞数
11
趋势分
11
许可证
apache-2.0
收录时间
2026/11/15

license: apache-2.0 library_name: onnx pipeline_tag: text-to-speech language: [en, de, es, it, pt, ru, hi, da, fi, fr, ja, ko, nl, sv, sw, tr] tags: [text-to-speech, onnx, int8, safetensors, pytorch, kittentts]

Kitten TTS 2 Mini

82M parameters, 16 languages, 118 voices, 24 kHz. ONNX with int8 weights (82.7 MB; runs on CPU, no PyTorch needed), and the float32 PyTorch weights.

Usage

pip install kittenml
from kittenml import KittenTTS
import soundfile as sf

m = KittenTTS("KittenML/kitten-tts-2-mini")          # or the path of this directory
print(m.available_voices)                 # {"en": ["Eleanor", ...], "de": ["Lena", ...], ...}
for v in m.voices("de"):                  # name and description of each voice
    print(v["name"], v["description"])

audio = m.generate("Hello there, this is Kitten TTS 2 Mini.", voice="Eleanor")
audio = m.generate("Guten Morgen! Wie geht es dir?", voice="Felix", speed=1.1)    # the voice sets the language
audio = m.generate("Guten Morgen! Wie geht es dir?", language="de")          # the language's first voice (Lena)
sf.write("out.wav", audio, 24000)

m = KittenTTS("KittenML/kitten-tts-2-mini", backend="torch")                  # PyTorch, float32 weights
m = KittenTTS("KittenML/kitten-tts-2-mini", backend="torch", device="cuda")   # on a GPU
audio = m.generate("Hello there, this is Kitten TTS 2 Mini.", voice="Eleanor")

backend="onnx" (the default) runs the int8 ONNX graph with ONNX Runtime; backend="torch" runs the float32 weights in PyTorch. Only the files the selected backend needs are downloaded.

voice takes a name from the tables below (any case: "Felix" or "felix") or its description. Without voice, a language's first voice speaks. In this model the English voices also speak German, Spanish, Italian, Portuguese and Russian under the same name: pass language= to choose (m.generate("Hallo.", voice="Eleanor", language="de")); without it, English.

Voices

Each voice is a first name; its voice pack is stored under the lowercase name in voices_<lang>.npz. The English voices carry the names of the same characters in KittenTTS 2.

English (en)

voicedescription
EleanorSomber historian (female)
MarthaWeathered radio journalist (female)
SerenaGentle yoga instructor (female)
IrisHushed museum guide (female)
GraceSoothing nurse (female)
EdithElderly grandmother soft (female)
DianaStern military officer (female)
OtisRumbling blues musician (male)
VincentHushed museum guide (male)
MaxEnergetic sports announcer (male)
DannyCheerful podcast host (male)

German (de)

voicedescription
LenaFemale 1
GretaFemale 2
JonasMale 1
FelixMale 2
EleanorSomber historian (female)
MarthaWeathered radio journalist (female)
SerenaGentle yoga instructor (female)
IrisHushed museum guide (female)
GraceSoothing nurse (female)
EdithElderly grandmother soft (female)
DianaStern military officer (female)
OtisRumbling blues musician (male)
VincentHushed museum guide (male)

Spanish (es)

voicedescription
LuciaFemale 1
CarmenFemale 2
JavierMale 1
DiegoMale 2
EleanorSomber historian (female)
MarthaWeathered radio journalist (female)
SerenaGentle yoga instructor (female)
IrisHushed museum guide (female)
GraceSoothing nurse (female)
EdithElderly grandmother soft (female)
DianaStern military officer (female)
OtisRumbling blues musician (male)
VincentHushed museum guide (male)

Italian (it)

voicedescription
GiuliaFemale 1
ChiaraFemale 2
MarcoMale 1
LucaMale 2
EleanorSomber historian (female)
MarthaWeathered radio journalist (female)
SerenaGentle yoga instructor (female)
IrisHushed museum guide (female)
GraceSoothing nurse (female)
EdithElderly grandmother soft (female)
DianaStern military officer (female)
OtisRumbling blues musician (male)
VincentHushed museum guide (male)

Portuguese (Brazil) (pt)

voicedescription
BeatrizFemale 1
CamilaFemale 2
RafaelMale 1
ThiagoMale 2
EleanorSomber historian (female)
MarthaWeathered radio journalist (female)
SerenaGentle yoga instructor (female)
IrisHushed museum guide (female)
GraceSoothing nurse (female)
EdithElderly grandmother soft (female)
DianaStern military officer (female)
OtisRumbling blues musician (male)
VincentHushed museum guide (male)

Russian (ru)

voicedescription
AnastasiaFemale 1
NatashaFemale 2
DmitriMale 1
IvanMale 2
EleanorSomber historian (female)
MarthaWeathered radio journalist (female)
SerenaGentle yoga instructor (female)
IrisHushed museum guide (female)
GraceSoothing nurse (female)
EdithElderly grandmother soft (female)
DianaStern military officer (female)
OtisRumbling blues musician (male)
VincentHushed museum guide (male)

Hindi (hi)

voicedescription
PriyaFemale 1
AnanyaFemale 2
ArjunMale 1
VikramMale 2

Danish (da)

voicedescription
FrejaFemale 1
MadsMale 1
RasmusMale 2

Finnish (fi)

voicedescription
AinoFemale 1
HelmiFemale 2
EeroMale 1
JuhoMale 2
VilleMale 3

French (fr)

voicedescription
CamilleFemale 1
ChloeFemale 2
ManonFemale 3
LouisMale 1
AntoineMale 2
JulienMale 3
MathisMale 4
EtienneMale 5

Japanese (ja)

voicedescription
YukiFemale 1
SakuraFemale 2
HarukaFemale 3
AoiFemale 4
HarutoMale 1

Korean (ko)

voicedescription
SeoyeonFemale 1
MinjunMale 1
JihoonMale 2

Dutch (nl)

voicedescription
SanneFemale 1
FennaFemale 2
DaanMale 1
BramMale 2
JorisMale 3

Swedish (sv)

voicedescription
AstridFemale 1
ElsaFemale 2
OskarMale 1

Swahili (sw)

voicedescription
ZawadiFemale 1
NeemaFemale 2
BarakaMale 1
JumaMale 2

Turkish (tr)

voicedescription
ElifFemale 1
ZeynepFemale 2

License

Apache-2.0 (the models, voice packs and the bundled G2P files).

内容来源:Hugging Face 模型卡

在 Hugging Face 查看