用 ChatTTS-ui 在本地跑通离线语音合成:从部署到出声的完整路径
用 ChatTTS-ui 在本地跑通离线语音合成从部署到出声的完整路径【免费下载链接】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需要在没有网络的环境里生成中文、英文和数字混排的语音或者只是不想让文本离开自己的机器用 ChatTTS-ui 就能在本地完成离线语音合成一条命令启动服务浏览器里输入文字几秒后就能拿到 WAV 文件。本文带你把部署、使用、接入三步走通。项目速览它是什么把 ChatTTS 语音合成模型包成一个本地 Web 服务默认监听 9966 端口启动后自动打开浏览器。能做什么网页输入文本生成语音支持中英数字混杂同时提供 REST API方便其他程序调用。与直接调用 ChatTTS 的区别它替你处理了文本规整、韵律控制符、固定音色管理、中英分词这些细节。部署形态Docker 容器、源码、Windows 预打包三种都有容器方式最省心。快速上手 Docker、源码、预打包三种部署方式里Docker CPU 版最省心四步完成。第一步确认环境。执行下面的命令两条都能输出版本号就可以继续docker --version docker compose version第二步拿到项目。克隆仓库到本地首次启动会自动下载模型到models/目录这一步期间需要联网git clone https://gitcode.com/GitHub_Trending/ch/ChatTTS-ui chat-tts-ui cd chat-tts-ui第三步启动容器。docker compose -f docker-compose.cpu.yaml up -dNVIDIA 显卡且显存 4G 以上的话改用docker-compose.gpu.yaml会自动启用 GPU 加速。第四步验证是否成功。docker compose logs -f --no-log-prefix日志里出现Start:[0.0.0.0, 9966]表示服务已就绪浏览器访问http://127.0.0.1:9966看到文本输入页即部署完成。Windows 用户也可以直接从 Releases 下载预打包版解压后双击 app.exe 使用无需准备环境。核心能力实操 服务跑起来后最常用的三个能力是文本输入、固定音色和韵律控制符。在网页输入文本拿到语音。你做什么访问首页在输入框填入文字换行分段选择一个音色点击合成。发生什么服务先执行 refine text 阶段把数字、符号规整成可朗读的文本中英文会按语言分开处理再送入模型合成。你得到什么一段可试听、可下载的 24kHz WAV 文件保存在static/wavs/目录页面上还能看到本次推理耗时。把固定音色放进 speaker 目录。你做什么把音色文件csv 或 pt 格式放进speaker/目录。发生什么voice参数与文件名匹配时服务直接加载该音色不再随机生成0.96 内核升级前下载的 pt 文件要先跑一次转换脚本。你得到什么多次生成保持同一个声音适合固定角色的场景。# 例如把 speaker/2222.csv 放进 speaker 目录 # 旧版 pt 文件需要先转换格式 python cover-pt.py注意同一个音色值在不同设备上合成的声音会有差异甚至音调都会变换机器前最好重新试听确认。用控制符控制笑声和停顿。你做什么在 prompt 栏填写控制符例如[laugh_0]。发生什么refine text 阶段按控制符插入对应的韵律特征。你得到什么带笑声、停顿或特定口语风格的语音。prompt: [oral_2][laugh_0][break_6] # 组合使用口语风格 笑声 停顿进阶配置 ⚙️服务级设置集中在项目根目录的.env文件推理参数则在每次 API 调用时指定。配置项作用推荐值修改位置WEB_ADDRESSWeb 服务监听地址与端口本机用127.0.0.1:9966局域网访问用0.0.0.0:9966.envdevice计算设备default自动选 cuda/mps/cpu也可写cpu.envcompile是否启用 torch.compile 加速false显存充足再开.envvoice音色种子或音色文件名2222API 请求参数改完.env需要重启服务才生效。如果你启动时报 triton 相关的错保持compilefalse即可不影响功能。接入与调用 接口只有一个POST /tts成功时返回带音频地址的 JSON也能直接返回音频文件本体。import requests res requests.post(http://127.0.0.1:9966/tts, data{ text: 这是离线语音合成接入测试, voice: 2222, temperature: 0.3, skip_refine: 0, }) print(res.json()) # 成功{code:0, msg:ok, audio_files:[{filename, url, inference_time, audio_duration}]} # 失败{code:1, msg:错误原因}几个常调的参数voice命中speaker/目录下的文件就用该音色否则当作种子值随机生成音色temperature默认 0.3调低更稳定调高更自由同一文本重复生成会有细微差别custom_voice大于 0 的整数指定音色种子设置后忽略voicewav1直接返回 WAV 文件而不是 JSON适合脚本里直接保存。踩坑与排查 ️高频问题基本集中在三类模型下载、设备选择、Python 版本。现象下载模型时报ProxyError涉及 modelscope。可能原因modelscope 仅支持中国大陆 IP 直连不走代理。处理方式关闭系统代理后重新启动服务。现象启动报错缺少models/pzc163/chatTTS/下的文件如path.yaml、spk_stat.pt。可能原因模型下载中断文件不完整。处理方式删除models/目录重新下载或手动把缺的文件补进对应目录。现象报Dynamo is not supported on Python 3.12。可能原因Python 是 3.12 或更高版本。处理方式用 3.10 重建环境Docker 镜像内已用正确版本遇到此错说明走的是源码部署。现象机器有 NVIDIA 显卡但一直用 CPU 跑速度很慢。可能原因torch 装成了 CPU 版或显存低于 4G 被强制回退 CPU。处理方式重装 cu128 版 torch需 CUDA 12.8并确认显存 ≥ 4G。现象报cannot find a working triton installation。可能原因当前环境不支持 torch.compile。处理方式把.env里的compile改为false重启服务。收尾ChatTTS-ui 适合两类场景断网环境需要稳定的语音合成以及自己的工具里要一个可控的语音接口。想继续深入可以看 faq.md 里的完整报错清单核心合成逻辑都在 ChatTTS/ 目录下。【免费下载链接】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),仅供参考

相关新闻

快速备份QQ空间历史说说:GetQzonehistory 新手完整指南

快速备份QQ空间历史说说:GetQzonehistory 新手完整指南

快速备份QQ空间历史说说:GetQzonehistory 新手完整指南 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory GetQzonehistory 是一个把你自己QQ空间里的历史说说抓取下来&#xf…

2026/9/21 22:58:31 阅读更多 →
ChatTTS-ui AMD显卡加速:ROCm全链路配置与实测数据

ChatTTS-ui AMD显卡加速:ROCm全链路配置与实测数据

ChatTTS-ui AMD显卡加速:ROCm全链路配置与实测数据 【免费下载链接】ChatTTS-ui 一个简单的本地网页界面,使用ChatTTS将文字合成为语音,同时支持对外提供API接口。A simple native web interface that uses ChatTTS to synthesize text into …

2026/9/21 22:58:09 阅读更多 →
三步装好、三种场景调好:华硕笔记本 GHelper 完整指南

三步装好、三种场景调好:华硕笔记本 GHelper 完整指南

三步装好、三种场景调好:华硕笔记本 GHelper 完整指南 【免费下载链接】g-helper Lightweight Armoury Crate alternative for Asus laptops with nearly the same functionality. Works with ROG Zephyrus, Flow, TUF, Strix, Scar, ProArt, Vivobook, Zenbook, Ex…

2026/9/20 20:39:04 阅读更多 →

最新新闻

t188原理详解:手写实现核心逻辑,拒绝API黑盒

t188原理详解:手写实现核心逻辑,拒绝API黑盒

t188原理详解:手写实现核心逻辑,拒绝API黑盒 版本升级后 API 全变了?别慌,这才是学习的好时机。 很多应届生刚接触底层源码,总觉得那是大佬的专利,离自己很远。其实,当你发现官方接口突然改变行为,或者性能瓶颈卡死时, 手写实现…

2026/9/22 2:29:24 阅读更多 →
Chrome 23 报错全解:一文搞懂老版本适配实战

Chrome 23 报错全解:一文搞懂老版本适配实战

Chrome 23 报错全解:一文搞懂老版本适配实战 看了一堆教程还是不会写项目?别慌,这通常不是代码逻辑错了,而是环境兼容性没兜住。Chrome 23…

2026/9/22 2:29:24 阅读更多 →
注册表删除软件源码解析:3步搞定残留清理,避开90%新手坑

注册表删除软件源码解析:3步搞定残留清理,避开90%新手坑

注册表删除软件源码解析:3步搞定残留清理,避开90%新手坑 看了一堆教程还是不会写项目?别慌,这太正常了。 很多兄弟卡在“原理懂了但代码跑不通”或者“代码能跑但不知道为啥”的尴尬期。…

2026/9/22 2:29:23 阅读更多 →
index函数与imtoken官网对比选型

index函数与imtoken官网对比选型

搞懂 index 函数,面试高频题不再慌 面试被问原理答不上来,那种尴尬感谁懂?上周陪朋友面大厂后端,面试官轻飘飘一句:“说说 index 函数底层怎么实现的,时间复杂度是多少?”朋友卡壳三秒,开始背八股文,结果越说越乱。这就是典型的…

2026/9/22 2:29:23 阅读更多 →
3天搞懂冥想培训底层逻辑,一文讲透代码实现

3天搞懂冥想培训底层逻辑,一文讲透代码实现

3天搞懂冥想培训底层逻辑,一文讲透代码实现 官方文档太厚像砖头,翻两页就睡?别慌。 咱们今天不背概念,直接上手写代码。 用 Python 模拟一套完整的冥想培训管理系统,让你 一文搞懂 其中的业务闭环。…

2026/9/22 2:28:23 阅读更多 →
5分钟搞懂怎么选股底层逻辑新手避坑指南

5分钟搞懂怎么选股底层逻辑新手避坑指南

5分钟搞懂怎么选股底层逻辑新手避坑指南 刚打开K线软件,满屏的红绿柱子晃得眼睛疼,想找个代码写个策略,结果IDE里StackTrace报错一堆,根本看不懂。很多刚接触量化或者想自学Python做交易辅助的新手,最容易栽在这一步:以为选股就是…

2026/9/22 2:28:22 阅读更多 →

日新闻

3台商务办公笔记本实测:手写实现环境配置,告别卡半天

3台商务办公笔记本实测:手写实现环境配置,告别卡半天

3台商务办公笔记本实测:手写实现环境配置,告别卡半天 配置环境就卡半天?别怪机器慢,多半是你没选对工具链。在Java、Go或Python的项目现场, 手写实现…

2026/9/22 0:00:41 阅读更多 →
剑帝加点速查手册:3分钟搞懂核心逻辑

剑帝加点速查手册:3分钟搞懂核心逻辑

剑帝加点速查手册:3分钟搞懂核心逻辑 面试被问原理答不上来,是不是常态?别慌。很多开发者对着 GitHub 开源仓库里的代码发呆,看似简单实则暗藏玄机。今天这份【剑帝加点】速查手册,直接带你拆解核心实现,把面试必考的原理讲透。…

2026/9/22 0:00:41 阅读更多 →
手写实现图片压缩网站核心:搞定WebP转换与质量调优

手写实现图片压缩网站核心:搞定WebP转换与质量调优

手写实现图片压缩网站核心:搞定WebP转换与质量调优 复制来的代码跑不通不知道怎么调?别慌,这种“复制粘贴地狱”在开发圈太常见了。尤其是做 图片压缩网站…

2026/9/22 0:00:41 阅读更多 →

周新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/21 3:13:20 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/21 2:19:36 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/21 4:51:05 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/21 15:36:51 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/21 15:36:51 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/19 23:35:34 阅读更多 →