平均 0.3 秒生成一张图!SDXL Turbo 本地部署简易教程

SDXL Turbo 本地部署简易教程

在 11 月 28 日,开源大模型公司 Stability AI 发布了名为 SDXL Turbo 的新开源文生图模型,并已在 Hugging Face 平台上公开发布。该工具允许用户输入提示词后几乎即时生成图像。尽管目前的测试结果显示图像生成质量有时不尽人意,但其生成速度超越了市场上的其他产品,为创造更多想象空间带来了新的可能性。

SDXL Turbo 采用了一种名为对抗扩散蒸馏(Adversarial Diffusion Distillation,ADD)的新技术,使得模型可以一步合成图像输出并实时生成文本到图像输出,同时保持高采样保真度。

论文地址:https://stability.ai/research/adversarial-diffusion-distillation

体验链接:http://clipdrop.co/stable-diffusion-turbo

模型下载:https://huggingface.co/stabilityai/sdxl-turbo

基础准备

本教程在 Windows 11 环境下,使用 Anaconda 部署 Python 基本环境,显卡配置是 NVIDIA GeForce RTX 3080。其他环境条件大同小异,可能需要稍微修改一些细节

操作系统:Windows 11;

管理工具(可以自行搜索安装):

Anaconda,用于管理 Python 环境和依赖包;

Git,用于拉取 github 仓库;

环境搭建

在 Anaconda 命令行中创建名为 comfy_ui 的 Python 3.11 环境,使用以下命令:

# 新建名为 comfy_ui 的 python 环境
conda create -n comfy_ui python=3.11

# 启动新环境,此时命令行的环境由 (base) -> (comfy_ui)
conda activate comfy_ui

安装 Pytorch

# NVIDIA 用户 使用此命令安装
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu121

# AMD 用户(仅限 linux 环境) 使用此命令安装
pip install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/rocm5.7

搭建 ComfyUI 工作流

下载 ComfyUI

 git clone https://github.com/comfyanonymous/ComfyUI.git

安装依赖包

# 进入 ComfyUI 的下载目录
cd your_path_to_ComfyUI/
pip install -r requirements.txt

安装 ComfyUI manager

cd custom_nodes
git clone https://github.com/ltdrdata/ComfyUI-Manager

下载 SDXL Turbo 模型

# 直接在网页端下载
# 地址:https://huggingface.co/stabilityai/sdxl-turbo/tree/main

# 下载根目录下的模型文件
# 选择 sd_xl_turbo_1.0.safetensors 
# 或者 sd_xl_turbo_1.0_fp16.safetensors 任选其一
# 其中 sd_xl_turbo_1.0_fp16 16位浮点精度版本,容量小,推理速度更快

# 再下载 vae 目录下对应的文件
# 比如之前下载了 sd_xl_turbo_1.0_fp16.safetensors 模型
# 就下载对应的 diffusion_pytorch_model.fp16.safetensors VAE模型

######################################

# 如果网页下载较慢,可以安装 hugginface 工具
pip install -U huggingface_hub

# 然后在命令行中下载模型
# sdxl-turbo 模型
huggingface-cli download --resume-download stabilityai/sdxl-turbo --local-dir sdxl-turbo

######################################

# 下载工作流 json 文件
wget https://github.com/hylarucoder/comfyui-workflow/blob/main/sdxl_turbo/lab-sdxl-turbo.json

下载完模型后,将模型文件复制到 ComfyUImodels/checkpoints 目录下;

再将 VAE 模型复制到 ComfyUImodels/vae 目录下;

工作流 json 文件位置随意,可以与模型放在一起。

启动 ComfyUI

# 进入 ComfyUI 根目录
# 使用强制 16 位浮点精度启动
python main.py --force-fp16

此时打开浏览器,进入 http://127.0.0.1:8188 即可看到 ComfyUI 的页面;

点击 Load 加载工作流,选择之前下载的 json 文件;

加载之前下载的 SDXL Turbo 模型,就可以在本地生成图了;

第一次加载模型可能会稍微慢一点,后续实测平均 0.3 秒一张图,还是非常快的。

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • wufengjian

    请教一下,我想在本地配置一个提供 api 服务的环境,应该怎么做呢?