如何将 Stable Diffusion PT+YAML 转换成 diffusers 格式

Huggingfacediffusers 格式是初学者最爱的格式,只需要简单几行代码,就可以下载模型,执行 文字到图片 转换等常用功能

而有时候在网上淘模型的时候,经常会遇到原版 Stable Diffusion 格式,只有一个 .pt 文件和一个 .yaml 配置文件,为了方便管理和加载,可以把原版格式转换为 diffusers 格式

下面以 waifu-diffusion-1.4 为示例,演示下如何完成格式转换

  1. 从网站上下载 waifu-diffusion-1.4 的 文件

https://huggingface.co/hakurei/waifu-diffusion-v1-4

wd-1-4-anime_e1.yaml
wd-1-4-anime_e2.ckpt
  1. 在本地准备 Python 环境
python -m venv venv
source venv/bin/activate
pip install 'diffusers[torch]' 'safetensors' 'transformers' 'omegaconf'
  1. 下载脚本文件

https://github.com/huggingface/diffusers/blob/v0.14.0/scripts/convert_original_stable_diffusion_to_diffusers.py

注意切换到匹配的 diffusers 版本,不然会出问题

  1. 执行命令
python convert_original_stable_diffusion_to_diffusers.py \
	--checkpoint_path wd-1-4-anime_e2.ckpt \
    --original_config_file wd-1-4-anime_e1.yaml \
    --image_size 768 \
    --scheduler_type pndm \
    --prediction_type v_prediction \
    --extract_ema \
    --to_safetensors \
    --device cpu \
    --dump_path out

即可在 out 目录下得到符合 diffusers 格式的模型了

可以使用

StableDiffusionImg2ImgPipeline.from_pretrained("path/to/out")

从本地目录加载模型

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码农炎可

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值