GITHUB DAILY #031
Supertonic:99M 参数的端侧 TTS 怪兽,整页网页 1 秒转语音
2026-05-17 · 今日 Trending +749 Stars · 7.1k Stars
项目supertone-inc/supertonic一句话定位闪电级设备端多语言 TTS,ONNX 原生运行Stars7,098 · 今日 +749语言Swift / Python / ONNX参数量~99M(竞品 0.7B-2B)支持语言31 种协议MIT(代码)/ OpenRAIL-M(模型)发布时间2026-04-29(Supertonic 3)
它能解决什么问题?
用过 ElevenLabs、OpenAI TTS、Azure Speech 的开发者都清楚这几个痛点:
1
你的语音数据必须上传云端
医疗记录、金融财报、客服对话 —— 这些数据发到第三方 API,合规风险极高。GDPR、HIPAA、等保 2.0 哪一个都够你喝一壶的。
2
模型动辄 0.7B-2B 参数,设备跑不动
想在树莓派、手机、电子书阅读器上做本地语音合成?现有开源方案(如 Qwen3-TTS、OmniVoice)的模型体积直接劝退。
3
复杂文本朗读一塌糊涂
"Q1 revenue $5.2M" 念成 "Q one revenue five point two em"?电话号码 "(212) 555-0142 ext. 402" 读得支离破碎?几乎所有主流 TTS 服务都在这里翻车。
**Supertonic 的答案:**99M 参数(主流方案的 1/10)、纯本地运行零云端依赖、31 种语言开箱即用、唯一能正确朗读金融表达式和电话号码的开源 TTS。
核心亮点,逐一拆解
1
99M 参数 vs 竞品 2B:小 20 倍,一样能打
Supertonic 3 仅 99M 参数,ONNX 模型约 350MB。对比 OmniVoice、Qwen3-TTS 等动辄 0.7B-2B 的方案,下载快 10 倍、冷启动快 10 倍、内存占用低 10 倍。不需要 GPU,CPU 就能跑到实时。测试数据显示最高可达 167 倍实时速度(Apple M4 Pro),整页网页转语音不到 1 秒。
2
LARoPE:解决长文本 TTS 的"一致性塌方"
这是 Supertonic 最核心的技术创新 —— Length-Aware Rotary Position Embedding。传统 RoPE 位置编码在处理变长语音片段时,位置信息会衰减,导致长文本后半段语调偏移、发音错误。LARoPE 将位置编码与语音片段长度解耦,长文本合成的一致性显著提升。论文发表在 arXiv:2509.11084。
Self-Purifying Flow Matching:Supertonic 的训练策略还能自动净化噪声标签,让模型对数据质量的依赖大幅降低。
3
复杂文本朗读:碾压所有主流服务
Supertonic 无需 G2P(字素转音素)预处理,直接处理原始文本。在金融表达式、电话号码、技术单位等场景中,是唯一全部正确的开源方案:
| 场景 | 示例 | Supertonic | ElevenLabs | OpenAI | Gemini | Microsoft |
|---|---|---|---|---|---|---|
| 金融表达 | ||||||
| 450K | ||||||
| 正确 | 错误 | 错误 | 错误 | 错误 | ||
| 电话号码 | ||||||
| (212) 555-0142 ext. 402 | ||||||
| 正确 | 错误 | 错误 | 错误 | 错误 | ||
| 技术单位 | ||||||
| 2.3h, 30kph | ||||||
| 正确 | 错误 | 错误 | 错误 | 错误 |
4
11 个平台 SDK,从浏览器到 iOS 全覆盖
Python、Node.js、C++、C#、Go、Swift、iOS、Rust、Flutter、Java、Browser(WebGPU/WASM)—— 这可能是 TTS 领域跨平台支持最全面的项目。浏览器版直接在用户端运行,零服务器成本。
5
10 种情感标签,让合成语音有"灵魂"
Supertonic 3 引入内联情感标签,直接嵌入文本即可控制语气,无需参考音频:
<throat_clear>
比如输入:"That's hilarious! <laugh> I can't believe it.",合成语音会在对应位置自然地加入笑声。
6
31 种语言 + 语言无关模式
覆盖中英日韩法德阿拉伯等 31 种语言,甚至支持 lang="na" 语言无关模式 —— 当输入文本语言未知时,模型自动适配。这对多语言客服系统、翻译应用来说是杀手级特性。
English中文日本語한국어FrançaisDeutschEspañolالعربيةPortuguêsРусскийItaliano+20 more
三模块架构,极简设计
Supertonic 的架构精简到只有三个核心模块,但每个都经过深度优化:
Speech Autoencoder(语音自编码器)
将语音信号压缩为连续的潜在表示(latent representation),为文本到语音的映射提供统一的表示空间。这是整个系统的"语音压缩引擎"。
Flow Matching Text-to-Latent(流匹配文本转潜在向量)
核心扩散模型,将输入文本转换为语音潜在向量。关键创新:字符级输入(无需 G2P 模块)+ ConvNeXt 特征提取 + 交叉注意力文本-语音对齐 + LARoPE 位置编码。训练时采用 Self-Purifying Flow Matching 自动净化噪声标签。
ONNX Runtime 推理引擎
全部基于 ONNX Runtime 深度优化,确保跨平台一致性。浏览器端使用 onnxruntime-web(WebGPU/WASM),移动端使用原生 ONNX Runtime,无需 GPU 即可实时运行。
输出质量:44.1kHz 16-bit WAV,录音棚级别,无需外部上采样器。
从 v1 到 v3:三个月的进化
2025 年 12 月 · v1首个开源版本,仅支持英语,44M 参数,ONNX 模型约 200MB2026 年 1 月 · v2扩展到 5 种语言,66M 参数,发布 Voice Builder(声音克隆工具),PyPI 包上线2026 年 4 月 · v3(最新)31 种语言 · 99M 参数 · 情感标签 · 朗读稳定性大幅提升,重复/跳读失败率显著降低,说话人相似度改善
实战场景:不只是"念课文"
场景一:医疗病历语音播报(隐私优先)
患者数据不能上传云端。Supertonic 在本地设备实时朗读电子病历、检查报告,医生查房时无需盯着屏幕。"患者血压 120/80mmHg,空腹血糖 5.3mmol/L" —— 技术单位朗读完全正确。
场景二:金融财报电话会议自动生成
输入 Q1 财报文本:"Revenue reached 450K." Supertonic 能正确朗读所有金融表达式,配合情感标签 、 等模拟自然的财报电话会议语气。唯一能做到这一点的开源方案。
场景三:多语言客服机器人(浏览器端)
使用 WebGPU/WASM 版本,直接在用户浏览器中运行 TTS。配合 ASR 实现低延迟语音助手,支持 31 种语言自动切换,零服务器成本。使用 模式处理语言未知的来电。
场景四:离线电子书阅读器
已有基于 Supertonic 的 iOS 应用 PageEcho。树莓派 + Supertonic 即可搭建离线有声书系统,适合飞行模式、偏远地区、隐私敏感的用户群体。
蓬勃的生态系统
Supertonic 发布不到半年,社区已经构建了丰富的应用矩阵:
| 项目 | 类型 | 说明 |
|---|---|---|
| TLDRL | ||
| Chrome 扩展 | ||
| 网页一键转语音,1 秒完成 | ||
| Read Aloud | ||
| 浏览器扩展 | ||
| 开源网页朗读,Chrome/Edge 均支持 | ||
| PageEcho | ||
| iOS App | ||
| 电子书阅读器,离线 TTS | ||
| VoiceChat | ||
| Web Demo | ||
| 浏览器端语音到语音 LLM 聊天 | ||
| OmniAvatar | ||
| 数字人 | ||
| 照片 + 语音生成说话视频 | ||
| CopiloTTS | ||
| Kotlin SDK | ||
| Kotlin Multiplatform TTS | ||
| Supertonic MNN | ||
| 量化版本 | ||
| MNN 推理(fp32/fp16/int8) | ||
| Transformers.js | ||
| JS 集成 | ||
| HuggingFace 官方 JS 库已集成 | ||
Hugging Face 上已有 9+ 个基于 Supertonic 的 Demo Space、1 个微调模型、1 个量化版本。
上手指南:3 分钟跑起来
方式一:Python 快速体验
# 安装(自动下载模型)
pip install supertonic
# Python 代码
from supertonic import TTS tts = TTS(auto_download=True) style = tts.get_voice_style(voice_name="M1") text = "Q1 revenue reached 450K." wav, duration = tts.synthesize( text=text, lang="en", voice_style=style, total_steps=8, # 质量 5(低) ~ 12(高)speed=1.05, # 语速 0.7(慢) ~ 2.0(快) ) tts.save_audio(wav, "output.wav") print(f"Generated {duration[0]:.2f}s of audio")
方式二:中文语音合成
from supertonic import TTS tts = TTS(auto_download=True) style = tts.get_voice_style(voice_name="M1")
# 中文文本合成(注意:Supertonic 对中文支持需实测)
text = "今年第一季度营收达到五十二万美元,同比增长百分之二十三。" wav, duration = tts.synthesize(text=text, lang="na", voice_style=style) tts.save_audio(wav, "chinese_output.wav")
方式三:浏览器端运行(零服务器)
# 克隆仓库
git clone github.com/supertone-i… cd supertonic/web npm install npm run dev
# 打开浏览器即可使用 WebGPU/WASM 推理
方式四:下载完整模型(Git LFS)
# 安装 Git LFS(macOS)
brew install git-lfs && git lfs install
# 下载 Supertonic 3 模型
git lfs install git clone huggingface.co/Supertone/s… assets
**提示:**首次运行 PyPI 包时会自动从 Hugging Face 下载模型,无需手动操作。音色预设包括 M1-M5(男声)和 F1-F5(女声),
使用 tts.get_voice_style(voice_name="F2") 切换。
性能基准:数据说话
在 MiniMax-MLS-Test 基准测试(WER/CER,越低越好)中的表现:
| 语言 | VoxCPM2 | OmniVoice | Qwen3-TTS | Supertonic 2 | Supertonic 3 |
|---|---|---|---|---|---|
| English | |||||
| 2.11 | |||||
| 2.02 | |||||
| 2.25 | |||||
| 2.52 | |||||
| 2.06 | |||||
| Spanish | |||||
| 1.34 | |||||
| 0.99 | |||||
| 0.75 | |||||
| 1.81 | |||||
| 1.13 | |||||
| Korean* | |||||
| 4.70 | |||||
| 3.22 | |||||
| 4.07 | |||||
| 3.65 | |||||
| 3.26 | |||||
| German | |||||
| 0.85 | |||||
| 0.96 | |||||
| 0.52 | |||||
| — | |||||
| 0.86 | |||||
| Russian | |||||
| 3.31 | |||||
| 4.53 | |||||
| 4.48 | |||||
| — | |||||
| 3.99 | |||||
| Ukrainian | |||||
| 5.85 | |||||
| 0.71 | |||||
| — | |||||
| — | |||||
| 1.23 | |||||
* 标星号为 CER(字符错误率),其余为 WER(词错误率)。Supertonic 3 在大多数语言上接近或超越远大于自身的模型,且完全在 CPU 上运行 —— 对手们跑在 A100 GPU 上。
诚实说:目前的局限
!
GPU 加速尚未充分优化
当前版本以 CPU 推理为主,GPU 模式尚未充分测试。如果你需要批量并发,目前只能靠多核 CPU 并行。
!
输出格式仅限 16-bit WAV
原生输出仅支持 WAV 格式。如果需要 MP3/AAC,需要自行使用 ffmpeg 等工具转换。
!
声音克隆需商业版 Voice Builder
开源版本提供 M1-M5、F1-F5 共 10 种预设音色。自定义声音克隆需使用商业版 Voice Builder(2026.01.22 发布)。
!
部分语言 WER 偏高
在 Finnish(5.40)、Vietnamese(4.49)等语言上表现较弱,仍需持续优化。
今日总结
Supertonic 是端侧 TTS 领域的一次范式级突破。99M 参数做到了 2B 级别的质量,31 种语言、11 个平台 SDK、10 种情感标签、唯一正确朗读金融表达式的开源 TTS —— 这些指标放在一起,目前没有对手。
如果你在做隐私敏感的语音应用(医疗、金融、客服)、需要离线部署(嵌入式、车载、电子书)、或者想给产品加上多语言 TTS 能力又不想烧云服务费,Supertonic 值得你立刻 Star 并试用。
如果这篇文章对你有帮助,欢迎点赞、在看、转发三连 🔥
明天同一时间,我们继续发掘下一个值得深读的开源项目
GitHub Daily · 每天一个值得深读的开源项目
前往 GitHub 仓库