2022-08-22 08:15:46 -06:00
# Stable Diffusion web UI
A browser interface based on Gradio library for Stable Diffusion.
2022-09-23 18:22:02 -06:00
![](txt2img_Screenshot.png)
2022-09-04 04:08:06 -06:00
2022-09-29 23:18:05 -06:00
Check the [custom scripts ](https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Custom-Scripts ) wiki page for extra scripts developed by users.
2022-09-15 04:50:55 -06:00
## Features
[Detailed feature showcase with images ](https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Features ):
2022-09-04 04:08:06 -06:00
- Original txt2img and img2img modes
2022-09-09 02:39:41 -06:00
- One click install and run script (but you still must install python and git)
2022-09-04 04:08:06 -06:00
- Outpainting
- Inpainting
2022-09-30 18:15:43 -06:00
- Prompt Matrix
- Stable Diffusion Upscale
2022-09-30 15:38:48 -06:00
- Attention, specify parts of text that the model should pay more attention to
2022-09-30 18:15:43 -06:00
- a man in a ((tuxedo)) - will pay more attention to tuxedo
- a man in a (tuxedo:1.21) - alternative syntax
- Loopback, run img2img processing multiple times
2022-09-30 15:38:48 -06:00
- X/Y plot, a way to draw a 2 dimensional plot of images with different parameters
2022-09-04 04:08:06 -06:00
- Textual Inversion
2022-09-30 15:38:48 -06:00
- 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
2022-09-04 09:54:12 -06:00
- Extras tab with:
2022-09-15 04:50:55 -06:00
- GFPGAN, neural network that fixes faces
- CodeFormer, face restoration tool as an alternative to GFPGAN
- RealESRGAN, neural network upscaler
2022-09-30 15:38:48 -06:00
- ESRGAN, neural network upscaler with a lot of third party models
2022-09-21 14:58:41 -06:00
- SwinIR, neural network upscaler
2022-09-21 16:53:35 -06:00
- LDSR, Latent diffusion super resolution upscaling
2022-09-04 09:54:12 -06:00
- Resizing aspect ratio options
2022-09-04 04:08:06 -06:00
- Sampling method selection
- Interrupt processing at any time
2022-09-30 15:38:48 -06:00
- 4GB video card support (also reports of 2GB working)
- Correct seeds for batches
2022-09-04 04:08:06 -06:00
- Prompt length validation
2022-09-30 18:15:43 -06:00
- get length of prompt in tokens as you type
- get a warning after generation if some text was truncated
2022-09-30 15:38:48 -06:00
- 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
2022-09-04 04:08:06 -06:00
- Settings page
2022-09-30 18:15:43 -06:00
- Running arbitrary python code from UI (must run with --allow-code to enable)
2022-09-12 18:00:40 -06:00
- Mouseover hints for most UI elements
2022-09-04 04:52:01 -06:00
- Possible to change defaults/mix/max/step values for UI elements via text config
2022-09-06 14:10:12 -06:00
- Random artist button
2022-09-30 15:38:48 -06:00
- Tiling support, a checkbox to create images that can be tiled like textures
2022-09-06 14:10:12 -06:00
- Progress bar and live image generation preview
2022-09-30 15:38:48 -06:00
- 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
2022-09-21 14:58:41 -06:00
- Img2img Alternative
2022-09-30 15:38:48 -06:00
- 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 two checkpoints into one
- [Custom scripts ](https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Custom-Scripts ) with many extensions from community
2022-09-04 04:08:06 -06:00
2022-09-15 04:50:55 -06:00
## Installation and Running
Make sure the required [dependencies ](https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Dependencies ) are met and follow the instructions available for both [NVidia ](https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Install-and-Run-on-NVidia-GPUs ) (recommended) and [AMD ](https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Install-and-Run-on-AMD-GPUs ) GPUs.
2022-09-11 03:13:26 -06:00
2022-09-23 11:46:02 -06:00
Alternatively, use Google Colab:
2022-09-23 11:55:54 -06:00
- [Colab, maintained by Akaibu ](https://colab.research.google.com/drive/1kw3egmSn-KgWsikYvOMjJkVDsPLjEMzl )
2022-09-23 11:46:02 -06:00
- [Colab, original by me, outdated ](https://colab.research.google.com/drive/1Iy-xW9t1-OQWhb0hNxueGij8phCyluOh ).
2022-09-02 00:49:35 -06:00
2022-09-15 04:50:55 -06:00
### Automatic Installation on Windows
1. Install [Python 3.10.6 ](https://www.python.org/downloads/windows/ ), checking "Add Python to PATH"
2. Install [git ](https://git-scm.com/download/win ).
3. Download the stable-diffusion-webui repository, for example by running `git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git` .
2022-09-18 00:09:10 -06:00
4. Place `model.ckpt` in the `models` directory (see [dependencies ](https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Dependencies ) for where to get it).
2022-09-19 10:24:58 -06:00
5. _*(Optional)*_ Place `GFPGANv1.4.pth` in the base directory, alongside `webui.py` (see [dependencies ](https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Dependencies ) for where to get it).
2022-09-18 00:09:10 -06:00
6. Run `webui-user.bat` from Windows Explorer as normal, non-administrator, user.
2022-09-08 23:37:19 -06:00
2022-09-15 04:50:55 -06:00
### Automatic Installation on Linux
1. Install the dependencies:
```bash
# Debian-based:
2022-09-13 07:28:04 -06:00
sudo apt install wget git python3 python3-venv
2022-09-15 04:50:55 -06:00
# Red Hat-based:
2022-09-13 07:28:04 -06:00
sudo dnf install wget git python3
2022-09-15 04:50:55 -06:00
# Arch-based:
sudo pacman -S wget git python3
2022-09-13 07:28:04 -06:00
```
2022-09-15 04:50:55 -06:00
2. To install in `/home/$(whoami)/stable-diffusion-webui/` , run:
2022-09-09 15:31:58 -06:00
```bash
2022-09-15 04:50:55 -06:00
bash < (wget -qO- https://raw.githubusercontent.com/AUTOMATIC1111/stable-diffusion-webui/master/webui.sh)
2022-09-09 15:31:58 -06:00
```
2022-09-22 03:35:12 -06:00
### Installation on Apple Silicon
Find the instructions [here ](https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Installation-on-Apple-Silicon ).
2022-09-30 02:57:19 -06:00
## Contributing
Here's how to add code to this repo: [Contributing ](https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Contributing )
2022-09-15 04:50:55 -06:00
## Documentation
The documentation was moved from this README over to the project's [wiki ](https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki ).
2022-09-11 16:55:34 -06:00
2022-09-04 10:09:00 -06:00
## Credits
- Stable Diffusion - https://github.com/CompVis/stable-diffusion, https://github.com/CompVis/taming-transformers
- k-diffusion - https://github.com/crowsonkb/k-diffusion.git
- GFPGAN - https://github.com/TencentARC/GFPGAN.git
2022-09-21 01:38:06 -06:00
- CodeFormer - https://github.com/sczhou/CodeFormer
2022-09-04 10:09:00 -06:00
- ESRGAN - https://github.com/xinntao/ESRGAN
2022-09-21 14:58:41 -06:00
- SwinIR - https://github.com/JingyunLiang/SwinIR
2022-09-21 16:53:35 -06:00
- LDSR - https://github.com/Hafiidz/latent-diffusion
2022-09-10 03:06:19 -06:00
- Ideas for optimizations - https://github.com/basujindal/stable-diffusion
2022-09-15 06:54:11 -06:00
- Doggettx - Cross Attention layer optimization - https://github.com/Doggettx/stable-diffusion, original idea for prompt editing.
2022-10-02 14:22:48 -06:00
- Rinon Gal - Textual Inversion - https://github.com/rinongal/textual_inversion (we're not using his code, but we are using his ideas).
2022-09-04 10:09:00 -06:00
- Idea for SD upscale - https://github.com/jquesnelle/txt2imghd
2022-09-16 14:17:10 -06:00
- Noise generation for outpainting mk2 - https://github.com/parlance-zz/g-diffuser-bot
2022-09-11 09:48:36 -06:00
- CLIP interrogator idea and borrowing some code - https://github.com/pharmapsychotic/clip-interrogator
2022-09-04 10:09:00 -06:00
- Initial Gradio script - posted on 4chan by an Anonymous user. Thank you Anonymous user.
2022-09-15 04:50:55 -06:00
- (You)