Windows下用Conda搞定CosyVoice语音克隆:从环境配置到音色复刻全流程
最近在折腾语音克隆项目,发现阿里通义实验室开源的CosyVoice确实有点东西。这个模型支持多语言、多音色,还能玩情感控制,最吸引人的是它那个“零样本音色克隆”能力——随便给个三五秒的音频,就能模仿出那个人的声音特征,连语气和情感细节都能抓得挺准。不过官方文档对Linux和Docker支持得挺好,一到Windows就各种水土不服,尤其是环境配置这块,坑多得能绊倒一头大象。
我自己在Windows 11上折腾了好几天,把能踩的坑都踩了一遍,总算搞定了从环境搭建到实际使用的完整流程。这篇文章就是给那些想在Windows上快速体验CosyVoice的朋友准备的,我会把整个过程中最关键的步骤、最容易出问题的地方,以及怎么绕开那些烦人的依赖冲突,都给你讲清楚。你不用再像我一样到处搜解决方案,跟着这个流程走,应该能省下不少时间。
1. 环境准备:为什么Windows上必须用Conda?
在Linux或者Mac上,你可能用virtualenv或者pipenv就能搞定Python环境,但在Windows上部署CosyVoice,Conda是唯一靠谱的选择。这主要是因为两个核心依赖在Windows上的特殊要求。
1.1 安装Miniconda并创建虚拟环境
如果你还没装Conda,先去Miniconda官网下载Windows安装包。我建议用Miniconda而不是Anaconda,前者更轻量,没那么多用不上的包。
安装完成后,打开“Anaconda Prompt”(别用普通的CMD或者PowerShell,有些环境变量设置会出问题),然后创建专门的环境:
conda create -n cosyvoice python=3.10 -y
这里为什么选Python 3.10而不是3.11或者3.12?后面会详细说,但简单讲就是DeepSpeed这个库在Windows上的兼容性问题。
创建完成后激活环境:
conda activate cosyvoice
你会看到命令行提示符从(base)变成了(cosyvoice),这说明环境切换成功了。记住,之后所有操作都要在这个激活的环境里进行。
1.2 关键依赖:pynini和DeepSpeed的特殊处理
CosyVoice依赖一个叫pynini的文本处理库,这玩意儿在Windows上没法直接用pip安装,因为它的底层依赖OpenFST在Windows上没有预编译的wheel。Conda-forge频道里有编译好的版本,所以必须用Conda来装:
conda install -y -c conda-forge pynini==2.1.5
另一个大坑是DeepSpeed。这个库官方对Windows的支持很有限,目前能找到的预编译wheel只支持Python 3.9、3.10和3.11。这就是为什么我前面让你用Python 3.10——如果你用3.12,根本找不到能用的DeepSpeed版本。
注意:有些教程会让你从源码编译DeepSpeed,那在Windows上基本是自讨苦吃,光CUDA工具链的配置就能折腾一整天。
DeepSpeed的wheel文件可以从GitHub releases页面下载,比如deepspeed-0.16.5-py3-none-any.whl。下载后放到项目目录里,用pip本地安装:
pip install deepspeed-0.16.5-py3-none-any.whl
2. 项目克隆与依赖安装的避坑指南
2.1 正确克隆项目仓库
CosyVoice的仓库用了Git子模块(submodule),所以克隆的时候要加上--recursive参数:
git clone --recursive https://github.com/FunAudioLLM/CosyVoice.git
cd CosyVoice
如果忘了加这个参数,或者网络问题导致子模块没拉全,可以手动补一下:
git submodule update --init --recursive
这里有个小细节:项目里的third_party/Matcha-TTS子模块是必须的,如果这个目录是空的,后面运行时会报ModuleNotFoundError: No module named 'matcha'的错误。
2.2 拆分requirements.txt,分步安装
官方给的requirements.txt在Windows上直接装大概率会失败,因为里面有些包版本冲突,还有些在Windows上根本装不了。我的经验是把它拆成两份,用不同的方式安装。
先看看原始的requirements.txt长什么样,然后我们手动调整。关键是要把那些必须用Conda安装的包和可以用pip安装的包分开。
Conda安装的部分(保存为conda_requirements_win.txt):
pynini==2.1.5
python==3.10.16
cudatoolkit=11.8.0
Pip安装的部分(保存为pip_requirements_win.txt):
torch==2.3.1
torchaudio==2.3.1
torchvision==0.21.0
modelscope==1.15.0
gradio==5.4.0
soundfile==0.12.1
librosa==0.10.2
然后分别安装:
conda install --file conda_requirements_win.txt
pip install -r pip_requirements_win.txt
如果你遇到某个包版本冲突,可以尝试先不指定版本,让pip自己解决依赖:
pip install torch torchaudio torchvision
pip install modelscope gradio
2.3 验证CUDA和PyTorch
装完依赖后,一定要验证一下PyTorch能不能正确识别你的GPU。新建一


389

被折叠的 条评论
为什么被折叠?



