7本镜像集成基于flash_attn加速的语音克隆TTS模型,并通过ComfyUI工作流实现可视化操作,支持用户使用少量音频样本快速克隆自定义音色。适用于虚拟主播配音、有声书播讲、个性化语音助手及创意音频内容制作,提供高效、灵活且易于操控的本地化语音克隆与合成体验。





Qwen3-TTS 是一个强大的文本转语音(TTS)系统,支持多种音色生成方式。本 WebUI 提供了友好的图形界面,让您轻松生成高质量的语音。
主要特性
cd /root/Qwen3-TTS
bash start_app.sh
启动选项
--debug: 调试模式,显示详细日志--no-clean: 跳过 GPU 显存清理自动功能
启动日志示例
[INFO] 端口 7860 被占用,自动清理中...
[INFO] 进程 PID=xxx 已终止
[INFO] 端口 7860 已释放
[INFO] 检查 GPU 显存占用
[INFO] GPU 显存未被占用
[INFO] 启动 Qwen3-TTS WebUI (端口 7860)
访问地址
http://localhost:7860
# 方法 1: 使用 Ctrl+C(如果在前台运行)
# 方法 2: 查找并终止进程
ps aux | grep "python -m webui.app" | grep -v grep | awk '{print $2}' | xargs kill
# 方法 3: 清理端口
lsof -ti:7860 | xargs kill
适用场景
使用步骤
输入待合成文本
选择语种
Auto: 自动检测(推荐)zh: 中文en: 英文描述音色
生成语音
保存文件
outputs/voice_design_时间戳.wav技巧与建议
适用场景
使用步骤
上传参考音频
输入参考音频文本
选择克隆模式
输入待合成文本
生成语音
outputs/voice_clone_时间戳.wav音色管理系统
现在支持完整的音色管理功能,包括命名保存、列表管理、试听和快速加载。
保存音色
上传参考音频
输入参考音频文本
命名音色
我的音色、女声主持人、温柔男声.pt 后缀/ \ : * ? " < > | 和空格保存
voices/ 目录音色名称.pt:音色数据音色名称_ref.wav:参考音频音色列表
自动加载
查看音色
试听音色
加载音色
使用音色生成语音
Auto)outputs/voice_clone_时间戳.wav音色文件管理
查看音色文件
# 列出所有音色
ls -lh voices/
# 查看音色数量
ls -1 voices/*.pt | wc -l
音色文件结构
voices/
├── 我的音色.pt # 音色数据(约 5KB)
├── 我的音色_ref.wav # 参考音频(约 200KB)
├── 女声主持人.pt
├── 女声主持人_ref.wav
└── ...
删除音色
# 删除单个音色(需要删除两个文件)
rm voices/我的音色.pt
rm voices/我的音色_ref.wav
# 或使用通配符
rm voices/我的音色*
优势
适用场景
使用步骤
输入待合成文本
选择语种
Auto 即可选择说话人
添加控制指令(可选)
生成语音
outputs/tts_时间戳.wav保存位置
/root/Qwen3-TTS/outputs/
文件命名规则
voice_design_20260123_143052.wav # 音色设计
voice_clone_20260123_143053.wav # 音色克隆
tts_20260123_143054.wav # 文本合成
查看文件
# 列出所有生成的音频
ls -lh outputs/
# 查看最新生成的 5 个文件
ls -lt outputs/*.wav | head -5
# 统计文件数量
ls outputs/*.wav | wc -l
清理文件
# 删除所有音频文件
rm outputs/*.wav
# 删除 7 天前的文件
find outputs/ -name "*.wav" -mtime +7 -delete
# 只保留最新的 100 个文件
ls -t outputs/*.wav | tail -n +101 | xargs rm
保存位置
/root/Qwen3-TTS/voices/
文件结构
voices/
├── 我的音色.pt # 音色数据(约 5KB)
├── 我的音色_ref.wav # 参考音频(约 200KB)
├── 女声主持人.pt
├── 女声主持人_ref.wav
└── ...
查看音色
# 列出所有音色
ls -lh voices/
# 查看音色数量
ls -1 voices/*.pt | wc -l
# 查看音色详情
for pt in voices/*.pt; do
echo "音色: $(basename $pt)"
echo " 大小: $(du -h $pt | cut -f1)"
wav="${pt%.pt}_ref.wav"
if [ -f "$wav" ]; then
echo " 参考音频: $(du -h $wav | cut -f1)"
fi
echo
done
删除音色
# 删除单个音色(删除两个文件)
rm voices/我的音色.pt
rm voices/我的音色_ref.wav
# 或使用通配符
rm voices/我的音色*
# 删除所有音色
rm voices/*.pt voices/*.wav
备份音色
# 备份到其他目录
cp -r voices/ /backup/voices_backup_$(date +%Y%m%d)/
# 压缩备份
tar -czf voices_backup_$(date +%Y%m%d).tar.gz voices/
使用监控脚本查看 WebUI 运行状态:
bash monitor_webui.sh
显示内容
退出监控
按 Ctrl+C
# 查看启动日志
tail -f /tmp/webui_final2.log
# 查看最近 50 行日志
tail -50 /tmp/webui_final2.log
# 搜索错误日志
grep -i error /tmp/webui_final2.log
已启用的优化
查看 GPU 使用情况
nvidia-smi
# 实时监控
watch -n 1 nvidia-smi
文本准备
音色描述
参考音频
虽然 WebUI 不直接支持批量,但可以:
检查项
nvidia-smihtop解决方案
可能原因
改进方法
检查步骤
# 1. 检查进程是否运行
ps aux | grep webui
# 2. 检查端口是否监听
lsof -i:7860
# 3. 检查防火墙
# 如果是远程访问,确保端口开放
解决方案
bash start_app.sh --forcetail /tmp/webui_final2.log位置
/root/Qwen3-TTS/outputs/
查看
ls -lh outputs/
下载
文本合成 Tab
音色设计/克隆
主要支持
其他语言
Auto 自动检测OSError: Cannot find empty port in range: 7860-7860
解决 启动脚本已自动处理端口清理,无需手动操作。如果仍有问题:
# 手动清理端口
lsof -ti:7860 | xargs kill
# 然后重新启动
bash start_app.sh
FileNotFoundError: Model not found
解决
ls models/CUDA is not available
解决
nvidia-smiPermission denied: outputs/
解决
# 检查目录权限
ls -ld outputs/
# 修复权限
chmod 755 outputs/
# 完整状态检查
bash monitor_webui.sh
# GPU 状态
nvidia-smi
# 磁盘空间
df -h
# 内存使用
free -h
/tmp/webui_final2.log# 停止 WebUI
lsof -ti:7860 | xargs kill
# 清理缓存
rm -rf __pycache__
rm -rf webui/__pycache__
# 重启
bash start_app.sh --force
outputs/ 目录输入
输出
最低配置
推荐配置
# 启动(自动清理端口和 GPU)
bash start_app.sh
# 调试模式
bash start_app.sh --debug
# 跳过 GPU 清理
bash start_app.sh --no-clean
# 监控
bash monitor_webui.sh
# 查看日志
tail -f /tmp/restart.log
# 清理音频
rm outputs/*.wav
# 清理音色
rm voices/*.pt voices/*.wav
# 检查 GPU
nvidia-smi
# 查看音色列表
ls -lh voices/
# 查看生成的音频
ls -lh outputs/
文档版本: v2.0 ⭐ 新增音色管理系统 最后更新: 2026-01-23 维护者: Claude
voices/ 目录如有问题或建议,请查看 todo.md 或联系技术支持。
认证作者

支持自启动