🚀 stable-diffusion-xl-refiner-1.0-GGUF
本项目基于Stable Diffusion技术,提供了图像生成和修改的能力。通过特定的量化配置和模型架构,可根据文本提示生成高质量图像,适用于艺术创作、教育工具等研究领域。
📄 许可证
本项目采用 CreativeML Open RAIL++-M License 许可协议。
📦 安装指南
升级 diffusers
库
pip install diffusers --upgrade
安装其他依赖库
pip install invisible_watermark transformers accelerate safetensors
💻 使用示例
基础用法
import torch
from diffusers import StableDiffusionXLImg2ImgPipeline
from diffusers.utils import load_image
pipe = StableDiffusionXLImg2ImgPipeline.from_pretrained(
"stabilityai/stable-diffusion-xl-refiner-1.0", torch_dtype=torch.float16, variant="fp16", use_safetensors=True
)
pipe = pipe.to("cuda")
url = "https://huggingface.co/datasets/patrickvonplaten/images/resolve/main/aa_xl/000000009.png"
init_image = load_image(url).convert("RGB")
prompt = "a photo of an astronaut riding a horse on mars"
image = pipe(prompt, image=init_image).images
高级用法
使用 torch.compile
提升推理速度
当使用 torch >= 2.0
时,可通过 torch.compile
提升 20 - 30% 的推理速度。在运行管道前,用 torch.compile
包装 unet
:
pipe.unet = torch.compile(pipe.unet, mode="reduce-overhead", fullgraph=True)
启用 CPU 卸载
如果受限于 GPU 显存,可调用 pipe.enable_model_cpu_offload
启用 CPU 卸载,而不是使用 .to("cuda")
:
- pipe.to("cuda")
+ pipe.enable_model_cpu_offload()
📚 详细文档
模型信息
量化信息
量化方式 |
OpenCLIP ViT-G/14 量化 |
VAE 量化 |
FP16 |
FP16 |
FP16 |
Q8_0 |
FP16 |
FP16 |
Q4_1 |
FP16 |
FP16 |
Q4_0 |
FP16 |
FP16 |
模型架构

SDXL 由一个用于潜在扩散的 专家集成 管道组成:
第一步,使用基础模型(可在 https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0 获取)生成(有噪声的)潜在变量,然后使用专门用于最终去噪步骤的细化模型对其进行进一步处理。请注意,基础模型可以作为独立模块使用。
或者,我们可以使用如下的两阶段管道:
首先,使用基础模型生成所需输出大小的潜在变量。第二步,使用专门的高分辨率模型,并对第一步生成的潜在变量应用一种称为 SDEdit(https://arxiv.org/abs/2108.01073,也称为 “img2img”)的技术,使用相同的提示。这种技术比第一种方法稍慢,因为它需要更多的函数评估。
源代码可在 https://github.com/Stability-AI/generative-models 获取。
评估结果

上图评估了用户对 SDXL(有和没有细化)相对于 SDXL 0.9 以及 Stable Diffusion 1.5 和 2.1 的偏好。SDXL 基础模型的表现明显优于之前的版本,而与细化模块结合的模型则实现了最佳的整体性能。
🔧 技术细节
模型来源
为了进行研究,我们推荐使用 generative-models
GitHub 仓库(https://github.com/Stability-AI/generative-models),该仓库实现了最流行的扩散框架(包括训练和推理),并且会随着时间的推移添加新的功能,如蒸馏。
Clipdrop 提供免费的 SDXL 推理服务。
模型使用范围
直接使用
该模型仅用于研究目的。可能的研究领域和任务包括:
- 艺术作品的生成,以及在设计和其他艺术过程中的应用。
- 教育或创意工具中的应用。
- 生成模型的研究。
- 安全部署有可能生成有害内容的模型。
- 探索和理解生成模型的局限性和偏差。
超出范围的使用
该模型并非用于生成真实或准确反映人物或事件的内容,因此使用该模型生成此类内容超出了其能力范围。
局限性和偏差
局限性
- 模型无法实现完美的照片级真实感。
- 模型无法渲染清晰可读的文本。
- 模型在处理涉及组合性的更复杂任务时存在困难,例如渲染与 “一个红色立方体放在蓝色球体上” 对应的图像。
- 面部和人物的生成可能不够理想。
- 模型的自动编码部分存在信息损失。
偏差
虽然图像生成模型的能力令人印象深刻,但它们也可能强化或加剧社会偏差。
⚠️ 重要提示
本模型仅支持 gpustack/llama-box v0.0.75+ 版本。
💡 使用建议
更多高级用例,请参考 文档。