InvokeAI 3.1.0
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 and also serves as the foundation for multiple commercial products.
- What's New
- Installation and Upgrading
- Getting Started with SDXL
- Known Issues
- Getting Help
- Contributing
- Detailed Change Log
To learn more about InvokeAI, please see our Documentation, and check out the 3.1 Release Landing Page for the Community Edition!
Download the installer: InvokeAI-installer-v3.1.0.zip
What's New in v3.1.0
Workflows
InvokeAI 3.1.0 introduces a new powerful tool to aide the image generation process in the Workflow Builder. Workflows combine the power of nodes-based software with the ease of use of a GUI to deliver the best of both worlds.
The Node Editor allows you to build the custom image generation workflows you need, as well as enables you to create and use custom nodes, making InvokeAI a fully extensible platform.
To get started with nodes in InvokeAI, take a look at our example workflows, or some of the custom Community Nodes.
A zip file of example workflows can be found at the bottom of this page under Assets.
Other New Features
- Expanded SDXL support across all areas of InvokeAI.
- Enhanced In-painting & Out-painting capabilities.
- Improved Control Asset Usage, including from the Unified Canvas.
- Newly added nodes for better functionality.
- Seamless Tiling is back, with SDXL support!
- Improved In-inpainting & Out-painting
- Generation statistics can be viewed from the command line after generation
- Hot-reloading is now available for python files in the application
- LoRAs are sorted alphabetically
- Symbolic links to directories in the autoimport folder are now supported
- UI/UX Improvements
- Interactively configure image generation options, the attention system, and the VRAM cache
- ...and so much more! You can view the full change log here
Installation / Upgrading
Installing using the InvokeAI zip file installer
To install v3.1.0 please download the zip file at the bottom of the release notes (under "Assets"), unpack it, and then double-click to launch the script install.sh
(Macintosh, Linux) or install.bat
(Windows). Alternatively, you can open a command-line window and execute the installation script directly.
If you have InvokeAI 2.3.5 or older installed, we recommend that you install into a new directory, such as invokeai-3
instead of the previously-used invokeai
directory. We provide a script that will let you migrate your old models and settings into the new directory, described below.
In the event of an aborted install that has left the invokeai
directory unusable, you may be able to recover it by asking the installer to install on top of the existing directory. This is a non-destructive operation that will not affect existing models or images.
Upgrading in place
All users can upgrade from 3.0.2 using the launcher's "upgrade" facility. If you are on a Linux or Macintosh, you may also upgrade a 2.3.2 or higher version of InvokeAI to 3.1 using this recipe, but upgrading from 2.3 will not work on Windows due to a 2.3.5 bug (see workaround below):
- Enter the root directory you wish to upgrade
- Launch
invoke.sh
orinvoke.bat
- Select the
upgrade
menu option [9] - Select "Manually enter the tag name for the version you wish to update to" option [3]
- Select option [1] to upgrade to the latest version.
- When the upgrade is complete, the main menu will reappear. Choose "rerun the configure script to fix a broken install" option [7]
Windows users can instead follow this recipe:
- Enter the 2.3 root directory you wish to upgrade
- Launch
invoke.sh
orinvoke.bat
- Select the "Developer's console" option [8]
- Type the following commands:
pip install "invokeai @ https://github.com/invoke-ai/InvokeAI/archive/refs/tags/v3.1.0.zip" --use-pep517 --upgrade
invokeai-configure --root .
This will produce a working 3.1.0 directory. You may now launch the WebUI in the usual way, by selecting option [1] from the launcher script
After you have confirmed everything is working, you may remove the following backup directories and files:
- invokeai.init.orig
- models.orig
- configs/models.yaml.orig
- embeddings
- loras
To get back to a working 2.3 directory, rename all the '*.orig" files and directories to their original names (without the .orig), run the update script again, and select [1] "Update to the latest official release".
Note:
- If you had issues with inpainting on a previous InvokeAI 3.0 version, delete your
models/.cache
folder before proceeding.
What to do if problems occur during the install
Due to the large number of Python libraries that InvokeAI requires, as well as the large size of the newer SDXL models, you may experience glitches during the install process. This particularly affects Windows users. Please see the Installation Troubleshooting Guide for solutions.
In the event that an update makes your environment unusable, you may use the zip installer to reinstall on top of your existing root directory. Models and generated images already in the directory will not be affected.
Migrating images from a 2.3 InvokeAI root directory to a 3.0 directory
We provide a script, invokeai-import-images
, which will copy images from any previous version of InvokeAI to a new 3.0 directory. To run it, execute the launcher and select option [8] "Developer's console". This will take you to a new command line interface. On the command line, type:
invokeai-import-images
This will prompt you to select the destination and source directories, and allow you to select which image gallery board to import into.
Migrating models and settings from an old InvokeAI root directory to a 3.0 directory
We provide a script, invokeai-migrate3
, which will copy your models and settings from a 2.3-format root directory to a new 3.0 directory. To run it, execute the launcher and select option [8] "Developer's console". This will take you to a new command line interface. On the command line, type:
invokeai-migrate3 --from <path to 2.3 directory> --to <path to 3.0 directory>
Provide the old and new directory names with the --from
and --to
arguments respectively. This will migrate your models as well as the settings inside invokeai.init
. You may provide the same --from
and --to
directories in order ot upgrade a 2.3 root directory in place. (The original models and configuration files will be backed up.)
Upgrading using pip
Developers and power users can upgrade to the current version by activating the InvokeAI environment and then using:
pip install --use-pep517 --upgrade InvokeAI
invokeai-configure --yes --skip-sd-weights
You may specify a particular version by adding the version number to the command, as in:
pip install --use-pep517 --upgrade InvokeAI==3.1.0
invokeai-configure --yes --skip-sd-weights
Important: After doing the pip install
, it is necessary to invokeai-configure
in order to download new core models needed to load and convert Stable Diffusion XL .safetensors files. The web server will refuse to start if you do not do so.
Getting Started with SDXL
Stable Diffusion XL (SDXL) is the latest generation of StabilityAI's image generation models, capable of producing high quality 1024x1024 photorealistic images as well as many other visual styles. SDXL comes with two models, a "base" model that generates the initial image, and a "refiner" model that takes the initial image and improves on it in an img2img manner. In many cases, just the base model will give satisfactory results.
To download the base and refiner SDXL models, you have several options:
- Select option [5] from the
invoke.bat
launcher script, and select the base model, and optionally the refiner, from the checkbox list of "starter" models. - Use the Web's Model Manager to select "Import Models" and when prompted provide the HuggingFace repo_ids for the two models:
stabilityai/stable-diffusion-xl-base-1.0
stabilityai/stable-diffusion-xl-refiner-1.0
- Download the models manually and cut and paste their paths into the Location field in "Import Models"
Also be aware that SDXL requires at 6-8 GB of VRAM in order to render 1024x1024 images and a minimum of 16 GB of RAM. For best performance, we recommend the following settings in invokeai.yaml
:
precision: float16
ram: 12.0
vram: 0.5
Known Issues in 3.1
This is a list of known issues in 3.1.0 as well as features that are planned for inclusion in later releases:
- The
max_vram_cache
andram_cache
settings ininvokeai.yaml
have been deprecated and renamed tovram
andram
. To adjust cache size, we recommend using the configure script (option [6] in the launcher) to adjust them. - Variation generation was not fully functional and did not make it into the release.
- High-res optimization has been removed from the basic user interface as we experiment with better ways to achieve good results with nodes. However, you will find a high-res optimization workflows attached and in the Community Nodes Discord channel at https://discord.com/channels/1020123559063990373/1130291608097661000 for use with the Workflow tool.
Getting Help
For support, please use this repository's GitHub Issues tracking service, or join our Discord.
Contributing
As a community-supported project, we rely on volunteers and enthusiasts for continued innovation and polish. Everything from minor documentation fixes to major feature additions are welcome. To get started as a contributor, please see How to Contribute.
New Contributors
- @greatwolf made their first contribution in #4259
- @mitchallain made their first contribution in #4260
- @Ar7ific1al made their first contribution in #4359
- @helix4u made their first contribution in #4366
Thank you to all of the new and existing contributors to InvokeAI. We appreciate your efforts and contributions!
Detailed Change Log since 3.0.2
- Fixed import issue in invokeai/frontend/install/model_install.py by @greatwolf in #4259
- Update post processing docs to remove face restore by @Millu in #4261
- Refactor generation backend by @StAlKeR7779 in #4201
- Use double quotes in docker entrypoint to prevent word splitting by @mitchallain in #4260
- fix: Change refinerStart default to 0.8 by @blessedcoolant in #4274
- chore: remove old web server code and python deps by @psychedelicious in #4227
- Prevent merge from crashing with a WindowsPath serialization error by @lstein in #4271
- Autodetect SDXL ControlNet models by @lstein in #4281
- ui: node editor 1.0 by @psychedelicious in #4114
- Star images by @maryhipp in #4246
- node editor bug fixes by @psychedelicious in #4296
- Fix several broken links in the installation index by @lstein in #4300
- Report RAM usage and RAM cache statistics after each generation by @lstein in #4287
- Fix for Image Deletion issue by @mickr777 in #4294
- (feat): Add Seam Painting to Canvas (1.x, 2.x & SDXL w/ Refiner) by @blessedcoolant in #4292
- Update 'monkeypatched' controlnet class by @StAlKeR7779 in #4269
- allow symbolic links to be followed during autoimport by @lstein in #4268
- feat(ui): improve error toast messages by @psychedelicious in #4312
- Feature/flake8 by @lillekemiker in #4237
- dep(diffusers): upgrade diffusers to 0.20 by @keturn in #4311
- Report correctly to compel if we want get pooled in future by @StAlKeR7779 in #4299
- Add
BlendLatentsInvocation
by @damian0815 in #4336 - stats: handle exceptions by @psychedelicious in #4320
- ui: node editor misc 2 by @psychedelicious in #4306
- Refactor config class and reorganize image generation options by @lstein in #4309
- ui: nodes phase 4 by @psychedelicious in #4339
- fix: Outpainting Fixes by @blessedcoolant in #4347
- optional created_by by @maryhipp in #4354
- 3.1 Documentation Updates by @Millu in #4318
- fix crash that occurs when no invokeai.yaml is present by @lstein in #4357
- Add Retroize Nodes to Community Nodes by @Ar7ific1al in #4359
- Add GPT2RandomPromptMaker to communityNodes.md by @mickr777 in #4361
- feat(dev_reload): use jurigged to hot reload changes to Python source by @keturn in #4313
- Update communityNodes.md - Load Video Frame by @helix4u in #4366
- Update communityNodes.md by @sammyf in #4362
- Update CODEOWNERS by @hipsterusername in #4363
- fix: Inpaint Fixes by @StAlKeR7779 in #4301
- enable preselected image actions by @maryhipp in #4355
- Seamless Implementation by @hipsterusername in #4370
- Seamless Patch from Stalker by @hipsterusername in #4372
- Add Next/Prev Buttons CurrentImageNode.tsx by @mickr777 in #4352
- feat: Send Canvas Image & Mask To ControlNet by @blessedcoolant in #4374
- enable .and() syntax and long prompts by @damian0815 in #4112
- fix: Controlnet Prepreocessed Image Save Icon Missing by @blessedcoolant in #4375
- Hotfix to make second order schedulers work with mask by @StAlKeR7779 in #4378
- [3.1] UI Fixes by @blessedcoolant in #4376
- nodes phase 5: workflow saving and loading by @psychedelicious in #4353
Full Changelog: v3.0.2post1...v3.1.0rc1