Skip to main content

A tool for easy use of stable diffusion

Project description

stablepy

Description:

The goal of this project is to make Stable Diffusion more accessible, simple and easy-to-use with python. Stablepy is constructed on top of the Diffusers library

Installation:

pip install stablepy==0.4.0

Usage:

To use the project, simply create a new instance of the Model_Diffusers class. This class takes several arguments, including the path to the Stable Diffusion model file and the task name.

Once you have created a new instance of the Model_Diffusers class, you can call the model() method to generate an image. The model() method takes several arguments, including the prompt, the number of steps, the guidance scale, the sampler, the image width, the image height, the path to the upscaler model (if using), etc.

Interactive tutorial:

See stablepy_demo.ipynb

Open In Colab

Examples:

The following code examples show how to use the project to generate a text-to-image and a ControlNet diffusion:

from stablepy import Model_Diffusers

# Generate a text-to-image diffusion
model = Model_Diffusers(
    base_model_id='./models/toonyou_beta6.safetensors',
    task_name= 'txt2img',
)

image, path_image = model(
    prompt='highly detailed portrait of an underwater city, with towering spires and domes rising up from the ocean floor',
    num_steps = 30,
    guidance_scale = 7.5,
    sampler = "DPM++ 2M",
    img_width = 512,
    img_height = 1024,
    upscaler_model_path = "./upscaler/RealESRGAN_x4plus_anime_6B.pth",
    upscaler_increases_size = 1.5,
    hires_steps = 25,
)

image[0]

Multiple LoRAs can also be used, as well as optimizations to the generation such as FreeU.

from stablepy import Model_Diffusers

# Generate an ControlNet diffusion
model = Model_Diffusers(
    base_model_id='./models/toonyou_beta6.safetensors',
    task_name= 'canny',
)

images, path_images = model(
    prompt='highly detailed portrait of an underwater city, with towering spires and domes rising up from the ocean floor',
    num_steps = 30,
    image_resolution = 768,
    preprocessor_name = "Canny",
    guidance_scale = 7.5,
    seed = 567,
    FreeU = True,
    lora_A = "./loras/lora14552.safetensors",
    lora_scale_A = 0.8,
    lora_B = "./loras/example_lora3.safetensors",
    lora_scale_B = 0.5,
    image = "./examples/image001.png",
)

images[1]

📖 News:

🔥 Version 0.4.0: New Update Details

  • IP Adapter with the variants FaceID and Instant-Style
  • New samplers
  • Appropriate support for SDXL safetensors models
  • ControlNet for SDXL: OpenPose, Canny, Scribble, SoftEdge, Depth, LineArt, and SDXL_Tile_Realistic
  • New variant prompt weight with emphasis
  • ControlNet pattern for SD1.5 and SDXL
  • ControlNet Canny now needs the preprocessor_name="Canny"
  • Similarly, ControlNet MLSD requires the preprocessor_name="MLSD"
  • Task names like "sdxl_canny" have been changed to "sdxl_canny_t2i" to refer to the T2I adapter that uses them.

Contributing:

We welcome contributions to the project. If you have any suggestions or bug fixes, please feel free to open an issue or submit a pull request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

stablepy-0.4.0.tar.gz (77.7 kB view details)

Uploaded Source

Built Distribution

stablepy-0.4.0-py3-none-any.whl (81.2 kB view details)

Uploaded Python 3

File details

Details for the file stablepy-0.4.0.tar.gz.

File metadata

  • Download URL: stablepy-0.4.0.tar.gz
  • Upload date:
  • Size: 77.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.10.13 Linux/6.5.0-1021-azure

File hashes

Hashes for stablepy-0.4.0.tar.gz
Algorithm Hash digest
SHA256 4141be44ad1e5f151057457c8dd747510d543255a2da852e675f29fb924e9cb8
MD5 a20cf84b14b3c400116fa23f171703d9
BLAKE2b-256 ebbf9d32f565fa44857f85503c741d54d9916affcfd1d7b0e5a2dbccdceffe13

See more details on using hashes here.

File details

Details for the file stablepy-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: stablepy-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 81.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.10.13 Linux/6.5.0-1021-azure

File hashes

Hashes for stablepy-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e1da2866419a67967974998cadd067209a3ede5bc67af2011cc765a3adbea7bf
MD5 690ebbe035bc669e50f651010dc9ef89
BLAKE2b-256 cad108176acdbde92c3a302dd0678004e2b3f9a6e9cc4ee9b303466c5b523bff

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page