Files

166 lines
4.6 KiB
Markdown
Raw Permalink Normal View History

2026-06-14 12:08:38 +08:00
# 06 ComfyUI 装出图
## 目标
装 ComfyUI + 拉 SDXL 模型 + 出第一张图。
> **本机实测版本**2026-06-14):
> - ComfyUI master2026-06
> - ComfyUI 依赖 101 个包,5 分 10 秒装完
> - torch 2.12.0 + torchvision 0.27.0 + torchaudio 2.11.0
> - 模型:**SDXL base 1.0**6.94 GB`sd_xl_base_1.0.safetensors`
> - 出图实测:1024×102425 步,~5-10 秒
> - 显存占用:~7.9 GB / 16 GB(剩 8.4 GB 余量)
2026-06-14 12:08:38 +08:00
## 拉 ComfyUI 代码
**WSL2 终端**
```bash
cd /mnt/d/img-code
git clone https://github.com/comfyanonymous/ComfyUI.git
cd ComfyUI
```
## 建独立 venv(和 LLM 那个分开)
```bash
uv venv --python 3.11 .venv
source .venv/bin/activate
```
## 装依赖
```bash
uv pip install -r requirements.txt
uv pip install torch torchvision torchaudio \
--index-url https://download.pytorch.org/whl/cu128 \
--extra-index-url https://pypi.tuna.tsinghua.edu.cn/simple
```
## 让 ComfyUI 用 D 盘模型
**WSL2 终端**(在 ComfyUI 目录下):
```bash
cat > extra_model_paths.yaml << 'EOF'
comfyui_models:
base_path: /mnt/d/ComfyUI-models
checkpoints: checkpoints
vae: vae
loras: loras
controlnet: controlnet
EOF
```
**这样配置后**
- 你把模型放 `/mnt/d/ComfyUI-models/checkpoints/`
- ComfyUI 自动找到(不用改代码)
## 验证 PyTorch(同 05 章)
```bash
python -c "import torch; print(torch.cuda.is_available(), torch.cuda.get_device_name(0))"
```
## 拉 SDXL 模型(单文件,最省事)
### 选 Flux 还是 SDXL
| 模型 | 显存 | 出图速度 | 画质 | 文件数 | 难度 |
|------|------|------|------|------|------|
| **SDXL 1.0** | ~7 GB | 5-10s | ⭐⭐⭐⭐ | 2 个(7G + 335M| ⭐ 直接 Load Checkpoint |
| FLUX.1-dev fp8 | ~12 GB | 30-60s | ⭐⭐⭐⭐⭐ | 4 个(12G + 335M + 230M + 9.5G| ⭐⭐⭐⭐ 拆 4 个 Loader |
**推荐第一次先装 SDXL**——单文件 + 不用拆节点,**5 分钟出第一张图**。
### 浏览器下 SDXL(国内 ModelScope 镜像)
**Windows 浏览器**打开:
https://www.modelscope.cn/models/AI-ModelScope/stable-diffusion-xl-base-1.0/files
**只下这一个**(VAE 在主模型里内置,不用单独下):
- `sd_xl_base_1.0.safetensors`**6.94 GB**
存到 `D:\FluxModels\`
### WSL2 移到对的位置
2026-06-14 12:08:38 +08:00
```bash
mkdir -p /mnt/d/ComfyUI-models/checkpoints
mv /mnt/d/FluxModels/sd_xl_base_1.0.safetensors /mnt/d/ComfyUI-models/checkpoints/
ls -lh /mnt/d/ComfyUI-models/checkpoints/
2026-06-14 12:08:38 +08:00
```
**应当看到**`sd_xl_base_1.0.safetensors 6.94G`
> **不要下错**的:`sd_xl_offset_example-lora_1.0.safetensors`49MB 是 LoRA 增强,第一次跑不用)。
>
> **不要下**FLUX 的 `ae.safetensors`VAEFLUX 不内置但 SDXL 内置了)。
2026-06-14 12:08:38 +08:00
## 启动 ComfyUI
```bash
python main.py --listen 0.0.0.0
```
**看到**
```
To see the GUI go to: http://0.0.0.0:8188
```
**Windows 浏览器打开**http://localhost:8188
## 出第一张图(SDXL 节点图)
### 节点清单
1. **Load Checkpoint**(双击空白处搜)→ 选 `sd_xl_base_1.0.safetensors`
2. **CLIP Text Encode**(加**两次**,一正一负)
3. **Empty Latent Image** → 1024×1024
4. **KSampler** → steps=25, cfg=7, sampler=euler_ancestral, scheduler=normal, denoise=1
5. **VAE Decode**
6. **Save Image**
### 连线(6 根)
| 起点 | → | 终点 |
|------|---|------|
| Load Checkpoint.MODEL | → | KSampler.model |
| Load Checkpoint.CLIP | → | 两个 CLIP Text Encode.clip |
| CLIP Text Encode (正面).CONDITIONING | → | KSampler.positive |
| CLIP Text Encode (负面).CONDITIONING | → | KSampler.negative |
| Empty Latent Image.LATENT | → | KSampler.latent_image |
| KSampler.LATENT | → | VAE Decode.samples |
| Load Checkpoint.VAE | → | VAE Decode.vae |
| VAE Decode.IMAGE | → | Save Image.images |
### 提示词
- **正面**`a cute orange cat sitting on a windowsill, sunny day, high quality, detailed`
- **负面**`blurry, low quality, distorted, ugly`
### 点 Queue Prompt
2026-06-14 12:08:38 +08:00
**首次出图 30-60 秒**(编译 kernel),**之后每张 5-10 秒**。
2026-06-14 12:08:38 +08:00
## 实机出图示例(2026-06-14
2026-06-14 12:08:38 +08:00
**提示词**`a cute orange cat sitting on a windowsill, sunny day, high quality, detailed`
2026-06-14 12:08:38 +08:00
**出图**1024×102425 步):
- 构图:猫居中,对称植物框景
- 光影:阳光从右上斜射,暖光
- 配色:暖橙 + 蓝绿 + 米黄
- 风格:绘本/吉卜力治愈风
- 显存:~7.9 GB / 16 GB
- 出图时间:~5-10 秒
2026-06-14 12:08:38 +08:00
**没畸形、没变形、提示词全还原**——SDXL 一次成功。
2026-06-14 12:08:38 +08:00
## 关掉 ComfyUI
回到 WSL2 终端,按 `Ctrl+C`
## 下一步
✅ 通过后 → 装更多模型 / 装 ComfyUI-Manager(一键装插件)/ 学 workflow