在CPU上对Kokoro 82M与Supertonic 3 TTS进行基准测试

Reddit r/LocalLLaMA 模型

摘要

详细的CPU基准测试,对比Kokoro 82M和Supertonic 3 TTS模型,测量不同文本长度下的RTF、延迟和吞吐量。结果显示Supertonic 3速度更快,但Kokoro生成的语音更自然,并针对不同使用场景给出了实用建议。

想要真正对比一下这两款能在CPU上顺畅运行的TTS模型。找不到带有具体数据的评测,所以我自己跑了一个。发出来是因为结果出乎我的意料。先给还没见过Supertonic 3的朋友快速介绍一下:这是一种流匹配TTS,你可以减少推理步数来换取速度,默认是5步,“速度模式”是2步。Kokoro 82M大家应该都知道了。 **硬件:** AMD EPYC 7763,4个vCPU,16GB内存,无GPU。大致相当于Ryzen 5600或像样的N100盒子。 **设置:** 6种文本长度,从12个字符到1712个字符,每种跑5次,共120次计时运行。显式禁用了CUDA。丢弃了预热运行。 **平均RTF(越低越快):** * Supertonic 3,2步:0.165(6.1倍实时) * Supertonic 3,5步:0.313(3.2倍实时) * Kokoro 82M PyTorch:0.469(2.1倍实时) * Kokoro 82M ONNX:0.509(2.0倍实时) **中等文本(196个字符,约13秒音频)的实际延迟:** * Supertonic 2步:1.82秒 * Supertonic 5步:3.67秒 * Kokoro PyTorch:5.62秒 * Kokoro ONNX:5.51秒 长文本和超长文本的详细信息见下方GitHub仓库。 **稳定状态下每秒处理的字符数(吞吐量):** Supertonic 2步大约111,Supertonic 5步大约55,Kokoro无论后端如何,都在33到36之间徘徊。 **质量方面,这实际上颠倒了排名:** Supertonic在2步时很快,但音频粗糙。单词含糊不清,韵律机械,不是我会发货的水平。在5步时则干净很多,确实可用。Kokoro无论哪个后端,仍然是我在这个规模级别测试过的模型中最自然的语音。它能在TTS Arena排行榜上排名第一是有原因的。 所以实际的排序更像是: * 想要声音像人类 → Kokoro,接受较慢的速度 * 想要为助手/聊天机器人提供低延迟 → Supertonic 5步是甜点位置 * Supertonic 2步 → 仅限演示和原型制作 **两件让我惊讶的事:** 1. 在这块CPU上,Kokoro的ONNX版本比PyTorch版本*更慢*。我原本以为会相反。ONNX在长文本上有优势,但在短文本上因为固定开销较高而吃亏。值得在Intel硬件上重新测试,看看是否是AMD的问题。 2. Supertonic每次调用的固定开销比Kokoro大得多。短文本的RTF是0.30,中等文本降到0.13。而Kokoro在各种长度下表现更平稳。所以如果你的工作负载是大量短语句,两者之间的差距会缩小。 详细说明和包含全部24个音频样本的GitHub仓库如下,基准测试也在下面的评论中提到👇 这两个TTS模型的评估使用了**Neo AI Engineer**,它构建了评估框架,处理了模型运行时问题并汇总了结果。我手动审查了所有内容。 如果有人手头有N100或树莓派5并运行此测试,我很想看到数据。这才是我真正想要部署的硬件层级。
查看原文

相似文章

Supertone/supertonic-3

Hugging Face Models Trending

Supertonic 3 是一个轻量级的开权重文本转语音模型,专为快速设备端推理而设计,支持的语言扩展至 31 种,并提升了稳定性及表情标签支持。

jaaari/kokoro-82m

Replicate Explore

Kokoro-82M 是一款高效、高质量的文本转语音模型,在 Replicate 上可用,支持多种语言和声音,推理成本低。

supertone-inc/supertonic

GitHub Trending (daily)

Supertonic 是一个开源的端内文本转语音(TTS)系统,专为本地推理设计,具有极低的开销。现已发布第 3 版,支持 31 种语言,并提升了准确性。