Stable Diffusion web UI
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
brkirch abfa22c16f Revert "MPS Upscalers Fix"
This reverts commit 768b95394a8500da639b947508f78296524f1836.
3 years ago
.github Prevent people from just saying "latest version" 3 years ago
embeddings add embeddings dir 3 years ago
extensions delete the submodule dir (why do you keep doing this) 3 years ago
javascript added event listener for the image gallery modal; moved js to separate file 3 years ago
localizations Remove old localizations from the main repo. 3 years ago
models Forgot to add this folder 3 years ago
modules Revert "MPS Upscalers Fix" 3 years ago
scripts updating the displayed generation info when user clicks images in the gallery. feature request 4415 3 years ago
test Add tests 3 years ago
textual_inversion_templates hypernetwork training mk1 3 years ago
.gitignore launch tests from launch.py with --tests commandline argument 3 years ago
.pylintrc Add basic Pylint to catch syntax errors on PRs 3 years ago
CODEOWNERS remove localization people from CODEOWNERS add a note 3 years ago
README.md shut down gradio's "everything allowed" CORS policy; I checked the main functionality to work with this, but if this breaks some exotic workflow, I'm sorry. 3 years ago
artists.csv Update artists.csv 3 years ago
environment-wsl2.yaml update environment-wsl2.yaml 3 years ago
launch.py run installers for newly installed extensions 3 years ago
requirements.txt bump gradio to 3.9 3 years ago
requirements_versions.txt bump gradio to 3.9 3 years ago
screenshot.png updated interface to use Blocks 3 years ago
script.js localization support 3 years ago
style.css add tags to extensions, and ability to filter out tags 3 years ago
txt2img_Screenshot.png Add files via upload 3 years ago
webui-user.bat Revert "Update webui-user.bat" 3 years ago
webui-user.sh revert changes to two bat files I asked to revert but the author couldn't in 863e9efc19. 3 years ago
webui.bat add windows equivalent 3 years ago
webui.py add tags to extensions, and ability to filter out tags 3 years ago
webui.sh webui.sh: no automatic git pull 3 years ago

README.md

Stable Diffusion web UI

A browser interface based on Gradio library for Stable Diffusion.

Check the custom scripts wiki page for extra scripts developed by users.

Features

Detailed feature showcase with images:

  • Original txt2img and img2img modes
  • One click install and run script (but you still must install python and git)
  • Outpainting
  • Inpainting
  • Color Sketch
  • Prompt Matrix
  • Stable Diffusion Upscale
  • Attention, specify parts of text that the model should pay more attention to
    • a man in a ((tuxedo)) - will pay more attention to tuxedo
    • a man in a (tuxedo:1.21) - alternative syntax
    • select text and press ctrl+up or ctrl+down to automatically adjust attention to selected text (code contributed by anonymous user)
  • Loopback, run img2img processing multiple times
  • X/Y plot, a way to draw a 2 dimensional plot of images with different parameters
  • Textual Inversion
    • have as many embeddings as you want and use any names you like for them
    • use multiple embeddings with different numbers of vectors per token
    • works with half precision floating point numbers
    • train embeddings on 8GB (also reports of 6GB working)
  • Extras tab with:
    • GFPGAN, neural network that fixes faces
    • CodeFormer, face restoration tool as an alternative to GFPGAN
    • RealESRGAN, neural network upscaler
    • ESRGAN, neural network upscaler with a lot of third party models
    • SwinIR and Swin2SR(see here), neural network upscalers
    • LDSR, Latent diffusion super resolution upscaling
  • Resizing aspect ratio options
  • Sampling method selection
    • Adjust sampler eta values (noise multiplier)
    • More advanced noise setting options
  • Interrupt processing at any time
  • 4GB video card support (also reports of 2GB working)
  • Correct seeds for batches
  • Live prompt token length validation
  • Generation parameters
    • parameters you used to generate images are saved with that image
    • in PNG chunks for PNG, in EXIF for JPEG
    • can drag the image to PNG info tab to restore generation parameters and automatically copy them into UI
    • can be disabled in settings
    • drag and drop an image/text-parameters to promptbox
  • Read Generation Parameters Button, loads parameters in promptbox to UI
  • Settings page
  • Running arbitrary python code from UI (must run with --allow-code to enable)
  • Mouseover hints for most UI elements
  • Possible to change defaults/mix/max/step values for UI elements via text config
  • Random artist button
  • Tiling support, a checkbox to create images that can be tiled like textures
  • Progress bar and live image generation preview
  • Negative prompt, an extra text field that allows you to list what you don't want to see in generated image
  • Styles, a way to save part of prompt and easily apply them via dropdown later
  • Variations, a way to generate same image but with tiny differences
  • Seed resizing, a way to generate same image but at slightly different resolution
  • CLIP interrogator, a button that tries to guess prompt from an image
  • Prompt Editing, a way to change prompt mid-generation, say to start making a watermelon and switch to anime girl midway
  • Batch Processing, process a group of files using img2img
  • Img2img Alternative, reverse Euler method of cross attention control
  • Highres Fix, a convenience option to produce high resolution pictures in one click without usual distortions
  • Reloading checkpoints on the fly
  • Checkpoint Merger, a tab that allows you to merge up to 3 checkpoints into one
  • Custom scripts with many extensions from community
  • Composable-Diffusion, a way to use multiple prompts at once
    • separate prompts using uppercase AND
    • also supports weights for prompts: a cat :1.2 AND a dog AND a penguin :2.2
  • No token limit for prompts (original stable diffusion lets you use up to 75 tokens)
  • DeepDanbooru integration, creates danbooru style tags for anime prompts (add --deepdanbooru to commandline args)
  • xformers, major speed increase for select cards: (add --xformers to commandline args)
  • via extension: History tab: view, direct and delete images conveniently within the UI
  • Generate forever option
  • Training tab
    • hypernetworks and embeddings options
    • Preprocessing images: cropping, mirroring, autotagging using BLIP or deepdanbooru (for anime)
  • Clip skip
  • Use Hypernetworks
  • Use VAEs
  • Estimated completion time in progress bar
  • API
  • Support for dedicated inpainting model by RunwayML.
  • via extension: Aesthetic Gradients, a way to generate images with a specific aesthetic by using clip images embds (implementation of https://github.com/vicgalle/stable-diffusion-aesthetic-gradients)

Where are Aesthetic Gradients?!?!

Aesthetic Gradients are now an extension. You can install it using git:

git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui-aesthetic-gradients extensions/aesthetic-gradients

After running this command, make sure that you have aesthetic-gradients dir in webui's extensions directory and restart the UI. The interface for Aesthetic Gradients should appear exactly the same as it was.

Where is History/Image browser?!?!

Image browser is now an extension. You can install it using git:

git clone https://github.com/yfszzx/stable-diffusion-webui-images-browser extensions/images-browser

After running this command, make sure that you have images-browser dir in webui's extensions directory and restart the UI. The interface for Image browser should appear exactly the same as it was.

Installation and Running

Make sure the required dependencies are met and follow the instructions available for both NVidia (recommended) and AMD GPUs.

Alternatively, use online services (like Google Colab):

Automatic Installation on Windows

  1. Install Python 3.10.6, checking "Add Python to PATH"
  2. Install git.
  3. Download the stable-diffusion-webui repository, for example by running git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git.
  4. Place model.ckpt in the models directory (see dependencies for where to get it).
  5. (Optional) Place GFPGANv1.4.pth in the base directory, alongside webui.py (see dependencies for where to get it).
  6. Run webui-user.bat from Windows Explorer as normal, non-administrator, user.

Automatic Installation on Linux

  1. Install the dependencies:
# Debian-based:
sudo apt install wget git python3 python3-venv
# Red Hat-based:
sudo dnf install wget git python3
# Arch-based:
sudo pacman -S wget git python3
  1. To install in /home/$(whoami)/stable-diffusion-webui/, run:
bash <(wget -qO- https://raw.githubusercontent.com/AUTOMATIC1111/stable-diffusion-webui/master/webui.sh)

Installation on Apple Silicon

Find the instructions here.

Contributing

Here's how to add code to this repo: Contributing

Documentation

The documentation was moved from this README over to the project's wiki.

Credits