n4ze3m/tiny-voca
机器学习一个 450 万参数、两种英文音色、可在 CPU 或浏览器中运行的自研语音合成模型。
项目介绍
tiny-voca 是一个从零训练的轻量英文语音合成模型。参数量为 4,537,291(含波形生成器约 18 MB),输出 24 kHz 美式英语音频,提供 F2(女声)和 M2(男声)两种固定音色。它的目标是在没有 GPU 的环境下也能运行,支持 PyTorch、ONNX Runtime 和浏览器内的 ONNX Runtime Web。
代码、权重、训练配方和数据集均已公开,模型与数据说明见 docs/model.md。适合需要离线、轻量英文 TTS 的场景,也适合想研究、微调或移植小型端到端语音模型的人。
快速使用
准备:Python 与 git,安装步骤会通过 hf 命令行下载权重。
- 安装并下载权重:
git clone https://github.com/n4ze3m/tiny-voca.git
cd tiny-voca
pip install -e ".[own]"
hf download n4ze3m/tiny-voca --local-dir weights
export DIZIONE_DATA=weights/phonemizer
- 合成一句话:
python -m tiny_voca.infer \
--checkpoint weights/tiny-voca.pt \
--voice F2 \
--text "Hello! This is tiny voca." \
--output hello.wav
执行后会生成 hello.wav。可用 --speed、--pitch-shift、--pitch-range 调整语速、音高偏移和音高起伏。想在浏览器里试,可以打开在线演示,其源码位于 web/ 目录,本地可用 npx wrangler dev 启动。
模型与训练
训练流程拆成数据准备、标注、GAN 训练和评估几个命令(tiny_voca.prepare、annotate、train、evaluate)。发布的权重在一块 RTX 4090 上训练了 7.7 小时。导出 ONNX:
python -m tiny_voca.export --checkpoint weights/tiny-voca.pt --output tiny-voca.onnx
权重仓库里已有现成的 ONNX 文件,模型卡说明了调用方式。
使用约束
- 仅支持英文,只有两种固定音色,不支持声音克隆。
- 模型一次只能读一句话,长文本需要先切分。
- 外国人名和不常见拼写经常读错。
- 暂不支持流式输出。
- 代码与权重为 Apache-2.0,数据集为 CC BY 4.0。
HotRepo 点评
该项目在 2026-11-15 进入 HotRepo 新项目 Python 榜,在始于 2026-11-14 仓库创建后不久的首个增长窗口内新增 105 Star、12 Fork。它尚未出现在全部语言日榜上,因此站内观察只有这一次新项目记录,不足以构成长期趋势。技术上的差异点在于:不足 500 万参数的模型、完整的从零训练配方和 ONNX/浏览器部署集中在同一个项目里,比起多数小型 TTS 项目,范围更窄、也更容易核查。
本文由 AI 根据项目 README 生成,更新于 ,以项目官方文档为准。
相关推荐
- pnnbao97/VieNeu-TTS面向越南语的本地 TTS,支持即时音色克隆,可在 CPU 或 GPU 上实时合成语音。
- OpenBMB/VoxCPM一个 2B 参数的无分词 TTS 模型,支持 30 种语言、声音设计和语音克隆。
- hehehai/AudioSmith在 Mac 本地完成语音合成、声音克隆、有声书、配音与转写的语音工作室,模型全部在设备上运行。
- NVIDIA-NeMo/Speech面向语音识别、语音合成与语音大模型的研究与开发框架,可训练、微调并部署模型。
- moonshine-ai/moonshine为语音智能体与语音界面提供低延迟、端侧运行的流式语音识别、意图识别与语音合成工具。