supertonic 是什么?

Supertonic 是 Supertone 开源的设备端多语言 TTS(文字转语音)系统:一个 99M 参数的开源权重模型经 ONNX Runtime 完全在本地跑——无云、无 API、无隐私顾虑,支持 31 种语言、44.1kHz 输出、零样本声音克隆,并提供 Python/Node.js/浏览器(WebGPU)/Java/C++/C#/Go/Swift/iOS/Rust/Flutter 共 11 个运行时的现成 SDK,号称一秒内把整页网页转成语音。

⭐ 10,721 Stars 🍴 1,107 Forks Swift MIT 作者: supertone-inc
来源:README 首段 + Highlights + Supported Languages + Multi-Runtime SDKs 查看 GitHub 仓库 →

为什么值得关注

本地 TTS 长期在「质量好但模型大(0.7B-2B 级、慢、吃内存)」和「轻量但音质差」之间二选一。Supertonic 用一个仅 99M 参数的开源权重模型打破这个权衡:体积只是同类开源 TTS 的零头,冷启动快、内存低,却能跨桌面/浏览器/移动/边缘做实时合成(一秒转一页网页)。再叠上 31 语言(v3)+ 语言无关模式 lang=na(不知道输入语种时也能处理)+ 零样本声音克隆 + 11 个运行时的现成示例(连 WebGPU 浏览器端、Raspberry Pi、E-Reader、Chrome 扩展都有 demo),把「设备端、隐私优先、多平台」的 TTS 一次做齐。背靠商业公司 Supertone(有 Play / API 付费产品)但模型开源权重 + 代码 MIT,是本地 TTS 这条线上 9K★ 量级、工程完整度很高的开源实现。

来源:README Highlights / Performance / Model Size / Demo

核心功能

99M 参数开源权重 ONNX 模型

紧凑的全开源权重 checkpoint,参数量仅 99M——是 0.7B-2B 级开源 TTS 的零头,带来更小下载、更快冷启动、更低内存。经 ONNX Runtime 推理,完全本地运行无需云或 API。模型托管在 HuggingFace(Supertone/supertonic-3),用 OnnxSlim 优化过。

来源:README Highlights '99M-Parameter Open-Weight Model' + Model Size 节
31 语言 + 语言无关模式

Supertonic 3(2026-04-29 发布)支持 31 种语言直接从文本合成;不知道输入语种时传 lang="na" 让模型语言无关地处理,无需单独的语言适配器。相比 v2 的 5 语言大幅扩展,并改进了朗读准确率、减少重复/跳读失败。

来源:README Highlights + Supported Languages + Update News(2026.04.29 v3)
11 运行时多平台 SDK

通过 ONNX Runtime 提供现成示例覆盖 Python、Node.js、浏览器(WebGPU)、Java、C++、C#、Go、Swift、iOS、Rust、Flutter——仓库每个语言一个目录,同一 TTS 能力跨平台一致。浏览器端用 WebGPU 本地推理,移动/边缘端原生跑。

来源:README 'Multi-Runtime SDKs' + tree(cpp/csharp/flutter/go/ios/java/nodejs/py/rust/swift/web 目录)
零样本声音克隆(Voice Builder)

Voice Builder 把用户的声音变成可部署、边缘原生的 TTS,永久拥有;可创建自定义 voice profile 并下载 Supertonic 2/3 各自版本的 JSON。也支持预置 voice style(M1-M5、F3-F5 等多种)。零样本 voice cloning 在 Supertone Play / API 商业产品里也提供。

来源:README Voice Cloning + Update News(Voice Builder)
本地 HTTP 服务 + OpenAI 兼容端点

supertonic-py 提供本地 HTTP server:原生 POST /v1/tts 端点 + OpenAI 兼容的 POST /v1/audio/speech 端点,带交互式 OpenAPI 文档(:7788/docs),支持批量合成和自定义 Voice Builder JSON 导入。可直接替换调用 OpenAI TTS 的现有代码。

来源:README 'Local HTTP Server' 节
边缘/嵌入式 demo(Raspberry Pi / E-Reader / Chrome 扩展)

README 给出在 Raspberry Pi、E-Reader、Chrome 扩展上跑的 demo,印证「设备端、低开销」定位;Python API 输出 44100Hz float32 numpy 数组、可调 speed(0.7-2.0),易接入。

来源:README Demo / Quick Start(Python API)

技术架构

Supertonic 的架构本质是「一个开源权重 ONNX 模型 + 多语言运行时参考实现」。核心资产不在仓库代码而在 HuggingFace 上的 99M 参数 ONNX 模型(supertonic-3,含预置 voices),用 OnnxSlim 优化。仓库本身是个 polyglot 示例集:cpp/csharp/flutter/go/ios/java/nodejs/py/rust/swift/web 各一个目录,每个用 ONNX Runtime 的对应语言绑定实现同一套 TTS 推理流程(文本→模型→44.1kHz 音频),test_all.sh 跨语言统一测。运行时按平台选 ONNX Runtime backend:浏览器走 WebGPU、移动走原生、桌面/边缘走 CPU/GPU。supertonic-py 额外提供本地 HTTP server(原生 + OpenAI 兼容端点)。版本上 v2(5 语言)代码留在 release/supertonic-2 分支、v3(31 语言)为主且 ONNX assets 与 v2 兼容。设计判断:把模型与运行时彻底解耦、用 ONNX 作为跨 11 平台的统一推理层,是这类「一次训练、到处部署」TTS 的标准且正确的做法,99M 的小模型让边缘部署真正可行;代价是仓库代码只是薄示例层,真正的能力、训练方法和持续改进都在 Supertone 私有侧,开源的是权重与推理而非训练。

来源:tree(11 语言目录 + test_all.sh)+ README Technical Details / Model Size

项目知识图谱

知识图谱:项目核心节点(中心)+ 核心功能(内环六边形)+ 关键技术依赖(外环 chip) ONNX Runtime — 11 个运行时的统一推理后端ONNX Runtime 99M 参数开源权重模型(HuggingFace Supertone/supertonic-3,OnnxSlim 优化)99M 参数开源权… WebGPU — 浏览器本地推理WebGPU supertonic-py — Python 包 + 本地 HTTP server(OpenAI 兼容端点)supertonic-py 预置 voice styles + Voice Builder JSON(声音克隆配置)预置 voice sty… 99M 参数开源权重 ONNX 模型99M 参数开源权重 ONN… 31 语言 + 语言无关模式 11 运行时多平台 SDK 零样本声音克隆(Voice Builder)零样本声音克隆(Voice… 本地 HTTP 服务 + OpenAI 兼容端点本地 HTTP 服务 + Ope… 边缘/嵌入式 demo(Raspberry Pi / E-Reader / Chrome 扩展)边缘/嵌入式 demo(Ra… supertonic 项目本体 核心功能 关键依赖

中心为项目本体,内环 = 核心功能模块,外环 = 关键技术依赖;按 deep.json 中的 core_features 与 tech_stack.key_deps 自动生成

技术栈

语言多语言示例(Swift/C++/C#/Go/Java/Rust/Python/Node.js/Flutter/iOS/Web),核心是 ONNX 模型框架ONNX Runtime(跨平台推理)+ WebGPU(浏览器端)
ONNX Runtime99M 参数开源权重模型(HuggingFace Supertone/s…WebGPUsupertonic-py预置 voice styles + Voice Builder JSON…
完全设备端,无云/无 API;模型从 HuggingFace 自动下载放 assets/;本地 HTTP server 默认 :7788,含 OpenAI 兼容 /v1/audio/speech;代码 MIT、模型开源权重;可跑在 Raspberry Pi / E-Reader / 浏览器扩展等边缘环境;输出 44.1kHz float32
来源:README Quick Start / Multi-Runtime + topics(onnx/webgpu)+ tree

快速上手

# Python(首次运行自动从 HuggingFace 下载模型) pip install supertonic # 见 supertonic-py # 在代码里: # style = tts.get_voice_style(voice_name="M1") # wav, duration = tts.synthesize(text="...", lang="en", voice_style=style, speed=1.05) # # wav: (1, num_samples) float32 @ 44100Hz;lang="na" 为语言无关 # import soundfile as sf; sf.write("output.wav", wav.squeeze(), 44100) # 本地 HTTP 服务(OpenAI 兼容) # 启动后用 POST /v1/tts 或 POST /v1/audio/speech,文档在 http://127.0.0.1:7788/docs # 从源码跑多语言示例 git clone https://github.com/supertone-inc/supertonic.git cd supertonic # 下载 ONNX 模型与预置 voices 到 assets/ git clone https://huggingface.co/Supertone/supertonic-3 assets # 然后进 py/ nodejs/ rust/ swift/ web/ 等目录跑对应示例;test_all.sh 跨语言测
来源:README Quick Start / Getting Started / Local HTTP Server 原文

使用场景

1. 隐私优先的本地语音合成:无需把文本发往云 TTS,整个推理在设备上完成,适合敏感内容或离线场景;2. 浏览器/扩展内 TTS:用 WebGPU 在浏览器本地把网页/文章转语音(Chrome 扩展 demo),无后端成本;3. 边缘/嵌入式朗读:Raspberry Pi、E-Reader 等低算力设备上跑 99M 小模型做本地朗读;4. 多平台应用集成:iOS/Flutter/移动 app、Go/Java/C# 后端、Rust/C++ 原生程序,用同一 ONNX 模型 + 对应运行时 SDK;5. 替换云 TTS API:用本地 HTTP server 的 OpenAI 兼容 /v1/audio/speech 端点,直接换掉调 OpenAI TTS 的现有代码;6. 自定义音色:用 Voice Builder 做零样本声音克隆,得到可边缘部署、永久拥有的自有音色。

来源:README Demo / Local HTTP Server / Voice Cloning / Multi-Runtime

优势与局限

优势

  • 小模型打破质量/体积权衡:99M 参数 vs 同类 0.7B-2B 开源 TTS,下载小、冷启动快、内存低,让边缘和浏览器端本地 TTS 真正可行,还能做实时合成
  • 多平台覆盖罕见的全:11 个运行时(含 WebGPU 浏览器、iOS、Flutter、Rust、Go 等)现成示例,靠 ONNX Runtime 统一推理层,一个模型到处部署
  • 隐私优先:完全设备端、无云无 API,对敏感内容/离线/合规场景是真优势;本地 HTTP server 还提供 OpenAI 兼容端点便于替换云 TTS
  • 功能完整:31 语言 + 语言无关 lang=na + 零样本声音克隆(Voice Builder)+ 多预置音色 + 可调语速,且 v3 改进了朗读准确率、减少重复/跳读
  • 开源诚意 + 商业可持续:代码 MIT、模型开源权重托管 HuggingFace,背后 Supertone 有 Play/API 商业产品支撑持续投入,OnnxSlim 优化过的模型即取即用

局限

  • 可维护性 / 开放度边界:开源的是权重与推理,训练方法、数据和持续改进在 Supertone 私有侧,仓库代码只是薄示例层,社区无法复现或自训模型,模型演进节奏由公司掌控
  • 可扩展性风险:新增语言、改进音质都依赖官方发新模型(v2→v3 即如此),用户无法自行微调或扩展语种;声音克隆质量与可控性也受官方 Voice Builder 限制
  • 可测试性 / 质量风险:TTS 的「朗读准确率/自然度」本质主观,README 称 v3 减少了重复/跳读但未给跨语种的客观 MOS/WER 等量化指标,实际质量需自行按语种测试
  • 稳定性 / 版本风险:仅 1 个 GitHub Release(v2.0.0),v3 通过 News 与 HuggingFace 模型发布、代码与模型版本管理分离(v2 在单独分支),用户要分清代码版本与模型版本的搭配
  • 性能声明依赖环境:「一秒转一页网页」「实时合成」取决于设备算力与 ONNX Runtime backend(WebGPU/CPU/GPU 差异大),低端边缘设备的实际 RTF 未逐平台量化
  • 依赖与体积:需从 HuggingFace 下载模型到 assets/,离线部署要自行打包模型;11 平台示例的成熟度可能不一,部分语言绑定的工程完整度需实测
来源:综合 README + tree + topics + 模型/代码分离的事实

最新版本

GitHub Release 仅 1 个:v2.0.0(2026-01-06)。但模型与功能迭代主要走 News + HuggingFace 模型发布:Supertonic 3(2026-04-29,31 语言、改进准确率、v2 兼容 ONNX assets)是当前主线,v2(5 语言)代码保留在 release/supertonic-2 分支。即代码 tag 与模型版本管理分离,看 News 才是最新状态。

来源:GitHub Releases API(1 个 tag)+ README Update News

总结评价

如果你要设备端、隐私优先、多平台的 TTS,Supertonic 是目前开源里最值得用的之一:99M 小模型 + ONNX 跨 11 平台 + 31 语言 + 声音克隆,浏览器(WebGPU)、iOS、Raspberry Pi 都能跑。务实建议:1) 先按你的目标平台跑对应目录的示例(py/ 最完整,浏览器用 web/ WebGPU),把模型从 HuggingFace 拉到 assets/;2) 要替换云 TTS 就用 supertonic-py 的本地 HTTP server + OpenAI 兼容 /v1/audio/speech 端点,改动最小;3) 音质/朗读准确率按你的目标语种实测——31 语言覆盖广但各语种质量未必齐平,README 无客观量化指标;4) 清楚它的开放边界:权重和推理开源、训练和数据不开源,新语种/音质提升要等官方发新模型,无法自训;5) 性能声明看设备——边缘/低端机的实际实时率要自己测,别直接套「一秒一页」的桌面数字;6) 注意代码 tag(v2.0.0)与模型版本(Supertonic 3)分离,搭配关系看 README News。

来源:综合分析
透明度声明
本页内容由 AI(大语言模型)基于以下公开材料自动生成:GitHub README、代码目录结构、依赖文件、Release 信息。 分析时间: 2026-05-22 09:56. 质量评分: 100/100.

数据来源:README、GitHub API、依赖文件