Minimal helpers to run standalone Stable Diffusion experiments
Project description
The min_diffusion
library
This library was put together for a series of experiments on Classifier-free Guidance.
Install
pip install min_diffusion
How to use min_diffusion
The library has a single main class
MinimalDiffusion
.
This class takes three arguments:
model_name
device
dtype
model_name
is the string model name on the HuggingFace hub.
device
sets the hardware to run on.
dtype
is the torch.dtype
precision for the torch modules.
# import the library
from min_diffusion.core import MinimalDiffusion
Loading a sample model
Below is an example to load the openjourney model from PromptHero.
The model will be loaded in torch.float16
precision and placed on the
GPU.
# set the model to load and its options
model_name = 'prompthero/openjourney'
device = 'cuda'
dtype = torch.float32
revision = "fp32"
Creating a
MinimalDiffusion
with these arguments:
# create the minimal diffusion pipeline
pipeline = MinimalDiffusion(model_name, device, dtype, revision)
Loading the pipeline:
# load the pipeline
pipeline.load();
Enabling default unet attention slicing.
Generating an image
Below is an example text prompt for image generation.
Note the keyword
"mdjrny-v4 style"
at the start of the prompt. This is how theopenjourney
model creates images in the style of Midjourney v4.
# text prompt for image generations
prompt = "mdjrny-v4 style a photograph of an astronaut riding a horse"
Calling MinimalDiffusion
on the input text prompt
# generate the image
img = pipeline.generate(prompt);
Using the default Classifier-free Guidance.
0%| | 0/50 [00:00<?, ?it/s]
Here is the generated image:
# view the output image
img
Notes:
The pipeline assumes you have logged in to the HuggingFace hub.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for min_diffusion-0.0.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8e463c0db7b193a0c77bab3754ab4b30fec8e88b81df773e5a8a6db776a5eb5b |
|
MD5 | 0c4cfbd7d718097230edae7496ca501d |
|
BLAKE2b-256 | 2db0c3a43c05896d1be7b729f0ef0d14da5877b3db8c30f00130d3aea1baee70 |