Stable Diffusion XL(简称SDXL)是目前开源AI绘画领域最强大的模型之一。相比在线服务,本地部署能给你带来完全的自由度和隐私保障。本文将从零开始,手把手带你完成SDXL的本地部署,即使你是完全的新手,也能跟着步骤一步步搭建起属于自己的AI绘画工作站。

一、为什么选择本地部署

很多人可能会问:已经有Midjourney、DALL-E这些在线工具了,为什么还要折腾本地部署?原因有以下几点:

二、硬件要求

本地部署SDXL对硬件有一定要求,下面分别列出最低配置和推荐配置:

最低配置

推荐配置

重要提示:AMD显卡虽然也能运行,但需要使用DirectML后端,性能和兼容性远不如NVIDIA的CUDA方案。强烈建议使用NVIDIA显卡。

三、安装步骤详解

目前主流的Stable Diffusion前端有两个:AUTOMATIC1111的WebUI和ComfyUI。我们分别介绍安装方法。

方案A:Stable Diffusion WebUI(AUTOMATIC1111)

WebUI是最流行的方案,界面直观,适合新手上手。以下是Windows环境下的安装步骤:

步骤1:安装Python 3.10

从Python官网下载3.10.x版本,安装时务必勾选"Add Python to PATH"。安装完成后验证:

python --version

步骤2:安装Git

从Git官网下载安装包,使用默认配置即可。

步骤3:克隆WebUI仓库

打开命令行,进入你想存放项目的目录,执行:

git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git

步骤4:首次启动

进入项目目录,运行启动脚本:

cd stable-diffusion-webui

webui-user.bat

首次启动会自动下载所需的依赖包和PyTorch,过程大约需要10-30分钟(取决于网速)。完成后浏览器会自动打开WebUI界面。

步骤5:优化启动参数

编辑 webui-user.bat 文件,在 COMMANDLINE_ARGS 一行添加优化参数:

set COMMANDLINE_ARGS=--xformers --no-half-vae --theme dark

如果你的显存只有8GB,还可以添加:

set COMMANDLINE_ARGS=--xformers --no-half-vae --medvram

方案B:ComfyUI(节点式工作流)

ComfyUI采用节点连线的方式构建工作流,更灵活但学习曲线较陡。适合有一定基础、需要精确控制生成流程的用户。

安装步骤:

  1. 从GitHub克隆ComfyUI仓库:git clone https://github.com/comfyanonymous/ComfyUI.git
  2. 安装依赖:pip install -r requirements.txt
  3. 将模型文件放入 models/checkpoints/ 目录
  4. 启动:python main.py

ComfyUI的优势在于工作流可以保存和分享,社区有大量现成的工作流模板可供下载。对于需要复杂后处理流程的用户,ComfyUI是更好的选择。

四、模型下载与配置

安装好前端后,需要下载AI模型文件才能开始生成图片。

模型下载源

SDXL核心文件

LoRA模型

LoRA是轻量级的微调模型,文件通常只有几十MB到几百MB,可以在不替换主模型的情况下改变画风或添加特定概念。下载后放入 models/Lora/ 目录,在提示词中使用 <lora:文件名:权重> 格式调用。

推荐的社区模型

五、必装插件推荐

WebUI的强大之处在于其丰富的插件生态。以下是我认为必须安装的几个插件:

1. ControlNet

最重要的插件,没有之一。ControlNet允许你通过骨骼图、深度图、线稿等方式精确控制生成图片的构图和姿态。安装方法:在WebUI的"Extensions"标签页搜索 sd-webui-controlnet 并安装。

2. ADetailer(After Detailer)

自动检测并修复图片中的人脸和手部细节。无需手动inpaint,大幅提升人物图片质量。对于经常生成人物的用户,这是必装插件。

3. Ultimate SD Upscale

分块放大图片的插件,可以将图片放大2-4倍而不爆显存。配合ESRGAN等超分模型使用,能输出高分辨率的精细大图。

4. Regional Prompter

允许对画面不同区域使用不同的提示词,解决多人物或复杂场景中提示词混乱的问题。例如左侧画一个红衣人物,右侧画一个蓝衣人物。

5. Tiled Diffusion

配合Tiled VAE使用,可以在有限显存下生成超大分辨率图片(如4K、8K),通过分块处理突破显存限制。

六、常见问题解决

CUDA相关错误

问题:启动时报 CUDA out of memoryCUDA not available

解决

显存不足(Out of Memory)

问题:生成图片时报OOM错误

解决

生成速度慢

问题:每张图需要很长时间

解决

生成黑色图片

问题:图片全黑或有大面积黑色区域

解决

七、进阶技巧

图生图(img2img)

利用已有图片作为参考,配合提示词进行二次创作。调整"重绘幅度"(Denoising Strength)可以控制与原图的相似程度:0.3-0.5保留原图主体,0.6-0.8大幅改变细节,0.9以上几乎重新生成。

局部重绘(Inpainting)

对图片的特定区域进行重新生成,适合修复瑕疵或替换局部元素。使用技巧:蒙版边缘要留出过渡区域,重绘区域不宜过小,建议搭配"仅蒙版区域"模式获得更好的细节。

ControlNet姿态控制

使用OpenPose骨骼图精确控制人物姿态是ControlNet最常用的功能。你可以:

  1. 使用参考照片提取骨骼
  2. 手动编辑骨骼图调整姿态
  3. 组合多个ControlNet(如骨骼+深度图)获得更精确的控制

批量生成与XYZ图表

WebUI内置的XYZ Plot脚本可以自动化测试不同参数组合。例如横轴设置不同的采样器,纵轴设置不同的CFG值,一次生成对比图表,快速找到最佳参数。批量生成时建议使用固定seed并递增,方便对比效果。

提示词技巧

相关推荐