InvokeAI Version 3.0.1
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.
InvokeAI version 3.0.1 adds support for rendering with Stable Diffusion XL Version 1.0 directly in the Text2Image and Image2Image panels, as well as many internal changes.
- What's New
- Installation and Upgrading
- Installation Troubleshooting
- Getting Started with SDXL
- Known Bugs
- Getting Help
- Contributing
- Detailed Change Log
To learn more about InvokeAI, please see our Documentation Pages.
What's New in v3.0.1
- Stable Diffusion XL support in the Text2Image and Image2Image (but not the Unified Canvas).
- Can install and run both diffusers-style and .safetensors-style SDXL models.
- Download Stable Diffusion XL 1.0 (base and refiner) using the model installer or the Web UI-based Model Manager
- Invisible watermarking, which is recommended for use with Stable Diffusion XL, is now available as an option in the Web UI settings dialogue.
- The NSFW detector, which was missing in 3.0.0, is again available. It can be activated as an option in the settings dialogue.
- During initial installation, a set of recommended ControlNet, LoRA and Textual Inversion embedding files will now be downloaded and installed by default, along with several "starter" main models.
- User interface cleanup to reduce visual clutter and increase usability.
Recent Changes
Since RC3, the following has changed:
- Fixed crash on Macintosh M1 machines when rendering SDXL images
- Fixed black images when generating on Macintoshes using the Unipc scheduler (falls back to CPU; slow)
Since RC2, the following has changed:
- Added compatibility with Python 3.11
- Updated diffusers to 0.19.0
- Cleaned up console logging - can now change logging level as described in the docs
- Added download of an updated SDXL VAE "sdxl-vae-fix" that may correct certain image artifacts in SDXL-1.0 models
- Prevent web crashes during certain resize operations
Developer changes:
- Reformatted the whole code base with the "black" tool for a consistent coding style
- Add pre-commit hooks to reformat committed code on the fly
Installation / Upgrading
Installing using the InvokeAI zip file installer
To install 3.0.1 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 an earlier version of InvokeAI installed, we strongly 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.
Upgrading in place
All users can upgrade from 3.0.0 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.0 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.0.1.zip" --use-pep517 --upgrade
invokeai-configure --root .
This will produce a working 3.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".
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.
Migrating models and settings from a 2.3 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 --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.0.1
invokeai-configure --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
(note that these are preliminary IDs - these notes are being written before the SDXL release)
- 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
max_cache_size: 12.0
max_vram_cache_size: 0.0
Users with 12 GB or more VRAM can reduce the time waiting for the image to start generating by setting max_vram_cache_size
to 6 GB or higher.
Known Bugs in 3.0
This is a list of known bugs in 3.0.1 as well as features that are planned for inclusion in later releases:
- Variant generation was not fully functional and did not make it into the release. It will be added in the next point release.
- Perlin noise and symmetrical tiling were not widely used and have been removed from the feature set.
- Face restoration is no longer needed due to the improvent in recent SD 1.x, 2.x and XL models and has been removed from the feature set.
- 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 several community-contributed high-res optimization pipelines in the Community Nodes Discord channel at https://discord.com/channels/1020123559063990373/1130291608097661000 for use with the experimental Node Editor.
- There is no easy way to import a directory of version 2.3 generated images into the 3.0 gallery while preserving metadata. We hope to provide an import script in the not so distant future.
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.
What's Changed
- fix: mps attention fix for sd2 by @psychedelicious in #3874
- Warn, do not crash, when duplicate models encountered by @lstein in #3877
- Update communityNodes.md by @ymgenesis in #3876
- Update communityNodes.md by @JPPhoto in #3873
- ui: pay back tech debt by @psychedelicious in #3896
- Fix 'Del' hotkey to delete current image by @zopieux in #3904
- fix: Fix app crashing when you upload an incorrect JSON to node editor by @blessedcoolant in #3911
- feat: increase seed from int32 to uint32 by @psychedelicious in #3933
- fix: Generate random seed using the generator instead of RandomState by @blessedcoolant in #3940
- Add missing import by @zopieux in #3917
- Fix incorrect use of a singleton list by @zopieux in #3914
- feat(nodes,ui): fix soft locks on session/invocation retrieval by @psychedelicious in #3910
- feat(ui): display canvas generation mode in status text by @psychedelicious in #3915
- docs generation: fix typo and remove trailing white space by @joshistoast in #3972
- add option to disable model syncing in UI by @maryhipp in #3992
- docs/features/NODES.md - Fix image links by @ymgenesis in #3969
- Update stale issues action by @Millu in #3960
- feat: Add SDXL To Linear UI by @blessedcoolant in #3973
- [Nodes/Temp fix] for is intermediate switch for l2i by @mickr777 in #3997
- 3.0.1 - Pre-Release UI Fixes by @blessedcoolant in #4001
- Add support for controlnet & sdxl checkpoint conversion by @lstein in #3905
- feat: ✨ consolidated app nav to settings & dropdown by @joshistoast in #4000
- NSFW checker and watermark nodes by @lstein in #3923
- Download all model types. by @camenduru in #3944
- enable hide localization toggle by @maryhipp in #4004
- feat: SDXL - Concat Prompt and Style for Style Prompt by @blessedcoolant in #4005
- Bugfix/checkpoint conversion by @lstein in #4010
- fix: Metadata Not Being Saved by @blessedcoolant in #4009
- Documentation updates for SDXL license terms, invisible watermark by @lstein in #4012
- Rework configure/install TUI to require less space by @lstein in #3989
- Configure script should not overwrite models.yaml if it is well formed by @lstein in #4019
- install SDXL "fixed" VAE by @lstein in #4020
- Restore ability to convert SDXL checkpoints to diffusers by @lstein in #4021
- PR for 3.0.1 release by @lstein in #3998
- Dev/black by @lillekemiker in #3840
- prevent resize error by @maryhipp in #4031
- Support Python 3.11 by @lstein in #3966
- feat: Upgrade Diffusers to 0.19.0 by @blessedcoolant in #4011
- Unify uvicorn and backend logging by @lstein in #4034
- Add LoRAs to the model manager by @zopieux in #3902
- feat: Unify Promp Area Styling by @blessedcoolant in #4033
- Update troubleshooting guide with ~ydantic and SDXL unet issue advice by @lstein in #4054
- fix: Concat Link Styling by @blessedcoolant in #4048
- bugfix: Float64 error for mps devices on set_timesteps by @ZachNagengast in #4040
- Release 3.0.1 release candidate 3 by @lstein in #4025
New Contributors
- @zopieux made their first contribution in #3904
- @joshistoast made their first contribution in #3972
- @camenduru made their first contribution in #3944
- @ZachNagengast made their first contribution in #4040
Full Changelog: v3.0.0...v3.0.1
Source code and previous installer files
The files below include the InvokeAI installer zip file, the full source code, and previous release candidates for 3.0.1