在Windows系统上部署 CosyVoice 2
本文参考 https://github.com/FunAudioLLM/CosyVoice 的安装方法,但是解决了一些安装、运行过程中的错误:
1、使用以下命令克隆 CosyVoice 代码仓库
git clone --recursive https://github.com/FunAudioLLM/CosyVoice.git
# 如果因网络问题未能成功克隆子模块,请重复运行以下命令,直至成功。
cd CosyVoice
git submodule update --init --recursive 
2、安装 Anaconda
访问Anaconda官网下载最新版,并根据指示安装。
3、使用以下命令创建 Conda 环境
conda create -n cosyvoice -y python=3.10
conda activate cosyvoice
pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/ --trusted-host=mirrors.aliyun.com 
4、下载模型
方法一:进入到 CosyVoice 代码目录,使用 git 命令下载模型:
# git模型下载,请确保已安装git lfs
mkdir -p pretrained_models
git clone https://www.modelscope.cn/iic/CosyVoice2-0.5B.git pretrained_models/CosyVoice2-0.5B 
方法二:使用Python代码下载
from modelscope import snapshot_download
snapshot_download('iic/CosyVoice2-0.5B', local_dir='pretrained_models/CosyVoice2-0.5B') 
5、启动webui
执行以下命令:
python webui.py --port 50000 --model_dir pretrained_models/CosyVoice2-0.5B 
如果一切正常,在浏览器中打开 http://127.0.0.1:50000/ 可以看到以下界面:

6、可能遇到的问题
6.1、DLL load failed while importing _kaldifst: 动态链接库(DLL)初始化例程失败。
如出现以下问题:

将 cosyvoice\cli\frontend.py 代码中的以下代码:
try:import ttsfrduse_ttsfrd = True
except ImportError:print("failed to import ttsfrd, use wetext instead")from wetext import Normalizer as ZhNormalizerfrom wetext import Normalizer as EnNormalizeruse_ttsfrd = False 
拷贝到 的最前面,如下图所示:

6.2、FileNotFoundError: [WinError 2] 系统找不到指定的文件
如果出现以下错误:
File "...\pydub\utils.py", line 274, in mediainfo_jsonres = Popen(command, stdin=stdin_parameter, stdout=PIPE, stderr=PIPE)
...
FileNotFoundError: [WinError 2] 系统找不到指定的文件。 
如图:

说明系统缺少 ffmpeg 库,打开 https://www.gyan.dev/ffmpeg/builds/ 下载以下文件:

将下载文件解压到 D:\ffmpeg, 然后将 D:\ffmpeg\bin 添加到系统环境变量的 Path 变量中,重新启动终端,运行以下命令,查看 ffmpeg 是否安装成功:
ffmpeg -version 
然后在参考前面 【5、启动webui】 重新启动。
