moss-tts-lite
MOSS-TTS-v1.5 的极简推理库:4 个依赖、单卡可跑(8GB 起)、输出与官方实现 bitwise 一致。
pip install moss-tts-lite
一句话合成语音:
moss-tts-lite "你好,欢迎使用。" -o out.wav --model-dir /path/to/W4GPTQ-w1
它是什么
| 模型 | MOSS-TTS-v1.5(OpenMOSS),31 语言,24kHz,支持 [pause 2s] 韵律标记 |
| 实现 | 纯 PyTorch(torch/numpy/soundfile/pyyaml,无 triton/compile/flash-attn),Windows 可用 |
| 正确性 | 与 HF 原版同 seed 逐位一致(bitwise EXACT 档);量化档经十语言轨迹验证 |
| 速度 | W4 GPTQ 82-97 步/s(A10G,≈6.5× 实时);bf16 36 步/s |
| 显存 | 8GB 卡可跑质量档(W4GPTQ,按需 KV);24GB 卡可跑 bf16 |
安装
# 1) 先装 CUDA 版 torch(按你的 CUDA 版本选索引;>= 2.5)
pip install torch --index-url https://download.pytorch.org/whl/cu128
# 2) 装本库
pip install moss-tts-lite
torch 2.4 及以下仅支持 bf16 eager 路径(量化档需 2.5+,实测跨版本轨迹一致); 图化 fast 路径需 CUDA,纯 CPU 下(
--device cpu)CLI 会自动回退到 eager。
模型权重(三选一)
| 选项 | 命令 | 说明 |
|---|---|---|
| 量化档(推荐) | HF 或 ModelScope 下载 MOSS-TTS-v1.5-W4GPTQ-w1 |
7.2GB,自包含目录,8GB 显存可用 |
| 质量优先 | 同上,-w2 |
略大,离线生产场景 |
| 原版权重 | OpenMOSS-Team/MOSS-TTS-v1.5 + MOSS-Audio-Tokenizer |
bf16 全精度,需 24GB |
# Hugging Face
huggingface-cli download baicai1145/MOSS-TTS-v1.5-W4GPTQ-w1 --local-dir ./W4GPTQ-w1
# 或 ModelScope
modelscope download --model baicai1145/MOSS-TTS-v1.5-W4GPTQ-w1 --local_dir ./W4GPTQ-w1
用法
# 量化档(默认 w1p:82 步/s,质量十语言验证 99.5%)
moss-tts-lite "要合成的文本" -o out.wav --model-dir ./W4GPTQ-w1
# 英文(带语言标签更稳)
moss-tts-lite "Hello world." -o en.wav --model-dir ./W4GPTQ-w1 --language English
# 停顿控制
moss-tts-lite "先别急——[pause 1s]我们再想想。" -o pause.wav --model-dir ./W4GPTQ-w1
# 极速档(97 步/s,非 bitwise,统计等价)
moss-tts-lite "文本" -o out.wav --model-dir ./W4GPTQ-w1 --fast-native
# 固定种子复现
moss-tts-lite "文本" -o out.wav --model-dir ./W4GPTQ-w1 --seed 1234
默认就是快路径(v1.1.0 起):裸命令行直接走 CUDA Graph 解码(
moss_tts_lite.fast), 与 eager 参照逐位一致。旧脚本里的--fast仍被接受,但已是 no-op(打印一行提示)。 要跑慢的 eager 参照路径请显式加--eager(仅调试用)。
Python API:
from moss_tts_lite.cli import synthesize
wav, sr, res, strategy = synthesize(
"你好。", output="out.wav",
model_dir="./W4GPTQ-w1", # standalone 目录
quant="w4gptq", # 或 None=bf16(需原版权重)
seed=1234,
# fast=True 是默认(与 CLI 一致);只有显式 fast=False 才是 eager 参照路径
)
档位速查
| 命令 | 速度* | 显存 | 质量 | bitwise |
|---|---|---|---|---|
(默认,等价于 --fast) |
36 步/s | ~17GB | 参照 | ✅ |
--quant w4gptq |
82 步/s | 8.5GB / 8GB 卡可用 | top-25 98.6%(tie-robust) | ❌ 量化档 |
--quant w4gptq + --fast-native |
97 步/s | 8.2GB | argmax 100% / top-25 97.5% | ❌ |
--eager(仅调试) |
30 步/s | ~17GB | 与默认逐位相同 | ✅ |
*A10G 实测;4090 约按带宽等比提升。
8GB 卡注意:加 --max-new-tokens 2048(约 164 秒音频容量),详见 --help。
三路径的关系:默认 fast(逐位一致)、--fast-native(更快,非逐位)、--eager(慢参照)。
eager 路径本体仍保留在 API 层——直接调用 moss_tts_lite.generate / MossTTSModel.step
的代码不受本次默认翻转影响,只是 CLI 不再默认走它。
常见问题
生成的音频不结束/一直静音? 内置看门狗 v2 会自动截断(默认开启,--no-watchdog 关闭)。这是 RTN 量化档的已知风险,GPTQ 档 0/32 复现。
CUDA 装不上? torch 必须从 pytorch 官方索引装(见安装节),PyPI 上的 torch 默认包可能不带你的 CUDA 版本。
Windows? 支持但未在真机验证(Linux 验证 + API 全兼容)。遇到问题提 issue。
更多
- 完整技术文档(量化方法、验证方法论、性能分析):GitHub
- 模型卡与量化验证报告:随模型仓库发布
- License:Apache-2.0(继承 MOSS-TTS 上游)
Metadata
Release files for moss-tts-lite 1.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| moss_tts_lite-1.1.0.tar.gz | 138.7 kB | Without provenance | Details for moss_tts_lite-1.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| moss_tts_lite-1.1.0-py3-none-any.whl | Python 3 | none | any | Details for moss_tts_lite-1.1.0-py3-none-any.whl |
Total release size: 229.6 kB
Release files / moss_tts_lite-1.1.0.tar.gz
| Download URL | moss_tts_lite-1.1.0.tar.gz |
|---|---|
| Size | 138.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
017ef11abda8e8c4777468c2b22bcd23b00410e27aba1443c43b6e0565d5cbed
|
|
BLAKE2b-256 checksum How to use checksums |
6dce6fc21da568cd03f55be303a266c8146713c203ee946e006fd611890e50b2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.4
|
Release files / moss_tts_lite-1.1.0-py3-none-any.whl
| Download URL | moss_tts_lite-1.1.0-py3-none-any.whl |
|---|---|
| Size | 90.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
173fd55c1a828f21a8f6721f9e4fe62ac57b0ef97416711e135e546ea6c02598
|
|
BLAKE2b-256 checksum How to use checksums |
6434187b945d7fce7c1b3d82199a773ac045d0dd49097c0c288bd27fa43a1f09
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.4
|
Security for moss-tts-lite 1.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.