一个Stable Diffusion工具包。

Mary Hipp d66979073b add optional config for settings modal 1 day ago
.dev_scripts d176fb07cd Replace --full_precision with --precision that works even if not specified 8 months ago
.github 5569f205ee Update CODEOWNERS 1 week ago
binary_installer 508780d07f Also fix .bat file to point at correct configurer 3 months ago
coverage c247f430f7 combine pytest.ini with pyproject.toml 2 months ago
docker 2d9fac23e7 fix Dockerfile 3 months ago
docs 6f3c6ddf3f Update 020_INSTALL_MANUAL.md 1 week ago
installer 8f80ba9520 update dependencies to get deterministic image generation 3 weeks ago
invokeai d66979073b add optional config for settings modal 1 day ago
notebooks 0f4d71ed63 Merge dev into main for 2.2.0 (#1642) 6 months ago
scripts 714ad6dbb8 Fixed use of ControlNet control_weight parameter 1 week ago
static 3021c78390 [nodes] Add Edge data type 2 months ago
tests 96adb56633 fix(tests): fix missing services in tests; fix ImageField instantiation 1 week ago
.dockerignore 2d9fac23e7 fix Dockerfile 3 months ago
.editorconfig 0f4d71ed63 Merge dev into main for 2.2.0 (#1642) 6 months ago
.git-blame-ignore-revs b4bf6c12a5 add .git-blame-ignore-revs file to maintain provenance 3 months ago
.gitattributes 7d8d4bcafb Global replace [ \t]+$, add "GB" (#1751) 5 months ago
.gitignore 8d75e50435 partial port of invokeai-configure 2 weeks ago
.gitmodules 1c8ecacddf remove src directory, which is gumming up conda installs; addresses issue #77 9 months ago
.prettierrc.yaml 443fcd030f change printWidth for markdown files to 80 8 months ago
CODE_OF_CONDUCT.md 0f4d71ed63 Merge dev into main for 2.2.0 (#1642) 6 months ago
InvokeAI_Statement_of_Values.md e88e274bf2 Add @ebr to Contributors (#2095) 5 months ago
LICENSE e5ab07091d adding license using GitHub template 7 months ago
LICENSE-ModelWeights.txt 3393b8cad1 added assertion checks for out-of-bound arguments; added various copyright and license agreement files 9 months ago
README.md 3da5fb223f docs: add note on README about migration 1 month ago
Stable_Diffusion_v1_Model_Card.md 7d8d4bcafb Global replace [ \t]+$, add "GB" (#1751) 5 months ago
mkdocs.yml 5c5454e4a5 (docs) add redirects for moved pages (#2063) 5 months ago
pyproject.toml b0892d30a4 Added mediapipe install requirement. Should be able to remove once controlnet_aux package adds mediapipe to its requirements. 1 week ago
shell.nix ce1bfbc32d nix: add shell.nix file 7 months ago

README.md

![project logo](https://github.com/invoke-ai/InvokeAI/raw/main/docs/assets/invoke_ai_banner.png) # InvokeAI: A Stable Diffusion Toolkit [![discord badge]][discord link] [![latest release badge]][latest release link] [![github stars badge]][github stars link] [![github forks badge]][github forks link] [![CI checks on main badge]][CI checks on main link] [![latest commit to main badge]][latest commit to main link] [![github open issues badge]][github open issues link] [![github open prs badge]][github open prs link] [![translation status badge]][translation status link]

Note: The UI is not fully functional on main. If you need a stable UI based on main, use the pre-nodes tag while we migrate to a new backend.

InvokeAI is a leading creative engine built to empower professionals and enthusiasts alike. Generate and create stunning visual media using the latest AI-driven technologies. InvokeAI offers an industry leading Web Interface, interactive Command Line Interface, and also serves as the foundation for multiple commercial products.

Quick links: [How to Install] [Discord Server] [Documentation and Tutorials] [Code and Downloads] [Bug Reports] [Discussion, Ideas & Q&A]

Note: InvokeAI is rapidly evolving. Please use the Issues tab to report bugs and make feature requests. Be sure to use the provided templates. They will help us diagnose issues faster.

![canvas preview](https://github.com/invoke-ai/InvokeAI/raw/main/docs/assets/canvas_preview.png)

Table of Contents

  1. Quick Start
  2. Installation
  3. Hardware Requirements
  4. Features
  5. Latest Changes
  6. Troubleshooting
  7. Contributing
  8. Contributors
  9. Support
  10. Further Reading

Getting Started with InvokeAI

For full installation and upgrade instructions, please see: InvokeAI Installation Overview

Automatic Installer (suggested for 1st time users)

  1. Go to the bottom of the Latest Release Page

  2. Download the .zip file for your OS (Windows/macOS/Linux).

  3. Unzip the file.

  4. If you are on Windows, double-click on the install.bat script. On macOS, open a Terminal window, drag the file install.sh from Finder into the Terminal, and press return. On Linux, run install.sh.

  5. You'll be asked to confirm the location of the folder in which to install InvokeAI and its image generation model files. Pick a location with at least 15 GB of free memory. More if you plan on installing lots of models.

  6. Wait while the installer does its thing. After installing the software, the installer will launch a script that lets you configure InvokeAI and select a set of starting image generation models.

  7. Find the folder that InvokeAI was installed into (it is not the same as the unpacked zip file directory!) The default location of this folder (if you didn't change it in step 5) is ~/invokeai on Linux/Mac systems, and C:\Users\YourName\invokeai on Windows. This directory will contain launcher scripts named invoke.sh and invoke.bat.

  8. On Windows systems, double-click on the invoke.bat file. On macOS, open a Terminal window, drag invoke.sh from the folder into the Terminal, and press return. On Linux, run invoke.sh

  9. Press 2 to open the "browser-based UI", press enter/return, wait a minute or two for Stable Diffusion to start up, then open your browser and go to http://localhost:9090.

  10. Type banana sushi in the box on the top left and click Invoke

Command-Line Installation (for users familiar with Terminals)

You must have Python 3.9 or 3.10 installed on your machine. Earlier or later versions are not supported.

  1. Open a command-line window on your machine. The PowerShell is recommended for Windows.
  2. Create a directory to install InvokeAI into. You'll need at least 15 GB of free space:

    mkdir invokeai
    ````
    
    3. Create a virtual environment named `.venv` inside this directory and activate it:
    
    ```terminal
    cd invokeai
    python -m venv .venv --prompt InvokeAI
    
    1. Activate the virtual environment (do it every time you run InvokeAI)

    For Linux/Mac users:

    source .venv/bin/activate
    

    For Windows users:

    .venv\Scripts\activate
    
    1. Install the InvokeAI module and its dependencies. Choose the command suited for your platform & GPU.

    For Windows/Linux with an NVIDIA GPU:

    pip install "InvokeAI[xformers]" --use-pep517 --extra-index-url https://download.pytorch.org/whl/cu117
    

    For Linux with an AMD GPU:

    pip install InvokeAI --use-pep517 --extra-index-url https://download.pytorch.org/whl/rocm5.4.2
    

    For non-GPU systems:

    pip install InvokeAI --use-pep517 --extra-index-url https://download.pytorch.org/whl/cpu
    

    For Macintoshes, either Intel or M1/M2:

    pip install InvokeAI --use-pep517
    
    1. Configure InvokeAI and install a starting set of image generation models (you only need to do this once):
    invokeai-configure
    
    1. Launch the web server (do it every time you run InvokeAI):
    invokeai --web
    
    1. Point your browser to http://localhost:9090 to bring up the web interface.
    2. Type banana sushi in the box on the top left and click Invoke.

    Be sure to activate the virtual environment each time before re-launching InvokeAI, using source .venv/bin/activate or .venv\Scripts\activate.

    Detailed Installation Instructions

    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). For full installation and upgrade instructions, please see: InvokeAI Installation Overview

    Hardware Requirements

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

    System

    You will need one of the following:

    • An NVIDIA-based graphics card with 4 GB or more VRAM memory.
    • An Apple computer with an M1 chip.
    • An AMD-based graphics card with 4GB or more VRAM memory. (Linux only)

    We do not recommend the GTX 1650 or 1660 series video cards. They are unable to run in half-precision mode and do not have sufficient VRAM to render 512x512 images.

    Memory

    • At least 12 GB Main Memory RAM.

    Disk

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

    Features

    Feature documentation can be reviewed by navigating to the InvokeAI Documentation page

    Web Server & UI

    InvokeAI offers a locally hosted Web Server & React Frontend, with an industry leading user experience. The Web-based UI allows for simple and intuitive workflows, and is responsive for use on mobile devices and tablets accessing the web server.

    Unified Canvas

    The Unified Canvas is a fully integrated canvas implementation with support for all core generation capabilities, in/outpainting, brush tools, and more. This creative tool unlocks the capability for artists to create with AI as a creative collaborator, and can be used to augment AI-generated imagery, sketches, photography, renders, and more.

    Advanced Prompt Syntax

    InvokeAI's advanced prompt syntax allows for token weighting, cross-attention control, and prompt blending, allowing for fine-tuned tweaking of your invocations and exploration of the latent space.

    Command Line Interface

    For users utilizing a terminal-based environment, or who want to take advantage of CLI features, InvokeAI offers an extensive and actively supported command-line interface that provides the full suite of generation functionality available in the tool.

    Other features

    • Support for both ckpt and diffusers models
    • SD 2.0, 2.1 support
    • Noise Control & Tresholding
    • Popular Sampler Support
    • Upscaling & Face Restoration Tools
    • Embedding Manager & Support
    • Model Manager & Support

    Coming Soon

    • Node-Based Architecture & UI
    • And more...

    Latest Changes

    For our latest changes, view our Release Notes and the CHANGELOG.

    Troubleshooting

    Please check out our Q&A to get solutions for common installation problems and other issues.

    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.

    To join, just raise your hand on the InvokeAI Discord server (#dev-chat) or the GitHub discussion board.

    If you'd like to help with translation, please see our translation guide.

    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. You can make your pull request against the "main" branch.

    We hope you enjoy using our software as much as we enjoy creating it, and we hope that some of those of you who are reading this will elect to become part of our community.

    Welcome to InvokeAI!

    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.

    Thanks to Weblate for generously providing translation services to this project.

    Support

    For support, please use this repository's GitHub Issues tracking service, or join the Discord.

    Original portions of the software are Copyright (c) 2023 by respective contributors.