赞
踩
主要面向 Windows 用户的在本地运行 ChatTTS 项目的指南,Linux 应该是很丝滑,基本开箱即用的。
项目地址:GitHub - 2noise/ChatTTS: ChatTTS is a generative speech model for daily dialogue.
如果只是想快速体验模型的效果,建议直接通过 Colab 快速、无痛运行:
https://colab.research.google.com/drive/1_Ma1BXvIrYw9kO4UYsSG4GaFkttbS1wY?usp=sharing#scrollTo=qSH2hOiodh8I
**没事儿别配环境! **
没事儿别配环境!
没事儿别配环境!
官方给出的环境:
- omegaconf~=2.3.0
- torch~=2.1.0
- tqdm
- einops
- vector_quantize_pytorch
- transformers~=4.41.1
- vocos
- IPython
先把项目 Clone 到本地**——只 Clone 就好,先不着急配置 Python 解释器等等。**
如果是 Windows 环境,必须得装 Conda,用 Conda 环境作为项目运行的虚拟环境,因为项目中用到了两个库:WeTextProcessing
和nemo_text_processing
,这俩因为依赖的原因在 Windows 上不支持,源码编译也装不上——或者说很难装,我没成。
官方的说明:
NOTE: This should work on any Linux OS with x86_64. Pip installation on MacOS and Windows are not supported due to the dependency Pynini. On a platform other than Linux x86_64, installing from Pip tries to compile Pynini from scratch, and requires OpenFst headers and libraries to be in the expected place. So if it’s working for you, it’s because you happen to have installed OpenFst in the right way in the right place. So if you want to Pip install Pynini on MacOS, you have to have pre-compiled and pre-installed OpenFst. The Pynini README for that version should tell you which version it needs and what --enable-foo flags to use. Instead, we recommend you to use conda-forge to install Pynini on MacOS or Windows:
conda install -c conda-forge pynini=2.1.5
.
可以在 Windows 电脑上安装一个 Miniconda。
安装完成之后即可进入后续操作。
首先打开命令行工具(如Anaconda Prompt或普通的命令提示符),通过下面的命令来创建一个名为chattts_env
的环境,这里以 3.8 的 Python 为例:
conda create -n chattts_env python=3.8.10
执行完成之后,这个环境就可以在 Miniconda 的安装目录下看到了,参考路径:D:\ProgramFiles\MiniConda\envs\chattts_env
然后激活这个环境:
conda activate chattts_env
激活成功之后,命令行前面会带着 (env)
的标识。
这里指的是除了 Pytorch 之外的其他库,因为这涉及到 GPU,但是如果不用 GPU,就可以直接一并安装了。
首先把下面两个特殊的库安装上:
conda install -c conda-forge pynini=2.1.5
&& pip install WeTextProcessing
&& pip install nemo_text_processing
之后切换到项目路径下,如果要配置 GPU 环境,就先把 torch 那一行注释掉,先安装其他的:
pip install -r requirements.txt
⚠️⚠️⚠️注意:require 中没写,但是需要额外安装一个**gradio**
库!
针对具有 GPU 硬件的用户,为了能让 Pytorch 使用 GPU 计算资源,需要安装 NVIDIA 驱动,已经安装的可以忽略这一步。这个项目用的 Pytorch 版本是 2.1.x,需要的 CUDA 版本可以是 11.8 或 12.1,根据自己需要下载安装即可。
官网:https://developer.nvidia.com/cuda-toolkit-archive
安装完成后可通过下面的命令检查是否成功:
C:\Users\xxx>nvidia-smi Sat Jun 1 23:42:44 2024 +-----------------------------------------------------------------------------+ | NVIDIA-SMI 522.06 Driver Version: 522.06 CUDA Version: 11.8 | |-------------------------------+----------------------+----------------------+ | GPU Name TCC/WDDM | Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | | | | MIG M. | |===============================+======================+======================| | 0 NVIDIA GeForce ... WDDM | 00000000:01:00.0 On | N/A | | N/A 53C P8 9W / N/A | 3516MiB / 6144MiB | 0% Default | | | | N/A | +-------------------------------+----------------------+----------------------+ +-----------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=============================================================================| | 0 N/A N/A 12776 C+G ...amFiles\Tencent\QQ\QQ.exe N/A | | 0 N/A N/A 22784 C+G C:\Windows\explorer.exe N/A | +-----------------------------------------------------------------------------+
同上,仅针对需要使用 GPU 的情况。需要下载三个东西:torch、torchvision、torchaudio。
gpu版本的以cu开头,cu118 表示 cuda 版本为11.8, torch-2.1.2 表示torch版本为 2.1.2,cp38表示python版本为3.8,win表示适用于windows系统,amd64表示64位系统。
在选择torch版本时,只要保证 cu 和本机已安装的 cuda 对应,python版本与win/linux系均与环境匹配即可,然后在满足条件的torch-2.1.0、torch-2.1.1、torch-2.1.2 等里面随便选一个即可。
这个文件很大,需要等一会儿,等它下载成功
之后是下载torchvision 和 torchaudio,版本对应关系参考:
https://pytorch.org/audio/main/installation.html#compatibility-matrix
torchvision 选 0.16,最后一位版本号尽量和 torch 最后一位版本号对应;torchaudio 选 2.x。
然后回到 Conda 命令行工具,注意激活前面创建的chattts_env
环境。
再然后进入到上述下载的三个文件的目录中,依次通过 pip 命令安装三个下载的 .whl
文件。
示例:
(chattts_env) E:\PyGarden\ChatTTS>pip install "torchvision-0.16.2+cu118-cp38-cp38-win_amd64.whl"
至此,环境基本就准备好了,运行项目中的webui.py
,能够正常运行并打开本地浏览器的界面即可。之后运行中如果存在什么报错,又相应地去解决。
运行的时候,出现下面的报错:
1. Download this file: https://cdn-media.huggingface.co/frpc-gradio-0.2/frpc_windows_amd64.exe
2. Rename the downloaded file to: frpc_windows_amd64_v0.2
3. Move the file to this location: D:\ProgramFiles\MiniConda\envs\env\lib\site-packages\gradio
按照提示操作即可,改文件名时注意后缀一起更改
core.py
中 Normalizer
出现报错这是一个代码里的 BUG,如果遇到了可以把变量 Normalizer 声明成 Global,例如:
def init_normalizer(self, lang):
global Normalizer
if lang not in self.normalizer:
if lang == 'zh':
pass
else:
pass
运行项目后,模型会自动从 hugging face 下载。但是如果因为一些原因下载失败、或者下载速度慢,可以直接到官网把全部的模型下载下来。
下载后存放的路径在 C 盘,参考路径:C:\Users\xxx\.cache\huggingface\hub\models--2Noise--ChatTTS
最后跑起来后,控制台 be like:
Windows 配环境有那么亿点点麻烦!项目本身还是挺容易跑的,而且效果很可以。后续随缘更新项目原理学习和进一步玩法。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。