Stable Diffusion web UI
Go to file
2022-10-23 15:13:18 -07:00
.github Revert "Merge branch 'master' into dev" 2022-10-02 19:42:07 +01:00
.streamlit Fixed streamlit not opening on the browser automatically on run. 2022-09-26 21:53:06 -07:00
configs Updated diffusers to 0.6.0. 2022-10-23 03:12:14 -07:00
data key_phrase_suggestions added support for new data structure, with description, conditions, custom formats and image support. 2022-10-20 11:53:50 +02:00
docs docs: add info about docker hub images (#1447) 2022-10-06 20:59:22 +03:00
frontend Fixed the page/layout being pushed up when expanders or other item expanded and then collapsed. 2022-10-20 15:48:25 -07:00
images Add Scene2Image documentation (#1399) 2022-10-02 22:14:52 +01:00
ldm pycocotools is not used 2022-10-04 19:54:33 +01:00
models Repo merge (#712) 2022-09-06 23:50:14 +01:00
optimizedSD Repo merge (#712) 2022-09-06 23:50:14 +01:00
scripts Fixed redundant backslash. 2022-10-23 15:13:18 -07:00
_config.yml dark theme 2022-09-19 01:05:46 +03:00
.dockerignore Update .dockerignore 2022-10-05 05:29:11 +01:00
.gitattributes Repo merge (#712) 2022-09-06 23:50:14 +01:00
.gitignore Stable Horde bridge (#1204) 2022-10-02 18:22:27 +01:00
CONTRIBUTING.md add contribution guide 2022-09-19 01:05:46 +03:00
daisi_app.py Changed yaml.load() for yaml.safe_load() in daisi_app.py 2022-10-06 23:32:54 -07:00
Dockerfile src->models 2022-10-05 01:03:06 +01:00
Dockerfile_base new docker 2022-10-04 12:57:48 +01:00
Dockerfile_runpod src->models 2022-10-05 01:03:06 +01:00
entrypoint.sh src->models 2022-10-05 01:03:06 +01:00
environment.yaml Moved the pip dependencies from the environment.yaml to the requirements.txt file. 2022-10-07 12:40:06 -07:00
horde_bridge.cmd Don't ask about restoring stash if nothing was stashed (#1533) 2022-10-17 13:01:17 +03:00
horde_bridge.sh Skip WebUI prompt if --bridge passed, Detailed error messages if bridgeData.py fails to load (#1483) 2022-10-11 13:23:04 +03:00
LICENSE Create LICENSE 2022-08-29 12:16:23 +01:00
README.md Update README.md 2022-10-23 02:18:59 -04:00
requirements.txt Removed stable-diffusion-videos dependency as we no longer need it, it is part of diffusers now as a custom pipeline. 2022-10-23 11:35:54 -07:00
runpod_entrypoint.sh src->models 2022-10-05 01:03:06 +01:00
setup.py refactor: sort out dependencies 2022-09-11 04:33:43 +03:00
Stable_Diffusion_v1_Model_Card.md Repo merge (#712) 2022-09-06 23:50:14 +01:00
Web_based_UI_for_Stable_Diffusion_colab.ipynb Added Open in Colab button to notebook. 2022-10-21 22:20:33 -07:00
webui-streamlit.cmd Don't ask about restoring stash if nothing was stashed (#1533) 2022-10-17 13:01:17 +03:00
webui.cmd Don't ask about restoring stash if nothing was stashed (#1533) 2022-10-17 13:01:17 +03:00
webui.sh Updated webui.sh to work with new v1.5 model files 2022-10-21 00:48:54 -04:00

Web-based UI for Stable Diffusion

Created by Sygil.Dev

Join us at Sygil.Dev's Discord Server Discord Server

Installation instructions for:

Want to ask a question or request a feature?

Come to our Discord Server or use Discussions.

Documentation

Documentation is located here

Want to contribute?

Check the Contribution Guide

sygil-dev main devs:

Project Features:

  • Built-in image enhancers and upscalers, including GFPGAN and realESRGAN

  • Generator Preview: See your image as its being made

  • Run additional upscaling models on CPU to save VRAM

  • Textual inversion: Reaserch Paper

  • K-Diffusion Samplers: A great collection of samplers to use, including:

    • k_euler
    • k_lms
    • k_euler_a
    • k_dpm_2
    • k_dpm_2_a
    • k_heun
    • PLMS
    • DDIM
  • Loopback: Automatically feed the last generated sample back into img2img

  • Prompt Weighting & Negative Prompts: Gain more control over your creations

  • Selectable GPU usage from Settings tab

  • Word Seeds: Use words instead of seed numbers

  • Automated Launcher: Activate conda and run Stable Diffusion with a single command

  • Lighter on VRAM: 512x512 Text2Image & Image2Image tested working on 4GB (with optimized mode enabled in Settings)

  • Prompt validation: If your prompt is too long, you will get a warning in the text output field

  • Sequential seeds for batches: If you use a seed of 1000 to generate two batches of two images each, four generated images will have seeds: 1000, 1001, 1002, 1003.

  • Prompt matrix: Separate multiple prompts using the | character, and the system will produce an image for every combination of them.

  • [Gradio] Advanced img2img editor with Mask and crop capabilities

  • [Gradio] Mask painting 🖌️: Powerful tool for re-generating only specific parts of an image you want to change (currently Gradio only)

SD WebUI

An easy way to work with Stable Diffusion right from your browser.

Streamlit

Features:

  • Clean UI with an easy to use design, with support for widescreen displays
  • Dynamic live preview of your generations
  • Easily customizable defaults, right from the WebUI's Settings tab
  • An integrated gallery to show the generations for a prompt
  • Optimized VRAM usage for bigger generations or usage on lower end GPUs
  • Text2Video: Generate video clips from text prompts right from the WebUI (WIP)
  • Concepts Library: Run custom embeddings others have made via textual inversion.
  • **Currently in development: Stable Hord integration; ImgLab, batch inputs, & mask editor from Gradio

Prompt Weights & Negative Prompts:

To give a token (tag recognized by the AI) a specific or increased weight (emphasis), add :0.## to the prompt, where 0.## is a decimal that will specify the weight of all tokens before the colon. Ex: cat:0.30, dog:0.70 or guy riding a bicycle :0.7, incoming car :0.30

Negative prompts can be added by using ### , after which any tokens will be seen as negative. Ex: cat playing with string ### yarn will negate yarn from the generated image.

Negatives are a very powerful tool to get rid of contextually similar or related topics, but be careful when adding them since the AI might see connections you can't, and end up outputting gibberish

*Tip: Try using the same seed with different prompt configurations or weight values see how the AI understands them, it can lead to prompts that are more well-tuned and less prone to error.

Please see the Streamlit Documentation to learn more.

Gradio [Legacy]

Features:

  • Older UI that is functional and feature complete.
  • Has access to all upscaling models, including LSDR.
  • Dynamic prompt entry automatically changes your generation settings based on --params in a prompt.
  • Includes quick and easy ways to send generations to Image2Image or the Image Lab for upscaling.

Note: the Gradio interface is no longer being actively developed by Sygil.Dev and is only receiving bug fixes.

Please see the Gradio Documentation to learn more.

Image Upscalers


GFPGAN

Lets you improve faces in pictures using the GFPGAN model. There is a checkbox in every tab to use GFPGAN at 100%, and also a separate tab that just allows you to use GFPGAN on any picture, with a slider that controls how strong the effect is.

If you want to use GFPGAN to improve generated faces, you need to install it separately. Download GFPGANv1.4.pth and put it into the /stable-diffusion-webui/models/gfpgan directory.

RealESRGAN

Lets you double the resolution of generated images. There is a checkbox in every tab to use RealESRGAN, and you can choose between the regular upscaler and the anime version. There is also a separate tab for using RealESRGAN on any picture.

Download RealESRGAN_x4plus.pth and RealESRGAN_x4plus_anime_6B.pth. Put them into the stable-diffusion-webui/models/realesrgan directory.

LSDR

Download LDSR project.yaml and model last.cpkt. Rename last.ckpt to model.ckpt and place both under stable-diffusion-webui/models/ldsr/

GoBig, and GoLatent (Currently on the Gradio version Only)

More powerful upscalers that uses a seperate Latent Diffusion model to more cleanly upscale images.

Please see the Image Enhancers Documentation to learn more.


Original Information From The Stable Diffusion Repo:

Stable Diffusion

Stable Diffusion was made possible thanks to a collaboration with Stability AI and Runway and builds upon our previous work:

High-Resolution Image Synthesis with Latent Diffusion Models
Robin Rombach*, Andreas Blattmann*, Dominik Lorenz, Patrick Esser, Björn Ommer

CVPR '22 Oral

which is available on GitHub. PDF at arXiv. Please also visit our Project page.

Stable Diffusion is a latent text-to-image diffusion model. Thanks to a generous compute donation from Stability AI and support from LAION, we were able to train a Latent Diffusion Model on 512x512 images from a subset of the LAION-5B database. Similar to Google's Imagen, this model uses a frozen CLIP ViT-L/14 text encoder to condition the model on text prompts. With its 860M UNet and 123M text encoder, the model is relatively lightweight and runs on a GPU with at least 10GB VRAM. See this section below and the model card.

Stable Diffusion v1

Stable Diffusion v1 refers to a specific configuration of the model architecture that uses a downsampling-factor 8 autoencoder with an 860M UNet and CLIP ViT-L/14 text encoder for the diffusion model. The model was pretrained on 256x256 images and then finetuned on 512x512 images.

*Note: Stable Diffusion v1 is a general text-to-image diffusion model and therefore mirrors biases and (mis-)conceptions that are present in its training data. Details on the training procedure and data, as well as the intended use of the model can be found in the corresponding model card.

Comments

BibTeX

@misc{rombach2021highresolution,
      title={High-Resolution Image Synthesis with Latent Diffusion Models}, 
      author={Robin Rombach and Andreas Blattmann and Dominik Lorenz and Patrick Esser and Björn Ommer},
      year={2021},
      eprint={2112.10752},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}