VoiceStudio — KittenTTS 引擎¶
KittenTTS(KittenML)是轻量级英语“flash”层级:一个 25–80 MB 的 ONNX 模型,带有 8 个预设声音,可在任何 CPU 上实时运行——无需 torch、无需 CUDA、无需任何 GPU。当你只需要快速英文旁白(配音、演示朗读、短句)且没有参考样本时,请使用它。
何时选择它¶
- 仅限英文的内容,且速度和极小安装比声音克隆更重要。
- 没有可用 GPU 的机器。
与 OmniVoice 相比的取舍:不支持声音克隆,仅限英文——但安装更快、体积更小。
安装¶
然后通过 Model Catalogue(TTS 标签页 → Use)或 OMNIVOICE_TTS_BACKEND=kittentts 选择该引擎。
声音¶
八个预设声音,四对男/女声:
expr-voice-2-m expr-voice-2-f (default: expr-voice-2-f)
expr-voice-3-m expr-voice-3-f
expr-voice-4-m expr-voice-4-f
expr-voice-5-m expr-voice-5-f
未知的声音 ID 会记录一条信息日志并回退到默认声音。
模型选择¶
| 变量 | 默认值 | 含义 |
|---|---|---|
OMNIVOICE_KITTENTTS_MODEL |
KittenML/kitten-tts-mini-0.8 |
要加载的 HuggingFace 检查点 |
约 80 MB 的模型会在首次使用时从 HuggingFace 下载(网络连接不稳定时重试一次)。参见 downloading-models.md。
行为说明¶
- 输出为 24 kHz 单声道。
- 设计上仅支持 CPU——ONNX 图没有 CUDA/MPS 路径。
- 非英语的
language值会被忽略,并记录一条指向 OmniVoice 的日志;参考音频同样会被忽略(不支持克隆)。 - 长输入加固(#1173): 随附的 ONNX 图有硬性的 512 token 上限,而音素化可能会大幅扩展文本(尤其是数字)。VoiceStudio 会使用模型自带的 tokenizer 预先测量每个块,并在单词边界处拆分过大的块,因此长输入或数字密集型输入不再会在 onnxruntime 内部以不透明的“invalid expand shape”错误中止。
已知限制¶
- 仅限英语;不支持克隆、不支持声音设计、不支持情绪控制(参见 expressive-speech.md)。
- 仅提供预设声音——速度是唯一的调节项。
故障排除¶
- 引擎不可用:在 VoiceStudio 的 Python 环境中执行
pip install kittentts,然后重启。 - 模型加载失败并报
EspeakDataError:espeak-ng(KittenTTS 背后的音素化器)无法打开其数据文件夹,通常是因为安装路径过长或包含非 ASCII 字符。VoiceStudio 已经会尝试使用%PROGRAMDATA%(Windows)、~/.cache或临时文件夹中的简短副本重试;如果这些位置都不可写,请将OMNIVOICE_ESPEAK_DATA_CACHE设置为一个简短、可写的 ASCII 文件夹(例如C:\espeak),然后重启。旧版本在此处会以Error processing file '…phontab'退出整个后端。 - 其他问题:install/troubleshooting.md。
另请参阅:benchmarks.md、磁盘占用。
本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 om/VoiceStudio