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

推荐订阅源

H
Hackread – Cybersecurity News, Data Breaches, AI and More
W
WeLiveSecurity
C
Check Point Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V
Vulnerabilities – Threatpost
GbyAI
GbyAI
A
Arctic Wolf
NISL@THU
NISL@THU
N
Netflix TechBlog - Medium
The Register - Security
The Register - Security
M
MIT News - Artificial intelligence
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Microsoft Security Blog
Microsoft Security Blog
Cyberwarzone
Cyberwarzone
C
CERT Recently Published Vulnerability Notes
T
Tenable Blog
G
GRAHAM CLULEY
O
OpenAI News
S
Schneier on Security
Google Online Security Blog
Google Online Security Blog
Vercel News
Vercel News
宝玉的分享
宝玉的分享
Attack and Defense Labs
Attack and Defense Labs
T
The Blog of Author Tim Ferriss
量子位
aimingoo的专栏
aimingoo的专栏
The Cloudflare Blog
P
Privacy & Cybersecurity Law Blog
S
SegmentFault 最新的问题
MongoDB | Blog
MongoDB | Blog
Apple Machine Learning Research
Apple Machine Learning Research
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
L
LINUX DO - 热门话题
博客园_首页
F
Full Disclosure
Recent Commits to openclaw:main
Recent Commits to openclaw:main
D
Docker
U
Unit 42
A
About on SuperTechFans
博客园 - 司徒正美
Hacker News - Newest:
Hacker News - Newest: "LLM"
人人都是产品经理
人人都是产品经理
Application and Cybersecurity Blog
Application and Cybersecurity Blog
G
Google Developers Blog
Security Archives - TechRepublic
Security Archives - TechRepublic
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
J
Java Code Geeks
云风的 BLOG
云风的 BLOG
Scott Helme
Scott Helme
TaoSecurity Blog
TaoSecurity Blog

博客园 - 彭成刚

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 $setHideObjProp 设置js json对象属性 隐藏变量 不可枚举,post的时候不带这个变量 回车小问题 vscode markdown 开始几次回车不好使 markdown.extension.onEnterKey miniconda 使用记录 columns 内部watch columns, 又修改了columns内部 死循环bug 导致内存溢出 tables.vue 重点解决代码 let res = { ...item } json 格式化 (notepad++/插件/插件管理/JsonTools | JsonViewer)有快捷键,注意key要有双引号 + 176个插件介绍 Service workers 缓存导致 3000端口占用 解决方案 Unregister - FossFLOW iview table 单行显示文字 默认key 文字超出宽度 显示... 加tip cut-text2.vue configQueryListFunc.js 命令行合并图片成为pdf `magick *.jpg o.pdf` vue2 自动格式化 函数名和括号直接没有空格了 eslint爆红,解决方案,函数名+空格+() vscode 设置 flex gap 对老版本浏览器兼容 - "flex-gap-polyfill": "^1.0.4", 老版 对 vue2 iview 打包失败的解决方案 [软件推荐] 手机同步电脑 PandaControl 开发安卓app 截屏用的 Multi-Layer Perceptron.xlsx 讲明白ai底层本质 pdfjs-3.11.174-legacy-dist.zip 最后一个cdn版本,每次要升级pdfjs 都是这个坑,中间件不支持mjs,但是国产化那个老浏览器媲美ie6 做了一个卷子去底的程序 python-clear-paper [ai问答] js对象 某个属性找到父节点 __parent__ 一键注入函数 buildTreeRelations [精品] npm 内网离线安装包 从缓存本地安装, .tgz安装失败时候,用这个cache方案 三次贝塞尔曲线 一直想要一个 曲线箭头,先AI出个代码先存着。 http-server-o.bat 最方便启动当前目录的index.html [记录] 多文件上传BUG解决记录-选择文件后-修改本地文件名-点击上传失败 的解决过程 vscode 查看全局包函数源码 没安装插件 - 快速跳转第三方库的函数源码 - 在资源管理器视图中显示 自定义快捷键 Alt+Shift+Z vscode vue2项目 自定义 abc类型 自动提示 3种提示方式 分别是 abc this.abc window.abc vscode 提交 github 的 git提交 记得设置 proxy - 基础知识 阻止连点小函数 if(islock()) return vue 双向绑定 对象初始化 不替换指针 用 Object.assign(app.value.modalAddWan, $app.modalAddWan) lunacy 单机离线免费 ui设计工具 平替 figma sketch [工具推荐] 双击最大化 软件右边留出一些空白 MaxMax 软件推荐 [推荐] GLM-4.7 智谱 Agentic Coding AI开发 环境安装 vibe coding 鼠标有小圈圈在转,原因是安全中心在扫描你的程序,关闭扫描方案 右下角广告 查看pid 映射是哪个程序弹框 Process Explorer 我发现我就是太善良了,总愿意相信有免费的api(AI) 软件推荐:Beyond.Compare.v3.3.13.18981 文本对比软件 临时忽略 config.js git命令 node_modules 软连接 win11 mklink /D 两个项目共享一个库 需求:两个分支,两套代码同时修改 iview table 排序 columns 里面写 sortable: 'custom' 不要写 sortable: true 不然会进行二次内部排序序号等 字段。 vue2 重置 data方法 $data $options.data.call(this) vue中 先写 函数调用 再写 函数定义的 小技巧 function caller () {} copy-used-css 代码段 snippet,将指定节点的计算样式获取下拉 获取tailwind网页样式成原生样式 Syntax Error: TypeError: eslint.CLIEngine is not a constructor 解决方案 Comment Anchors [vscode插件推荐] 注释跳转 ANCHOR[id=锚点] LINK path/file.vue#锚点 写了一个undefind 的bug ['',null,undefined].includes(unName) 应该是 typeof unName === 'undefined' pad开发bug vue2 hooks useInnerHeight.vue 解决Table高度实时更新 vscode 左侧栏 显示隐藏 ctrl+b 查看:切换主侧栏可见性 View: Toggle Primary Side Bar Visibility
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