ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

ChatTTS-UI 本地语音合成:5 分钟跑通第一条语音,再搭好 API 服务

ChatTTS-UI 本地语音合成:5 分钟跑通第一条语音,再搭好 API 服务 ChatTTS-UI 本地语音合成5 分钟跑通第一条语音再搭好 API 服务【免费下载链接】ChatTTS-ui一个简单的本地网页界面使用ChatTTS将文字合成为语音同时支持对外提供API接口。A simple native web interface that uses ChatTTS to synthesize text into speech, along with support for external API interfaces.项目地址: https://gitcode.com/GitHub_Trending/ch/ChatTTS-uiChatTTS-UI 是一个跑在本地浏览器里的文字转语音工具底层是 ChatTTS 模型支持中英文和数字混合输入同时带一套 /tts 接口方便把语音能力接进自己的程序。适合想自己搭 TTS 服务、又不想碰云 API 的开发者。5 分钟跑通第一条语音最短路径分五步全程在终端里敲命令git clone https://gitcode.com/GitHub_Trending/ch/ChatTTS-ui cd ChatTTS-ui python3 -m venv venv source venv/bin/activate # Windows 用 venv\Scripts\activate pip install -r requirements.txt pip install torch2.7.1 torchaudio2.7.1 python3 app.py最后一条命令跑起来后会自动打开浏览器默认地址http://127.0.0.1:9966。首次启动会先下载模型约 2GB程序检测 huggingface.co 是否可达可达就从那里拉不可达就自动切到 modelscope。几个直接决定成败的点Python 版本锁在 3.9-3.11推荐 3.103.12 会直接报错见下文速查表走 modelscope 下载时必须关代理开着会报 proxy 错误需要约 8GB 内存和 10GB 空闲磁盘想上 GPU 加速N 卡显存大于 4GB 且装好 CUDA 12.8 即可显存不足 4GB 会强制走 CPU。进入页面后输入一段文字点合成等几秒就能试听。声音落盘在static/wavs/目录页面里可直接下载。按场景选部署路线场景推荐方式环境要求个人体验不碰代码Windows 预打包版解压后双击 app.exeWin10/11N 卡显存 4GB 且 CUDA 12.8 才启用 GPU定制开发Linux/macOS 服务器源码部署venv pip 装依赖后运行 app.pyPython 3.9-3.11约 8GB 内存云服务器 / 微服务Dockerdocker compose -f docker-compose.gpu.yaml up -dCPU 机换 cpu 版DockerGPU 机需 NVIDIA 驱动compose 文件里已经配好WEB_ADDRESS: 0.0.0.0:9966和端口映射容器起来后直接访问IP:9966。N 卡显存大于 4GB 但源码部署后仍走 CPU多半是 torch 装成了 CPU 版卸载重装 CUDA 版即可。踩坑速查现象原因处方启动报Dynamo is not supported on Python 3.12torch.compile 不支持 3.12换 Python 3.10 重建虚拟环境下载模型报ProxyError: ...modelscope.cn...modelscope 与代理冲突关闭代理重试报Missing spk_stat.pt模型文件不完整补下该文件放入models/pzc163/chatTTS/asset/Windows 报Windows not yet supported for torch.compiletorch.compile 不支持 Windows在 .env 里设compilefalse、devicecpu合成时报Normalizer pynini ... nemo_text_processing新版中文文本处理依赖装不上在 ChatTTS/core.py 约 143 行起注释相关 7 行或调用时传do_text_normalizationFalse把它变成能调用的语音服务服务起来后POST http://127.0.0.1:9966/tts就是完整的 REST 接口。一次最小调用import requests r requests.post(http://127.0.0.1:9966/tts, data{text: 你好欢迎使用 ChatTTS, voice: 2222, temperature: 0.3, top_p: 0.7, top_k: 20, speed: 5, wav: 1}) print(r.headers[Content-Type]) # 加了 wav1 直接返回音频响应是 JSONcode0表示成功audio_files里每个元素带filename服务器上的绝对路径和url可直接下载的 wav 地址失败则返回code1加错误信息。参数一览参数含义建议值或范围text要合成的文字必填支持换行分段—voice音色2222/7869/6653/4099/5099等预置值任意数字则按该种子随机生成默认2222custom_voice自定义音色种子大于 0 时优先于 voice默认 0不启用prompt风格控制笑声、停顿等如[laugh_0][break_6]temperature采样随机性越小越稳、越自然越大默认 0.3top_p核采样阈值默认 0.7top_k采样候选词数量默认 20speed语速档位1-9默认 5skip_refine是否跳过文本优化阶段0/1默认 0text_seed文本生成种子固定结果可复现默认 42is_stream流式返回0/1默认 0wav为 1 时接口直接吐 wav 文件而非 JSON默认 0音色管理三件事固定音色把 csv 或 pt 文件丢进 speaker/ 目录即可想每次同一种声音就传固定custom_voice种子注意同一设备同一种子也可能有细微差异音调尤其明显0.96 版本后下载的seed_开头 pt 文件要先跑一次python cover-pt.py转换生成_emb-covert.pt结尾的新文件然后删掉原始 pt。批量场景直接循环调用接口即可返回的推理时长和音频时长也在audio_files里方便做统计。上线前检查清单models/pzc163/chatTTS/模型文件完整asset/spk_stat.pt存在GPU 机显存 4GB 且 CUDA 12.8否则在 .env 显式写devicecpu局域网访问需修改 .env 里的WEB_ADDRESS如0.0.0.0:9966并重启POST /tts实测返回code0浏览器打开返回的 url 能播放确认static/wavs/磁盘空间够必要时定期调用/clear_wavs清理跑通后建议先拿默认音色 2222 反复调 temperature 和 speed 找喜欢的组合锁定参数后把满意的音色存成 csv 放进 speaker 目录长期复用。再深一点可以看 app.py 里 /tts 接口的实现以及 faq.md 的完整报错列表。【免费下载链接】ChatTTS-ui一个简单的本地网页界面使用ChatTTS将文字合成为语音同时支持对外提供API接口。A simple native web interface that uses ChatTTS to synthesize text into speech, along with support for external API interfaces.项目地址: https://gitcode.com/GitHub_Trending/ch/ChatTTS-ui创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表