首次启动需联网下载模型,源码部署要能访问 huggingface 或 modelscope,且从 modelscope 下载时不能开代理;GPU 加速需另装 CUDA12.8+ ToolKit,否则会退回 CPU;默认监听 127.0.0.1:9966,局域网访问需改 .env 里的 WEB_ADDRESS。
ChatTTS-ui
jianchang512更新放缓给 ChatTTS 套了个本地网页界面,输入文字就能合成语音,还能对外提供 API 接口,省去自己写前端和接口的功夫。
一个简单的本地网页界面,使用ChatTTS将文字合成为语音,同时支持对外提供API接口。A simple native web interface that uses ChatTTS to synthesize text into speech, along with support for external API interfaces.
pip3 install -r requirements.txt
pip3 install torch==2.7.1 torchaudio==2.7.1
python3 app.py英伟达显卡显存大于 4G 且安装 CUDA12.8+ 时启用 GPU 加速,显存低于 4G 强制使用 CPU;Mac 可用 mps,也可手动指定 cpu。
给 ChatTTS 套上本地网页界面和 HTTP 接口,让文字合成语音开箱可用
给 ChatTTS 套了个本地网页界面,输入文字就能合成语音,还能对外提供 API 接口,省去自己写前端和接口的功夫。
核心能力
- 网页界面输入文字直接合成语音并试听
- 提供 POST /tts 接口供外部程序调用
- 支持中英文与数字符号混杂文本合成
- 用 voice 或 custom_voice 指定固定音色
- 支持 csv/pt 格式音色文件放入 speaker 目录
容易踩的坑
- v260614win-20260614最新正式版2026-06-14 · 2026-06-14 14:35 UTC
更新记录
- 升级 ChatTTS 内核
- 升级 torch到 2.7.1 以兼容 50xx显卡
Windows预打包下载
MacOX/Linux 请源码部署
- v1.0windows-1.022024-08-05 · 2024-08-05 14:48 UTC
查看更新说明
Changelog
0.96版起,源码部署必须先安装ffmpeg ,之前的音色文件csv和pt已不可用,请填写音色值重新生成
- #232 #229
- 升级ChatTTS core 更新模型
- 更新后需重新下载模型
v1.0完整包下载(1.7G含模型)
百度网盘下载: https://pan.baidu.com/s/1ch8dUXhOtK0VOnvq5FnJWw?pwd=vagn
123网盘下载:https://www.123pan.com/s/03Sxjv-s9VB3.html
GitHub: https://github.com/jianchang512/ChatTTS-ui/releases/download/v1.0/win-ChatTTS-ui-v1.0.7z
v1.02升级补丁包下载(190M)
补丁包仅用于覆盖旧版本升级,不可独立使用,如果未下载过完整包,请先下载完整包并解压,然后再下载补丁包覆盖。
升级补丁包GitHub下载地址: https://github.com/jianchang512/ChatTTS-ui/releases/download/v1.0/win-PatchUpdate-v1.02.7z
全部模型下载
默认将在第一次运行时自动下载模型,如果网络问题下载失败,请手动下载
GitHub 下载地址: https://github.com/jianchang512/ChatTTS-ui/releases/download/v1.0/all-models.7z
百度网盘下载: https://pan.baidu.com/s/1yGDZM9YNN7kW9e7SFo8lLw?pwd=ct5x
下载后解压后,会看到asset文件夹,该文件夹内有多个pt文件,将所有pt文件复制到本目录下,然后重启软件
- v0.95windows-v0.982024-06-03 · 2024-06-03 00:30 UTC
查看更新说明
Changelog
0.96版起,源码部署必须先安装ffmpeg ,之前的音色文件csv和pt已不可用,请填写音色值重新生成
0.96版本后,因ChatTTS内核升级,已无法直接使用从该站点下载的pt文件。
https://modelscope.cn/studios/ttwwwaa/ChatTTS_Speaker
因此增加转换工具 cover-pt.exe,Win整合包可以直接从本页下载 cover-pt.zip,解压后将
cover-pt.exe和app.exe放在同一目录下双击执行。执行后将把
speaker目录下的,以seed_开头,以_emb.pt结尾的文件,即下载后的默认文件名pt,转换为可用的编码格式,转换后的pt将改名为以_emb-covert.pt结尾。( 源码部署的请执行python cover-pt.py)例:假如
speaker/seed_2155_restored_emb.pt存在这个文件,将被转换为speaker/seed_2155_restored_emb-cover.pt, 然后删掉原pt文件,仅保留该转换后的文件即可Update. 升级ChatTTS core / 0.98升级包 Fix: #176 Features. .env中增加 merge_size参数,即批量一次合成几行文字 Change. 默认跳过 refine text Fix. 修复音色不稳定 Change. 不再支持csv音色文件,pt音色文件放在 speaker目录下使用
v0.95完整包下载(2.7G含模型)
百度网盘下载: https://pan.baidu.com/s/1vQs7K_WX7o9-JGFlro1W1w?pwd=9wdk
123网盘下载:https://www.123pan.com/s/03Sxjv-oYyB3.html
huggingface link: https://huggingface.co/spaces/mortimerme/s4/resolve/main/ChatTTS-ui-0.95.7z?download=true
v0.98升级补丁包下载(160M)
补丁包仅用于覆盖旧版本升级,不可独立使用,如果未下载过完整包,请先下载完整包并解压,然后再下载补丁包覆盖。
0.96版起,源码部署必须先安装ffmpeg,之前的音色文件csv和pt已不可用,请填写音色值重新生成
补丁包内含
app.exe、.env和templates.speaker、_internal文件夹,解压后将这些文件文件夹复制到旧版目录下覆盖同名。升级补丁包GitHub下载地址: https://github.com/jianchang512/ChatTTS-ui/releases/download/v0.95/win-PatchUpdate-v0.98.7z
123网盘下载地址: https://www.123pan.com/s/03Sxjv-c8yB3.html
- v0.6Windows-v0.62024-06-01 · 2024-06-01 16:44 UTC
查看更新说明
Changelog
- env中增加
compile=true,为true启用推理优化,为false禁用,某些情况下禁用将提高GPU速度,并减少报错 - 增加中英分词,选中分词后,将把混合的中英文区分单独合成,并将数字转为对应语言的读法
- 优化界面、改进api #32 #34
- 增加 top_p top_k 等参数控制
- 多行文字按行合成
- 自定义音色获取种子值
- 允许跳过 refine text阶段
v0.6完整包下载(2.7G含模型)
百度网盘下载: https://pan.baidu.com/s/1cpMUwojltDV-iiUNL9N4mA?pwd=56mv
123网盘下载:https://www.123pan.com/s/03Sxjv-F9yB3.html
huggingface link: https://huggingface.co/spaces/mortimerme/s4/resolve/main/ChatTTS-UI-0.6.7z?download=true
v0.81升级补丁包下载(50M)
补丁包仅用于覆盖旧版本升级,不可独立使用,如果未下载过完整包,请先下载完整包并解压,然后再下载补丁包覆盖。
补丁包内含
app.exe、.env和templates._internal文件夹,解压后将这些文件文件夹复制到旧版目录下覆盖同名。升级补丁包下载地址: https://github.com/jianchang512/ChatTTS-ui/releases/download/v0.6/win-PatchUpdate-v0.81.zip
- env中增加
- v0.4所有模型下载2024-05-30 · 2024-05-30 08:30 UTC
查看更新说明
第一次将从huggingface.co或github下载模型到
asset目录下,如果网络不稳,可能下载失败,若是失败,请单独下载下载后解压后,会看到
asset文件夹,该文件夹内有多个pt文件,将所有pt文件复制到asset目录下,然后重启软件GitHub下载地址: https://github.com/jianchang512/ChatTTS-ui/releases/download/v1.0/all-models.7z
百度网盘下载地址: https://pan.baidu.com/s/1yGDZM9YNN7kW9e7SFo8lLw?pwd=ct5x
用户点评
登录用户的真实使用记录,可按版本和硬件筛选还没有人点评。第一个说出真实体验的人最有价值。
ChatTTS webUI & API
一个简单的本地网页界面,在网页使用 ChatTTS 将文字合成为语音,支持中英文、数字混杂,并提供API接口。
原始ChatTTS项目
界面预览
试听合成语音效果
https://github.com/jianchang512/ChatTTS-ui/assets/3378335/bd6aaef9-a49a-4a81-803a-91e3320bf808
文字数字符号 控制符混杂效果
https://github.com/jianchang512/ChatTTS-ui/assets/3378335/e2a08ea0-32af-4a30-8880-3a91f6cbea55
第一次启动时将在校下载模型,先检测能否连接
https://huggingface.co, 若不可连接,则从阿里魔塔 modelscope.cn 下载源码部署时请确保科学上网,否则下载模型会失败
Windows预打包版
- 从 Releases中下载压缩包,解压后双击 app.exe 即可使用
- 某些安全软件可能报毒,请退出或使用源码部署
- 英伟达显卡大于4G显存,并安装了CUDA12.8+后,将启用GPU加速
Linux 下源码部署
-
配置好 python3.9-3.11环境
-
创建空目录
/data/chattts执行命令cd /data/chattts && git clone https://github.com/jianchang512/chatTTS-ui . -
创建虚拟环境
python3 -m venv venv -
激活虚拟环境
source ./venv/bin/activate -
安装依赖
pip3 install -r requirements.txt -
如果不需要CUDA加速,执行
pip3 install torch==2.7.1 torchaudio==2.7.1如果需要CUDA加速,执行
pip install torch==2.7.1 torchaudio==2.7.1 --index-url https://download.pytorch.org/whl/cu128 pip install nvidia-cublas-cu11 nvidia-cudnn-cu11另需安装 CUDA12.8+ ToolKit,请自行搜索安装方法
-
执行
python3 app.py启动,将自动打开浏览器窗口,默认地址http://127.0.0.1:9966(注意:默认从 modelscope 魔塔下载模型,不可使用代理下载,请关闭代理)
MacOS 下源码部署
-
配置好 python3.9-3.11 环境,安装git ,执行命令
brew install libsndfile git [email protected]继续执行export PATH="/usr/local/opt/[email protected]/bin:$PATH" source ~/.bash_profile source ~/.zshrc -
创建空目录
/data/chattts执行命令cd /data/chattts && git clone https://github.com/jianchang512/chatTTS-ui . -
创建虚拟环境
python3 -m venv venv -
激活虚拟环境
source ./venv/bin/activate -
安装依赖
pip3 install -r requirements.txt -
安装torch
pip3 install torch==2.7.1 torchaudio==2.7.1 -
执行
python3 app.py启动,将自动打开浏览器窗口,默认地址http://127.0.0.1:9966
Windows源码部署
-
下载python3.9-3.11,安装时注意选中
Add Python to environment variables -
下载并安装git,https://github.com/git-for-windows/git/releases/download/v2.45.1.windows.1/Git-2.45.1-64-bit.exe
-
创建空文件夹
D:/chattts并进入,地址栏输入cmd回车,在弹出的cmd窗口中执行命令git clone https://github.com/jianchang512/chatTTS-ui . -
创建虚拟环境,执行命令
python -m venv venv -
激活虚拟环境,执行
.\venv\scripts\activate -
安装依赖,执行
pip install -r requirements.txt -
如果不需要CUDA加速,
执行
pip install torch==2.7.1 torchaudio==2.7.1如果需要CUDA加速,执行
pip install torch==2.7.1 torchaudio==2.7.1 --index-url https://download.pytorch.org/whl/cu128另需安装 CUDA12.8+ ToolKit,请自行搜索安装方法
-
执行
python app.py启动,将自动打开浏览器窗口,默认地址http://127.0.0.1:9966(注意:默认从 modelscope 魔塔下载模型,不可使用代理下载,请关闭代理)
Linux 下容器部署
安装
-
拉取项目仓库
在任意路径下克隆项目,例如:
git clone https://github.com/jianchang512/ChatTTS-ui.git chat-tts-ui -
启动 Runner
进入到项目目录:
cd chat-tts-ui启动容器并查看初始化日志:
gpu版本 docker compose -f docker-compose.gpu.yaml up -d cpu版本 docker compose -f docker-compose.cpu.yaml up -d docker compose logs -f --no-log-prefix -
访问 ChatTTS WebUI
启动:['0.0.0.0', '9966'],也即,访问部署设备的IP:9966即可,例如:- 本机:
http://127.0.0.1:9966 - 服务器:
http://192.168.1.100:9966
- 本机:
更新
-
Get the latest code from the main branch:
git checkout main git pull origin main -
Go to the next step and update to the latest image:
docker compose down gpu版本 docker compose -f docker-compose.gpu.yaml up -d --build cpu版本 docker compose -f docker-compose.cpu.yaml up -d --build docker compose logs -f --no-log-prefix
部署注意
-
如果GPU显存低于4G,将强制使用CPU。
-
Windows或Linux下如果显存大于4G并且是英伟达显卡,但源码部署后仍使用CPU,可尝试先卸载torch再重装,卸载
pip uninstall -y torch torchaudio, 重新安装cuda版torch。pip install torch==2.7.1 torchaudio==2.7.1 --index-url https://download.pytorch.org/whl/cu128。必须已安装CUDA12.8+ -
默认检测 modelscope 是否可连接,如果可以,则从modelscope下载模型,否则从 huggingface.co下载模型
音色获取
从 0.92 版本起,支持csv或pt格式的固定音色,下载后保存到软件目录下的 speaker 文件夹中即可
pt文件可从 https://github.com/6drf21e/ChatTTS_Speaker 项目提供的体验链接页面 (https://modelscope.cn/studios/ttwwwaa/ChatTTS_Speaker) 下载。
也可以从此页面 http://ttslist.aiqbh.com/10000cn/ 查看试听后将对应音色值填写到 “自定义音色值”文本框中
不同设备同一音色值seed,最终合成的声音会有差异的,以及同一设备相同音色值,音色也可能会有变化,尤其音调
环境调整
记事本打开 .env 文件,可看到以下代码
WEB_ADDRESS=127.0.0.1:9966 #可修改web服务地址和端口
compile=false
device=default # 默认优先选择cuda(若显存大于4G)/mps,可手动指定 cpu|mps|cuda
常见问题与报错解决方法
修改http地址
默认地址是 http://127.0.0.1:9966,如果想修改,可打开目录下的 .env文件,将 WEB_ADDRESS=127.0.0.1:9966改为合适的ip和端口,比如修改为WEB_ADDRESS=192.168.0.10:9966以便局域网可访问
使用API请求 v0.5+
请求方法: POST
请求地址: http://127.0.0.1:9966/tts
请求参数:
text: str| 必须, 要合成语音的文字
voice: 可选,默认 2222, 决定音色的数字, 2222 | 7869 | 6653 | 4099 | 5099,可选其一,或者任意传入将随机使用音色
prompt: str| 可选,默认 空, 设定 笑声、停顿,例如 [oral_2][laugh_0][break_6]
temperature: float| 可选, 默认 0.3
top_p: float| 可选, 默认 0.7
top_k: int| 可选, 默认 20
skip_refine: int| 可选, 默认0, 1=跳过 refine text,0=不跳过
custom_voice: int| 可选, 默认0,自定义获取音色值时的种子值,需要大于0的整数,如果设置了则以此为准,将忽略 voice
返回:json数据
成功返回: {code:0,msg:ok,audio_files:[dict1,dict2]}
其中 audio_files 是字典数组,每个元素dict为 {filename:wav文件绝对路径,url:可下载的wav网址}
失败返回:
{code:1,msg:错误原因}
## API调用代码
import requests
res = requests.post('http://127.0.0.1:9966/tts', data={
"text": "若不懂无需填写",
"prompt": "",
"voice": "3333",
"temperature": 0.3,
"top_p": 0.7,
"top_k": 20,
"skip_refine": 0,
"custom_voice": 0
})
print(res.json())
#ok
{code:0, msg:'ok', audio_files:[{filename: E:/python/chattts/static/wavs/20240601-22_12_12-c7456293f7b5e4dfd3ff83bbd884a23e.wav, url: http://127.0.0.1:9966/static/wavs/20240601-22_12_12-c7456293f7b5e4dfd3ff83bbd884a23e.wav}]}
#error
{code:1, msg:"error"}
在pyVideoTrans软件中使用
升级 pyVideoTrans 到 1.82+ https://github.com/jianchang512/pyvideotrans
- 点击菜单-设置-ChatTTS,填写请求地址,默认应该填写 http://127.0.0.1:9966
- 测试无问题后,在主界面中选择
ChatTTS