awesome-stable-diffusion/README.md

24 KiB

Awesome Stable-Diffusion

Awesome

This is a list of software and resources for the Stable Diffusion AI model.

  • 🖊️ marks content that requires sign-up or account creation for a third party service outside GitHub.
  • 💵 marks Non-Free content: commercial content that may require any kind of payment.

Due to the fast-moving nature of the topic, entries in the list may be removed at an expedited rate until the ecosystem matures.

See Contributing.

TL;DR

The easiest way to get started for most people is to pick one of the available GUIs based on the desired platform and follow it's installation instructions.

Alternatively, most of the more developed forks (such as InvokeAI) come with their own user interfaces.

Official Resources

  • CompVis/Stable Diffusion - The official release of Stable Diffusion including a CLI, an AI-based Safety Classifier, which detects and suppresses sexualized content, and all the necessary files to get running.
  • stability-AI/stability-sdk - The official SDK used to build python applications integrated with StabilityAI's cloud platform instead of hosting the model locally. Operation requires an API Key (🖊️💵).
  • Public Release Announcement - StabilityAI's announcement about the public release of Stable Diffusion.
  • 🖊️ Official Discord - The official Stable Diffusion Discord by StabilityAI.
  • laion-aesthetic - The dataset used train stable diffusion, useful for querying to see if a concept is represented.

Actively Maintained Forks and Containers

All forks listed here add additional features and optimisations and are generally faster than the original release, as they keep the model in memory rather than reloading it after every prompt. Most forks seem to remove the Safety Classifier which may present a risk if used to provide public-facing services, such as Discord bots.

  • AbdBarho/stable-diffusion-webui-docker - Easy Docker setup for SD with multiple user-friendly UI options including AUTOMATIC1111/stable-diffusion-webui, sd-webui/stable-diffusion-webui and invoke-ai/InvokeAI.

  • AUTOMATIC1111/stable-diffusion-webui - Likely the fastest moving, most feature rich branch at the moment. Gradio based UI with extensive features such as in and outpainting, previews, xy plots, upscaling, clip-interrogation, textual inversion, negative prompting, a variety of upscaling features, training, checkpoint merging and switching capabilities and more. Comes with a handy install script that takes care of most dependencies and addons.

    • Addon: txt2Mask - Addon for mask based inpainting using natural language instead of brush tools.
    • DreamArtist - DreamArtist: Towards Controllable One-Shot Text-to-Image Generation via Contrastive Prompt-Tuning (Extension)
    • For more addons and extensions, please see the repository and the in-gui extension installer
  • basujindal/stable-diffusion - "Optimized Stable Diffusion"—a fork with dramatically reduced VRAM requirements through model splitting, enabling Stable Diffusion on lower-end graphics cards; includes a GradIO web interface and support for weighted prompts.

  • bes-dev/stable_diffusion.openvino - A fork for running the model using a CPU compatible with OpenVINO.

  • DreamArtist - With just one training image DreamArtist learns the content and style in it, generating diverse high-quality images with high controllability. Embeddings of DreamArtist can be easily combined with additional descriptions, as well as two learned embeddings. (standalone version)

  • fast-stable-diffusion - Speed focused fork with Dreambooth integration.

  • imaginAIry - Pythonic generation of stable diffusion images. Unique in that it supports complex text-based masking. Has an interactive CLI, upscaling, face enhancement, tiling, and other standard features. No GUI.

  • invoke-ai/InvokeAI - (formerly known as lstein/stable-diffusion) - Very active fork adding a conversational CLI, basic web interface and support for GFPGAN, ESRGAN, Codeformer, weighted prompts, prompt blending, negative prompting, img2img, tiling, textual-inversion as well as inference on Apple M1.

  • KerasCV StableDiffusion - High performance implementation of stable diffusion on KerasCV.

  • lowfuel/progrock-stable - Fork with optional Web GUI and a different approach to upscaling (GoBIG/ESRGAN)

    • txt2imghd - Fork of progrock diffusion that creates detailed, higher-resolution images by first generating an image from a prompt, upscaling it, then running img2img on smaller pieces of the upscaled image, and blending the results back into the original image.
  • neonsecret/stable-diffusion - Fork focusing on bigger resolutions with less vram at the expense of speed, automatically adjusting to the GPUs abilities. Also includes upscaling, facial restoration via CodeFormer and custom UI

  • NickLucche/stable-diffusion-nvidia-docker - Multi (Nvidia) GPU capable docker setup of SD

  • replicate/copg-stable-diffusion - Cog machine learning container of SD v1.4.

  • stable-diffusion-jupyterlab-docker - A Docker setup ready to go with Jupyter notebooks for Stable Diffusion.

  • runwayml/stable-diffusion - Stable Diffusion Branch by RunwayML with specifically trained inpainting model for high quality inpainting.

Checkpoints and Weights

Checkpoints (.ckpt files) must be separately downloaded and are required to run Stable Diffusion. The latest model release is v1.5 released by runwayml. The latest stability ai release is 1.4.

need.

  • 🖊️ sd-v1-5 from RunwayML - Stable Diffusion 1.5 Checkpoint released by runwayML.
  • 🖊️ Official Model Card - Official Stability AI Model Card on Hugging Face with all versions of the model. Download requires sign-in and acceptance of terms of service.
  • RealESRGAN Models - Download location for the latest RealESRGAN models required to use the upscaling features implemented by many forks. Different models exist for realistic and anime content. Please refer to the fork documentation to identify the ones you
  • sd-v1-5-inpainting from RunwayML - Checkpoint optimized for inpainting on SD 1.5, released by runwayML.

Online Demos and Notebooks

Complementary Models and Tools

Tools and models for use in conjuction with Stable Diffusion

  • Prompt to Prompt - Unofficial Implementation of Cross-attention-control for prompt to prompt image editing.
  • sd-prompt-graph - This is a React-based curve editor GUI for prompt interpolation animations made with Stable Diffusion.
  • DAAM - Diffusion attention attribution maps, generating heatmaps modelling the impact of specific terms and tokens in the prompt on the final diffusion result.

Customisation

GUIS

Most of these GUIS, unless mentioned otherwise in their documentation, include stable-diffusion.

Upscaling

  • BasicSR - Open-source upscaling and restoration toolbox supporting several models.
  • BSRGAN - BSRGAN—another upscaling solution specialized in upscaling degraded images.
  • Cupscale - GUI for running various upscaling models, including ESRGAN and RealESRGAN.
  • RealESRGAN - ESRGAN Upscaling (2x, 4x) and content restoration. Python: pip install realesrgan
  • jquesnelle/txt2imghd - A port of the GOBIG mode from progrockdiffusion, providing high quality upscaling on top of txt2img.
  • Upscale Wiki Model Database - Wiki and model database for checkpoints compatible with ESRGAN et al.

Content Restoration

  • lama-cleaner - Content aware AI inpainting tool useful for removing unwanted objects or defects from images. Python: pip install lama-cleaner
  • GFPGAN - Face Restoration GAN included in several forks for automatically fixing the face deformation commonly found in SD output.
  • CodeFormer - Another Face Restoration model (Paper).

Task Chaining

  • chaiNNer - Graphical node-based editor for chaining image processing tasks.
  • ai-art-generator - AI art generation suite combining Stable Diffusion and other models for high volume art generation.
  • dfserver distributed backend AI pipeline server for building self-hosted distributed GPU cluster to run the Stable Diffusion and various AI image or prompt building model.

Prompt Building

Prompts are the instructions given to diffusion models to manipulate their output.

  • Stable diffusion prompt book - OpenAI's stable diffusion prompt book, a very comprehensive resource on prompt engineering.

  • ai-art.com/modifiers - A visual reference guide for keywords.

  • aipromptguide.com - Visual Database of styles, modifier, artists and persons

  • krea.ai - Prompt search engine that also recommends similar prompts to the one that you click on.

    • 🖊️ With account creation, you can like and save prompts in your own collections.
  • Lexica.art - A searchable, visual database of images and the prompts settings used to create them.

  • pharmapsychotic/clip-interrogator - Jupyter notebook uses CLIP models to suggest a prompt for images similar to a given image (Demo).

  • 🖊️Phraser - A visual prompt builder drawing on a database of examples. (Requires account creation)

  • 🖊️Prompthero = Another visual prompt builder and reference library.

  • PromptoMania - A visual prompt construction tool.

  • rom1504/clip-retrieval - Searches for prompt keywords in the datasets used in training Stable Diffusion and other models (Online GUI). Some GUIS like Automatic1111 include this functionality.

  • Stable Diffusion Prompt Generator - Gives suggestions for improving a given text prompt.

  • PromptSearch - Yet another Stable Diffusion search engine but with public API

  • Same Energy - A visual search engine that returns images that have the same 'energy'.

  • PublicPrompts - Collection of PublicPrompts

Specialized Usecases

  • dream-textures - A blender addon leveraging stable diffusion for texture creation.
  • stable-dreamfusion - An open source implementation of Google's text-to-3D dreamfusion paper with imagegen replaced by stable diffusion.

Tutorials and Comparisons

Tutorials and high quality educational resources

Getting Up and Running

Learning and Mastering

Studies

Extending Functionality

Community Resources

  • 1 week of Stable Diffusion - A curated list of Stable Diffusion services, adaptations, user interfaces and integrations.
  • pharmapsychotic.com/tools - A curated list of Tools and Resources for AI Art, including but not limited to Stable Diffusion.
  • Stable Diffusion Resources - A thorough resource for answering pressing questions about Stable Diffusion, including guides, tutorials, and best software.

Social Media

Plugins for third party apps

Commercial SaaS and apps implementing Stable Diffusion

  • 🖊️💵 AI Art Generator (IOS) - iOS App to generate art using Stable Diffusion.
  • aiimagegenerator.org - Free online art generator for generating images using Stable Diffusion. Supports txt2img and img2img generation and inpainting.
  • 🖊️💵 Barium.ai - Generate PBR (physics based rendering) textures from text. Free and paid plans.
  • 🖊️💵 Canva text-to-image - Text-to-image (beta) service from Canva
  • 🖊️💵 Dream Studio - Online art generation service by StabilityAI, the creators of Stable Diffusion. Similar to services like DALL-E or Midjourney, this operates on a credit model with a free allowance of credits given to signed up users on a monthly basis.
  • 🖊️💵 dream.ai - Online art generation service by Wombo.ai (mobile apps available).
  • 🖊️💵 Image Computer - Easy-to-use service aimed at non-technical people (comes with free trial credits)
  • 🖊️💵 Neural.love - Another online art generator with generous free credits as of Oct 2022.
  • 🖊️💵 replicate.com stable diffusion - Another SaaS offering for Stable Diffusion.
  • 🖊️💵 Starry AI (IOS) - Another IOS app offering stable diffusion with preset art styles.
  • 🖊️ Stable Horde - Distributed stable diffusion cluster (think folding@home) with web, discord and telegram interfaces where joining with your GPU gives you priority.
  • 🖊️💵 Stable Diffusion as API - Third party REST API into table Diffusion service.