InvokeAI/docs/index.md
2023-07-15 16:14:47 -04:00

10 KiB

title
Home

project logo

discord badge

latest release badge github stars badge github forks badge

CI checks on main badge CI checks on dev badge latest commit to dev badge

github open issues badge github open prs badge

InvokeAI is an implementation of Stable Diffusion, the open source text-to-image and image-to-image generator. It provides a streamlined process with various new features and options to aid the image generation process. It runs on Windows, Mac and Linux machines, and runs on GPU cards with as little as 4 GB of RAM.

Quick links: [Discord Server] [Code and Downloads] [Bug Reports] [Discussion, Ideas & Q&A]

!!! note

This fork is rapidly evolving. Please use the [Issues tab](https://github.com/invoke-ai/InvokeAI/issues) to report bugs and make feature requests. Be sure to use the provided templates. They will help aid diagnose issues faster.

:fontawesome-solid-computer: Hardware Requirements

:octicons-cpu-24: System

You wil need one of the following:

  • :simple-nvidia: An NVIDIA-based graphics card with 4 GB or more VRAM memory.
  • :simple-amd: An AMD-based graphics card with 4 GB or more VRAM memory (Linux only)
  • :fontawesome-brands-apple: An Apple computer with an M1 chip.

We do not recommend the following video cards due to issues with their running in half-precision mode and having insufficient VRAM to render 512x512 images in full-precision mode:

  • NVIDIA 10xx series cards such as the 1080ti
  • GTX 1650 series cards
  • GTX 1660 series cards

:fontawesome-solid-memory: Memory and Disk

  • At least 12 GB Main Memory RAM.
  • At least 18 GB of free disk space for the machine learning model, Python, and all its dependencies.

:octicons-package-dependencies-24: Installation

This fork is supported across Linux, Windows and Macintosh. Linux users can use either an Nvidia-based card (with CUDA support) or an AMD card (using the ROCm driver).

Installation Getting Started Guide

Automated Installer

This method is recommended for 1st time users

Manual Installation

This method is recommended for experienced users and developers

Docker Installation

This method is recommended for those familiar with running Docker containers

Other Installation Guides

:octicons-gift-24: InvokeAI Features

The InvokeAI Web Interface

Image Management

Model Management

Prompt Engineering

InvokeAI Configuration

:octicons-log-16: Important Changes Since Version 2.3

Nodes

Behind the scenes, InvokeAI has been completely rewritten to support "nodes," small unitary operations that can be combined into graphs to form arbitrary workflows. For example, there is a prompt node that processes the prompt string and feeds it to a text2latent node that generates a latent image. The latents are then fed to a latent2image node that translates the latent image into a PNG.

The WebGUI has a node editor that allows you to graphically design and execute custom node graphs. The ability to save and load graphs is still a work in progress, but coming soon.

Command-Line Interface Retired

The original "invokeai" command-line interface has been retired. The invokeai command will now launch a new command-line client that can be used by developers to create and test nodes. It is not intended to be used for routine image generation or manipulation.

To launch the Web GUI from the command-line, use the command invokeai-web rather than the traditional invokeai --web.

ControlNet

This version of InvokeAI features ControlNet, a system that allows you to achieve exact poses for human and animal figures by providing a model to follow. Full details are found in ControlNet

New Schedulers

The list of schedulers has been completely revamped and brought up to date:

Short Name Scheduler Notes
ddim DDIMScheduler
ddpm DDPMScheduler
deis DEISMultistepScheduler
lms LMSDiscreteScheduler
pndm PNDMScheduler
heun HeunDiscreteScheduler original noise schedule
heun_k HeunDiscreteScheduler using karras noise schedule
euler EulerDiscreteScheduler original noise schedule
euler_k EulerDiscreteScheduler using karras noise schedule
kdpm_2 KDPM2DiscreteScheduler
kdpm_2_a KDPM2AncestralDiscreteScheduler
dpmpp_2s DPMSolverSinglestepScheduler
dpmpp_2m DPMSolverMultistepScheduler original noise scnedule
dpmpp_2m_k DPMSolverMultistepScheduler using karras noise schedule
unipc UniPCMultistepScheduler CPU only

Please see 3.0.0 Release Notes for further details.

:material-target: Troubleshooting

Please check out our :material-frequently-asked-questions: Troubleshooting Guide to get solutions for common installation problems and other issues.

:octicons-repo-push-24: Contributing

Anyone who wishes to contribute to this project, whether documentation, features, bug fixes, code cleanup, testing, or code reviews, is very much encouraged to do so. If you are unfamiliar with how to contribute to GitHub projects, here is a Getting Started Guide.

A full set of contribution guidelines, along with templates, are in progress, but for now the most important thing is to make your pull request against the "development" branch, and not against "main". This will help keep public breakage to a minimum and will allow you to propose more radical changes.

:octicons-person-24: Contributors

This fork is a combined effort of various people from across the world. Check out the list of all these amazing people. We thank them for their time, hard work and effort.

:octicons-question-24: Support

For support, please use this repository's GitHub Issues tracking service. Feel free to send me an email if you use and like the script.

Original portions of the software are Copyright (c) 2022-23 by The InvokeAI Team.