惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

雷峰网
雷峰网
L
LangChain Blog
GbyAI
GbyAI
F
Fortinet All Blogs
腾讯CDC
Last Week in AI
Last Week in AI
A
About on SuperTechFans
J
Java Code Geeks
Microsoft Azure Blog
Microsoft Azure Blog
博客园 - Franky
B
Blog
D
Docker
G
Google Developers Blog
月光博客
月光博客
博客园 - 三生石上(FineUI控件)
S
SegmentFault 最新的问题
Apple Machine Learning Research
Apple Machine Learning Research
酷 壳 – CoolShell
酷 壳 – CoolShell
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
T
Tailwind CSS Blog
宝玉的分享
宝玉的分享
U
Unit 42
Blog — PlanetScale
Blog — PlanetScale
B
Blog RSS Feed

博客园 - 彭成刚

mp4转圆角gif.bat localforage js数据存储 localStorage 替代,可大数据存储 indexdb数据库 文件系统有 happy-opfs "editor.cursorSurroundingLines": 3, 光标周围行数 设置光标在第几行的时候滚动页面滚动条 Prettier - Code formatter BUG 读不到 根目录的 .prettierrc.js prettier.configPath 格式化失效 vue2 mounted后面括号应该没有空格 _.flow 管道函数 lodash 同步函数列表很哇塞啊 _.flow(caozuo1, caozuo2, caozuo3)(my_data) vue2 iview 组件 ref 起名规则 应该用文件名 <shouye_book_left ref="shouye_book_left" /> iview 日期组件 BUG 赋值变量选年度 然后当前年会有个蓝色底, 解决方案 :key="ccValue" ⭐️⭐️⭐️ 自定义组件 表单验证 v-model 自动更新验证 trigger: 'change' 不触发,解决方案 加 <Input v-model="formData.abc" /> vue2 iview ComfyUiApi comfyui_xy 安装-使用 mergeLeft 左合并json函数 alt+k vscode 执行 ccdev - 在editor 和 terminal 之间切换 splitTwo 分割2个元素,主要分割文件名和id等 pi.dev 试试这个cli - deepseek-flash-v4 C盘清理空间软件 c盘没空间了 Wise Disk Cleaner kceve 鼠标2口控制器 kvm 鼠标同步器 穿屏幕 快捷键 是 s + * 操作列css每个按钮a后面加竖线.css operation_class .prettierrc.js 我发现 这个格式化的配置 默认就不建议放全局,都是跟项目走的 grid-gap 在 chrome58 支持,然后chrome58 不支持 gird的gap,不支持flex的gap iview table columns.js 表头 带* 带星 renderHeader alt+F9 设置 open in terminal 打开当前文件terminal vscode idea 都设置成这个快捷键 配合 ccdev使用 ccdev go开发 cli开发 读取本地模版复制到剪切板 where.exe node 查看命令位置 powershell 注意不是 where node (新建了一个ccwhere.bat) vue2 vModel 组件绑定数据写法 ccValue reloadenv 函数 `code $PROFILE` vscode在不关闭下刷新环境变量 volta 安装记录 node多版本控制 && @native-sdk OmniVoice 记录 我觉得音色还原还不错 voiceclone-env 记录 vscode pwsh 全选快捷键 ctrl+a (powershell) ai专属使用 aitree 命令 ai配合重要命令 powershell vscode code $PROFILE 备份,配合conda使用vscode
GPT-SoVITS 环境搭建及应用
彭成刚 · 2026-07-15 · via 博客园 - 彭成刚

https://github.com/RVC-Boss/GPT-SoVITS

python 3.11

创建目录 E:\aizzz-env-dev\vits-env
创建环境 vits-env

conda create -n vits-env python=3.11
conda activate vits-env
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python get-pip.py
python -m pip --version

安装 PyTorch 2.5.1 (CUDA 12.1 版本)

pip install torch==2.5.1 torchvision==0.20.1 torchaudio==2.5.1 --index-url https://download.pytorch.org/whl/cu121

cudnn暂时说不用装 说安装torch时候就带上了 conda install -c conda-forge cudnn -y
查看cudnn版本

python -c "import torch; print('cuDNN Enabled:', torch.backends.cudnn.enabled); print('cuDNN Version:', torch.backends.cudnn.version())"

官方windows安装

conda create -n GPTSoVits python=3.10
conda activate GPTSoVits
pwsh -F install.ps1 --Device <CU126|CU128|CPU> --Source <HF|HF-Mirror|ModelScope> [--DownloadUVR5]

根据官方说明,我cuda是12.6 所以用CU1126,所以安装命令如下

pwsh -F install.ps1 --Device CU126 --Source HF-Mirror --DownloadUVR5

上面破命令导致笔记本死机3次,W~~

安装GPT-SoVITS

当前目录 (vits-env) PS E:\aizzz-env-dev\vits-env>
github 下载,命令框 有点问题,从cla-h开powershell
刚才死机了3次,改了系统自动内存管理,改成固定初始32G,最大72G内存 再试试。
注意进去后,切环境
期间还注册了一个hf,最后也没用到,就是密码要求还挺严格,普通密码都不合格

conda activate vits-env
cd E:\\aizzz-env-dev\\vits-env
git clone https://github.com/RVC-Boss/GPT-SoVITS.git
(vits-env) PS E:\aizzz-env-dev\vits-env> cd .\GPT-SoVITS\

这个命令执行就死机,换下面的方案

pwsh -F install.ps1 --Device CU126 --Source HF-Mirror --DownloadUVR5
由于上面命令死机3次,换个方法安装 
根据手动安装文档:https://github.com/RVC-Boss/GPT-SoVITS/tree/main/docs/cn

pip安装git项目的依赖+ffmpeg

pip install -r extra-req.txt --no-deps
pip install -r requirements.txt (这个不用了,改下面的,因为里面对gpu的版本太高了)
pip install -r requirements.txt onnxruntime-gpu==1.18.0 gradio==3.50.2
pip uninstall -y fastapi starlette uvicorn
pip install "fastapi<0.110.0" "starlette<0.36.0" "uvicorn"
conda install ffmpeg

一个坑:如果一个库装过高版本的,直接指定老版本,不会覆盖,需要卸载再重装

pip uninstall gradio onnxruntime-gpu -y
pip install -r requirements.txt onnxruntime-gpu==1.18.0 gradio==3.50.2

下载一共3个文件,具体位置再整理
1.

第一个,整个仓库(GPT-SoVITS 主模型 放在 GPT_SoVITS/pretrained_models)
(vits-env) PS E:\aizzz-env-dev\vits-env\GPT-SoVITS\pretrained_models>git clone https://huggingface.co/lj1995/GPT-SoVITS
第2个文件(G2PW 模型 (中文必需) 解压后重命名为 G2PWModel,放入 GPT_SoVITS/text)
https://hf-mirror.com/XXXXRT/GPT-SoVITS-Pretrained/resolve/main/G2PWModel.zip
第3个文件 (UVR5 模型 (人声分离) tools/uvr5/uvr5_weights)
https://huggingface.co/lj1995/VoiceConversionWebUI/tree/main/uvr5_weights
这个比较特殊,因为是这个库的一个子目录,这个库80多个G,用git命令下hf的下不下来,所以改用hf命令下载
# 安装客户端
pip install -U huggingface_hub (这个不行,不写版本 版本太新,后面会报错)
pip install huggingface-hub==0.26.0
# 设置镜像源(国内用户推荐)
$env:HF_ENDPOINT = "https://hf-mirror.com"
# 下载整个 uvr5_weights 文件夹到本地
hf download lj1995/VoiceConversionWebUI --include "uvr5_weights/*" --local-dir ./
后面是放到相应目录,回头再看

后来又安装了几个老版本

pip install "fastapi<0.110.0" "starlette<0.36.0" "uvicorn"
pip show fastapi starlette gradio

GPT_SoVITS 这个模型目录名字很迷惑人,因为项目的叫 GPT-SoVITS,
一个是下划线,一个是中横线。我开始没反应过来。GPT_SoVITS 里面又是很复杂的结构。

check脚本

Set-Content check.py @'
import os, sys, torch, onnxruntime as ort
print('='*50)
print('1. Software Version Check')
print(f'Python: {sys.version.split()[0]}')
print(f'Torch: {torch.__version__}')
print(f'Torch CUDA Support: {torch.cuda.is_available()}')
print(f'Torch CUDA Ver: {torch.version.cuda}')
print(f'ONNX Runtime: {ort.__version__}')
print(f'ONNX Device: {ort.get_device()}')
print(f'ONNX Providers: {ort.get_available_providers()}')
print('='*50)
print('2. Key DLL Physical Path Check')
t_lib = os.path.join(os.path.dirname(torch.__file__), 'lib')
print(f'Torch lib Path: {t_lib}')
if os.path.exists(t_lib):
    print(f'  -> cuDNN DLLs: {[f for f in os.listdir(t_lib) if "cudnn" in f.lower() and f.endswith(".dll")]}')
    print(f'  -> CUDA RT DLLs: {[f for f in os.listdir(t_lib) if "cudart" in f.lower() and f.endswith(".dll")]}')
else:
    print('  -> Torch lib not found!')
o_capi = os.path.join(os.path.dirname(ort.__file__), 'capi')
print(f'ONNX capi Path: {o_capi}')
print(f'System CUDA_PATH: {os.environ.get("CUDA_PATH", "Not Set")}')
print('='*50)
'@; python check.py; remove-item check.py

输出

==================================================

1. Software Version Check

Python: 3.11.15

Torch: 2.5.1+cu121

Torch CUDA Support: True

Torch CUDA Ver: 12.1

ONNX Runtime: 1.18.0

ONNX Device: GPU

ONNX Providers: ['TensorrtExecutionProvider', 'CUDAExecutionProvider', 'CPUExecutionProvider']

==================================================

2. Key DLL Physical Path Check

Torch lib Path: E:\CondaConfig\envs\vits-env\Lib\site-packages\torch\lib

  -> cuDNN DLLs: ['cudnn64_9.dll', 'cudnn_adv64_9.dll', 'cudnn_cnn64_9.dll', 'cudnn_engines_precompiled64_9.dll', 'cudnn_engines_runtime_compiled64_9.dll', 'cudnn_graph64_9.dll', 'cudnn_heuristic64_9.dll', 'cudnn_ops64_9.dll']

  -> CUDA RT DLLs: ['cudart64_12.dll']

ONNX capi Path: E:\CondaConfig\envs\vits-env\Lib\site-packages\onnxruntime\capi

System CUDA_PATH: C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.4

==================================================

解释

诊断结果非常清晰!问题原因已经被我们精准锁定了:

软件版本配合:你的虚拟环境里安装的是 PyTorch 2.5.1 (CUDA 12.1),它自带的是 cuDNN 9.x (cudnn64_9.dll) 文件夹,以及 cudart64_12.dll。

ONNX Runtime-GPU 依赖冲突:你安装的是 onnxruntime-gpu==1.18.0。

根据 ONNX 官方的兼容性规范,onnxruntime-gpu==1.18.0 默认寻找并依赖的是 cuDNN 8.x (cudnn64_8.dll)。

可是,你环境里 PyTorch 2.5.1 自带的是最新的 cuDNN 9.x (cudnn64_9.dll)。

同时,由于你系统的 CUDA_PATH 指向了 CUDA\v12.4,这就导致 ONNX 乱了套,既找不到 cuDNN 8,也没能把 PyTorch 12.1 的运行时路径加载进来。

解决方案 onnxruntime-gpu==1.19.2 支持的 cuDNN 9.x

# 1. 干净地卸载当前的 onnxruntime(防止 CPU 和 GPU 版本冲突)
pip uninstall onnxruntime onnxruntime-gpu -y

# 2. 安装与你的 CUDA 12.1 / cuDNN 9 完美适配的 ONNX Runtime 版本
pip install onnxruntime-gpu==1.19.2