Windows 系统 ComfyUI 虚拟环境中安装 CuPy 的完整指南

前言

在 Windows 系统上使用 ComfyUI 进行 AI 图像生成时,很多插件(如 comfyui-frame-interpolation)都依赖于 CuPy 库来实现 GPU 加速。然而,在 Windows 环境下安装 CuPy 往往会遇到各种问题,直接通过 pip 安装通常会失败。经过多次实践,下载预编译的.whl 文件并本地安装是目前唯一可靠的方法

本文将详细记录在 Windows 系统的 ComfyUI 虚拟环境中安装 CuPy 的完整过程,帮助您解决安装难题。

Windows 系统 cuTENSOR 安装指南

【笔记】ComfUI RIFEInterpolation 节点缺失问题(cupy CUDA 安装)解决方案


为什么 Windows 上 Python 虚拟环境中安装 CuPy 如此困难?

在 Windows 系统上安装 CuPy 主要面临以下挑战:

1. 编译环境复杂

  • 需要完整的本地 CUDA 开发环境
  • 需要 Visual Studio C++ 编译器
  • 需要正确配置的环境变量
  • 编译过程耗时且容易出错

2. pip 安装限制

  • pip 无法找到匹配CUDA的预编译包
  • 版本兼容性问题严重
  • 依赖项解析困难
  • 网络问题导致下载失败

3. 版本匹配要求严格

  • CuPy 版本必须与 CUDA 版本匹配
  • Python 版本必须与 CuPy 版本兼容
  • Windows 版本也会影响兼容性
  • 虚拟环境增加了复杂度

成功的解决方案:预编译.whl 文件安装

经过多次尝试,下载预编译的.whl 文件并本地安装是目前在 Windows 系统上安装 CuPy 的唯一可靠方法

准备工作

1. 确认系统环境
# 检查Python版本
python --version

# 检查CUDA版本
nvcc --version

# 检查ComfyUI虚拟环境
# 通常在ComfyUI目录下的.venv文件夹中

2. 确定需要的 CuPy 版本

根据您的环境选择合适的 CuPy 版本:

Python 版本

CUDA 版本

推荐 CuPy 版本

3.8-3.12

12.x

13.5.0

3.8-3.11

11.x

12.2.0

3.7-3.10

10.x

10.6.0


安装步骤

步骤 1:下载预编译的.whl 文件

访问 CuPy 官方 GitHub 发布页面:

https://github.com/cupy/cupy/releases

或者直接访问最新版本的发布页面:

https://github.com/cupy/cupy/releases/tag/v13.5.0

下载链接(以 CuPy 13.5.0 为例)

对于 CUDA 12.x 版本

对于 CUDA 11.x 版本

选择说明

  • cuda12x 表示支持 CUDA 12.x 版本
  • cp312 表示支持 Python 3.12 版本
  • win_amd64 表示 Windows 64 位系统

步骤 2:激活 ComfyUI 虚拟环境

# 进入ComfyUI目录
cd H:\PythonProjects1\Win_ComfyUI

# 激活虚拟环境
.\.venv\Scripts\activate

步骤 3:安装下载的.whl 文件

# 安装CuPy .whl文件
pip install "E:\Downloads\cupy_cuda12x-13.5.0-cp312-cp312-win_amd64.whl"

# 安装插件依赖(以comfyui-frame-interpolation为例)
cd custom_nodes\ComfyUI-Frame-Interpolation
pip install -r requirements-with-cupy.txt

步骤 4:验证安装

# 验证CuPy安装
python -c "import cupy as cp; print('CuPy版本:', cp.__version__); print('CUDA可用:', cp.cuda.is_available())"

# 验证RIFEInterpolation节点是否可用
# 启动ComfyUI并检查节点是否存在


常见问题及解决方案

问题 1:pip 安装失败,提示找不到文件

解决方案

  • 检查文件路径是否正确
  • 确保使用引号包裹包含空格的路径
  • 确认文件确实存在于指定位置
# 正确示例
pip install "E:\Downloads\cupy_cuda12x-13.5.0-cp312-cp312-win_amd64.whl"

# 错误示例(缺少引号)
pip install E:\Downloads\cupy_cuda12x-13.5.0-cp312-cp312-win_amd64.whl

问题 2:版本不匹配错误

解决方案

  • 确保下载的.whl 文件与 Python 版本匹配
  • 确保下载的.whl 文件与 CUDA 版本匹配
  • 检查错误信息中的版本要求

问题 3:虚拟环境未正确激活

解决方案

  • 确认已经运行了..venv\Scripts\activate 命令
  • 检查命令提示符是否显示虚拟环境名称
  • 重新打开命令提示符并重新激活

问题 4:依赖项缺失

解决方案

# 更新pip
python -m pip install --upgrade pip

# 安装可能缺失的依赖项
pip install setuptools wheel

# 重新安装
pip install "E:\Downloads\cupy_cuda12x-13.5.0-cp312-cp312-win_amd64.whl"


失败的尝试(供参考)

在找到成功方法之前,我尝试了以下方法但都失败了:

尝试 1:直接安装插件依赖

cd custom_nodes\ComfyUI-Frame-Interpolation
pip install -r requirements-with-cupy.txt

结果:安装失败,无法找到合适的 CuPy 版本

尝试 2:安装不带 CuPy 的依赖

pip install -r requirements-no-cupy.txt

结果:安装成功,但 RIFEInterpolation 节点仍然缺失

尝试 3:从源代码编译 CuPy

git clone https://github.com/cupy/cupy.git
cd cupy
python setup.py install

结果:编译失败,Windows 环境下编译 CUDA 相关库复杂

尝试 4:使用 pip 直接安装 CuPy

pip install cupy
pip install cupy-cuda12x

结果:安装成功,但插件仍无法正确启用某些需要 CUDA 支持的 cupy 节点


总结

在 Windows 系统的 ComfyUI 虚拟环境中安装 CuPy,下载预编译的.whl 文件并本地安装是目前唯一可靠的方法

关键要点:

  1. 版本匹配:确保下载的.whl 文件与您的 Python 版本、CUDA 版本和 Windows 系统匹配
  2. 虚拟环境:务必在 ComfyUI 的虚拟环境中安装
  3. 正确路径:使用引号包裹包含空格的文件路径
  4. 验证安装:安装后务必验证 CuPy 是否正常工作

成功的关键因素:

  • 预编译包:避免了复杂的编译过程
  • 版本精确匹配:确保了兼容性
  • 本地安装:避免了网络问题和 pip 的限制
  • 虚拟环境隔离:确保了环境的纯净性

通过本文的方法,您应该能够成功在 Windows 系统的 ComfyUI 虚拟环境中安装 CuPy,解决 RIFEInterpolation 节点缺失等问题,享受 GPU 加速带来的性能提升。


参考链接

Logo

中国智能体开发者社区,聚焦智能体与大模型开发,提供前沿资讯、实用工具链、开源项目及行业案例。通过技术沙龙、开发者大赛等活动,促进经验交流与协作,助力开发者快速构建创新智能应用。

更多推荐