
项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-10-25 · 当前星标 ★ 1397
使用教程
ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。
环境要求
- Python 3.10–3.12(README 推荐使用全新的 conda 环境)
- 已安装 conda(用于创建隔离环境)
- 可用的 pip 包管理环境
- 可选:如需以 OpenAI 兼容接口提供服务,需按官方文档安装 sglang-omni
- 可访问 Hugging Face 以下载 dots-studio/dots.tts-mf 模型权重
安装与启动步骤
-
1创建虚拟环境
README 建议新建干净的 conda 环境,Python 版本选 3.10,避免与已有依赖冲突。
conda create -n dots_tts python=3.10 -y -
2激活环境
后续所有安装与运行命令都要在这个已激活的环境里执行。
conda activate dots_tts -
3从 PyPI 安装
最简安装方式,一条命令装好 dots.tts 及其依赖。
pip install dots.tts -
4或从源码安装
需要本地开发或可编辑安装时使用,需带上 README 指定的约束文件以保证依赖版本兼容。
git clone https://github.com/studio-dots-ai/dots.tts cd dots.tts pip install -e . -c constraints/recommended.txt -
5安装完整依赖
需要训练或代码检查等额外能力时,安装 full 附加依赖组。
pip install 'dots.tts[full]' -
6下载模型权重
拉取 dots-studio/dots.tts-mf 预训练权重,供后续推理或服务加载。
hf download dots-studio/dots.tts-mf -
7启动兼容服务
在 sglang-omni 仓库目录下执行,用官方示例配置启动监听 8000 端口的语音合成服务。
sgl-omni serve --model-path dots-studio/dots.tts-mf --config examples/configs/dots_tts.yaml --port 8000
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
--model-path | 是 | 指定要加载的模型权重路径或仓库名 | dots-studio/dots.tts-mf |
--config | 是 | 模型对应的示例配置文件,两步 sCM 或 STTS 需换专用配置 | examples/configs/dots_tts.yaml |
--port | 是 | 服务监听端口,接口按 OpenAI 兼容格式暴露 | 8000 |
--prompt-text | 否 | 参考音频的实际文本,须与音频内容一致 | 这是一段十秒左右的参考语音 |
--seed | 否 | 控制韵律变化的随机种子,换值可得到不同节奏语调 | 42 |
--num-steps | 否 | flow-matching 权重的采样步数,质量不足时可调高 | 32 |
如何确认成功
服务在 8000 端口正常监听、无报错退出,即可通过其 OpenAI 兼容的 /v1/audio/speech 接口请求合成语音并拿到音频。
常见问题
Q:参考音频应该多长?
A:README 建议保持在 10 秒左右,更长的参考音频并不会带来更好的合成效果,反而可能增加处理负担。
Q:合成结果不稳定或出现字词错误怎么办?
A:优先检查 --prompt-text 是否与参考音频实际内容一致,不一致会明显降低稳定性并可能造成字级错误。
Q:多音字读错了怎么处理?
A:可用带声调的拼音替换输入文本中对应的字来强制读音,例如写成「我生平不hào此道」;不识别 hao4 这类数字声调写法。
Q:合成音质不够好怎么办?
A:对 flow-matching 权重可提高 --num-steps;但固定步数的 MeanFlow 权重不接受不兼容的采样参数覆盖。
Q:想换语调或节奏怎么办?
A:设置不同的 --seed 值重新合成,每个种子会产生不同的节奏与语调,可多试几次。
注意事项
- README 未给出统一的命令行推理入口,实际调用建议以仓库代码或 SGLang Omni 服务接口为准。
- 参考音频尽量选高采样率、低底噪、结尾无杂音的素材,克隆效果更好。
- 使用 SGLang Omni 前需按其官方安装文档装好环境,并在 sglang-omni 代码目录内执行启动命令。
- 本教程命令均来自 README,若上游接口有变动请以仓库最新说明为准。
核心亮点
- 纯 Python 实现,推理流程清晰,便于阅读源码和二次开发
- 支持本地加载模型合成语音,不依赖闭源云服务,数据可控
- 提供可直接运行的合成脚本,降低上手门槛
不足之处
- 文档与使用示例相对精简,新用户需读源码理解参数
- 预训练模型与音色资源有限,效果调优空间依赖社区积累
适用场景
- 为智能助手或有声阅读应用生成语音播报
- 批量把文章、脚本转成音频用于内容生产
- 在本地服务中集成 TTS 能力,避免调用外部云 API
替代项目
Coqui TTS、Piper、MeloTTS
上一篇:OmniVoice
下一篇:capcut-tts-api
同类项目推荐
UnityTTS
开源
在 Unity 里一键让文字开口说话,快速集成 TTS 功能。
Text to Speech in Unity.
f5-tts-mlx
开源
在 Mac 上本地跑 F5-TTS,零样本克隆语音
Implementation of F5-TTS in MLX
detail_tts
开源
一个框架搞定多种TTS生成模型,快速对比实验
All generative model in one for better TTS model
ai-dj
开源
现场演出中实时用 AI 生成音乐,保持人类掌控
AI music generation for live performance - Standalone (Ableton Link) + VST3/AU. 8 tr···
tts-now
开源
一键将文字转为自然语音,支持批量处理,跨平台免费开源
跨平台基于云平台(阿里云、讯飞等)语音合成 API 的文字转语音助手。支持单文本快速合成和批···
ChatTTS-OpenVoice
开源
上传10秒音频,克隆你的专属ChatTTS音色
Fuse ChatTTS with OpenVoice, upload a 10-second audio clip, and clone your personali···
soprano
开源
输入文本,秒出超逼真语音,让应用开口说话。
Soprano: Instant, Ultra-Realistic Text-to-Speech
ng2-pdfjs-viewer
开源
在 Angular 里快速嵌入 PDF 查看器,支持表单和自定义
#1 Angular PDF viewer
Neural-Voice-Cloning-With-Few-Sa···
开源
用几秒样本,克隆任意人的声音
This repository has implementation for "Neural Voice Cloning With Few Samples"