课程 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

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

相关推荐
苏灿烤鱼12 分钟前
把 Agent 做成一家公司,真比通用提示词好用吗?
python·agent·shell
北斗落凡尘10 小时前
LangGraph 入门实战(2)
python·langchain
ttod_qzstudio10 小时前
Java 常用语法极简通关(五):类与对象——字段、方法、构造器、this 与 static
java·开发语言·python
jufeng130711 小时前
【系列:手搓自主 AI Agent:Hermes 架构原理剖析 · 第 1 篇】
人工智能·python·架构·agent
月光船幽幽12 小时前
影子模式下保护 logits 不被修改
人工智能·python·算法
_oP_i14 小时前
python 后缀 mjs文件
开发语言·python
北斗落凡尘15 小时前
如何使用LangGraph(1)
python·langchain
Livia要学习16 小时前
Python装饰器
开发语言·python
大模型丫丫17 小时前
LangChain4j:Java 生态的 AI 应用开发利器
java·人工智能·python
circuitsosk17 小时前
向量数据库选型与性能压测:Milvus、Pinecone、Chroma在真实业务下的对比
数据库·python·pinecone·milvus·向量数据库·chroma