参考:
Py之modelscope:modelscope的简介、安装、使用方法之详细攻略-CSDN博客
魔搭社区-stable-diffusion-2-1-base
安装diffusers:
D:\installd\miniconda3\envs\sd\Scripts\pip3 install diffusers accelerate transformers -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
安装modelscope:
D:\installd\miniconda3\envs\sd\Scripts\pip3 install modelscope -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
modelscope默认将模型文件下载到以下目录:
C:\Users\chenfei\.cache
下载模型,更改模型目录,加载模型生成图像:
from diffusers import StableDiffusionPipeline, EulerDiscreteScheduler
import torch
from modelscope import snapshot_download
local_tokenizer_dir = snapshot_download("AI-ModelScope/stable-diffusion-2-1-base",revision='master')
local_tokenizer_dir = "D:\Dev\models\stable-diffusion-2-1-base"
scheduler = EulerDiscreteScheduler.from_pretrained(local_tokenizer_dir, subfolder="scheduler")
pipe = StableDiffusionPipeline.from_pretrained(local_tokenizer_dir, scheduler=scheduler, torch_dtype=torch.float16)
pipe = pipe.to("cuda")
prompt = "a photo of an astronaut riding a horse on mars"
image = pipe(prompt).images[0]
image.save("astronaut_rides_horse.png")
或者:
from diffusers import DiffusionPipeline
pipeline = DiffusionPipeline.from_pretrained("D:\Dev\models\stable-diffusion-2-1-base")
pipeline.to("cuda")
# 图像生成
image = pipeline("An image of a squirrel in Picasso style").images[0]
# 保存图像
image.save("image_of_squirrel_painting.png")
不设置scheduler导致生成图像很慢。
各种版本的sd模型介绍:
https://zhuanlan.zhihu.com/p/631941039
中文sd模型介绍:
魔搭社区-太乙-Stable-Diffusion-1B-中文-v0.1
Diffusers库介绍:
【diffusers】(三) pipeline原理及自定义训练推理_diffusers train-CSDN博客
天才程序员周弈帆 | Stable Diffusion 解读(四):Diffusers实现源码解读_class unet2dconditionmodel(modelmixin, configmixin-CSDN博客 【Diffusers教程】一、简介:快速使用Diffusion网络-CSDN博客
【diffusers】(一) diffusers库介绍 & 框架代码解析-CSDN博客
Diffusion models代码解读:入门与实战_latent diffusion model训练自定义数据集-CSDN博客