课程 1:WSL + uv + ComfyUI 环境选择说明

课程 1:WSL + uv + ComfyUI 环境选择说明

1. 本节目标

说明为什么本次不使用 Conda,而使用 uv 管理 ComfyUI 环境;同时说明 WSL、NVIDIA 驱动、CUDA、PyTorch CUDA wheel 之间的关系。

本节重点不是安装 ComfyUI,而是先把环境认知理顺,避免后面把问题错误归因到 Conda、CUDA Toolkit 或 ComfyUI 本身。

2. 背景说明

ComfyUI 官方手动安装流程常见写法会使用 Conda,例如安装 PyTorch 时通过:

bash 复制代码
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia

但这不是唯一方式。对于已经习惯 Python 项目中使用 uv 的开发环境,可以采用:

text 复制代码
uv venv
uv pip install
uv run

来替代 Conda 的虚拟环境与依赖管理。

本次实践证明:

text 复制代码
WSL + uv + PyTorch CUDA wheel + ComfyUI

可以正常工作。

3. 关键认知

3.1 Conda 不是必须项

Conda 的主要作用是:

  • 创建隔离环境
  • 安装 Python 包
  • 安装 PyTorch CUDA 相关依赖

如果使用 uv,也可以完成这些事情:

bash 复制代码
uv venv --python 3.12
source .venv/bin/activate
uv pip install ...

所以选择 uv 没有问题。

3.2 真正关键的是 PyTorch 是否支持 CUDA

ComfyUI 是否能用 GPU,核心取决于:

python 复制代码
torch.cuda.is_available()

而不是取决于你使用 Conda 还是 uv。

验证命令:

bash 复制代码
uv run python -c "import torch; print(torch.__version__); print(torch.cuda.is_available()); print(torch.version.cuda)"

理想结果:

text 复制代码
True

3.3 WSL 中不一定需要单独安装完整 CUDA Toolkit

大多数情况下,只要满足:

  • Windows 侧 NVIDIA 驱动正常
  • WSL 中 nvidia-smi 能看到显卡
  • 安装的是 CUDA 版 PyTorch wheel

ComfyUI 就可以使用 GPU。

检查 WSL 是否识别 GPU:

bash 复制代码
nvidia-smi

4. 环境推荐

本次推荐环境:

text 复制代码
OS:Windows + WSL2
Python:3.12
依赖管理:uv
ComfyUI:源码安装
PyTorch:CUDA 12.1 wheel

推荐项目路径:

bash 复制代码
/home/wangjian/project/ComfyUI

5. 注意事项

注意 1:不要混用太多环境管理器

如果选择 uv,建议后续都用:

bash 复制代码
uv pip install
uv run
source .venv/bin/activate

不要一会儿 Conda、一会儿 pip、一会儿 uv,否则排错困难。

注意 2:激活虚拟环境后再安装插件依赖

推荐每次安装插件依赖前都执行:

bash 复制代码
cd /home/wangjian/project/ComfyUI
source .venv/bin/activate

注意 3:确认当前 Python 来自 .venv

执行:

bash 复制代码
which python

理想结果类似:

text 复制代码
/home/wangjian/project/ComfyUI/.venv/bin/python

6. 本节结论

本次环境可以采用:

text 复制代码
WSL + uv + PyTorch CUDA wheel

替代官方示例中的 Conda。

后续所有安装命令都围绕:

bash 复制代码
/home/wangjian/project/ComfyUI/.venv

这个虚拟环境进行,避免环境混乱。

相关推荐
weixin19970108016几秒前
《二手ERP对接闲鱼API:聚石塔强制入塔后的架构重构实录》(附Python源码)
python
小白快快跑哦8 分钟前
python-字符串全解(六):正则表达式-转义与非转义
python·正则表达式·转义与非转义
IvanCodes6 小时前
Python 数据处理(十三):JSON、CSV 与数据序列化
开发语言·python
Patrick在香港7 小时前
Claude 工具调用返回空:8 次失败里只有 1 次状态码不对,其余全带 200
爬虫·python·api·claude·香港
Web3&Basketball7 小时前
CRM Agent 后训练实战:3 倍更少错误
python·架构·大模型·agent·推理
AIFQuant8 小时前
ETF行情API接入踩坑记:从报错到跑通的七个问题
python·金融·区块链·etf·基金
GPU实战笔记9 小时前
云端 Python 开发:JupyterLab 还是 VS Code Remote-SSH?
python·vs code·jupyterlab·remote-ssh·远程开发
狗狗狗狗狗乐啊10 小时前
搭一个 AI 对话工作台 AChat:从 0 到可用的完整记录(一)
python·react.js·ai编程
AIGC小尼10 小时前
本地AI漫剧部署|低配8G显存实战部署MiniMax-H3|4步极速采样+低显存优化完整方案(可角色替换/视频魔改)
人工智能·stable diffusion·comfyui·ai漫剧
白猫不黑10 小时前
Python实现简易Web弱口令爆破与防护方案
python·web安全·计算机·网络安全·黑客·信息安全·渗透测试