All versions since InvokeAI Version 2.3.5.post1
InvokeAI Version 2.3.5.post1
We are pleased to announce a minor update to InvokeAI with the release of version 2.3.5.post1.
- What’s New
- Installation and Upgrading
- Known Bugs
- Getting Help
- Development Roadmap
- Detailed Change Log
- Acknowledgements
What’s New in 2.3.5.post1
The major enhancement in this version is that NVIDIA users no longer need to decide between speed and reproducibility. Previously, if you activated the Xformers library, you would see improvements in speed and memory usage, but multiple images generated with the same seed and other parameters would be slightly different from each other. This is no longer the case. Relative to 2.3.5 you will see improved performance when running without Xformers, and even better performance when Xformers is activated. In both cases, images generated with the same settings will be identical.
Here are the new library versions:
| Library | Version |
|---|---|
| Torch | 2.0.0 |
| Diffusers | 0.16.1 |
| Xformers | 0.0.19 |
| Compel | 1.1.5 |
Other Improvements
When running the WebUI, we have reduced the number of times that InvokeAI reaches out to HuggingFace to fetch the list of embeddable Textual Inversion models. We have also caught and fixed a problem with the updater not correctly detecting when another instance of the updater is running (thanks to @pedantic79 for this).
Installation / Upgrading
To install or upgrade to InvokeAI 2.3.5.post1 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.
InvokeAI-installer-v2.3.5.post1.zip
If you are using the Xformers library, please do not use the built-in updater to update, as it will not update xformers properly. Instead, either download the installer and ask it to overwrite the existing invokeai directory (your previously-installed models and settings will not be affected), or use the following recipe to perform a command-line install:
- Start the launcher script and select option # 8 - Developer’s console.
- Give the following command:
pip install invokeai[xformers] --use-pep517 --upgradeIf you do not use Xformers, the built-in update option (# 9) will work, as will the above command without the “[xformers]” part.
Developers and power users can upgrade to the current version by activating the InvokeAI environment and then using pip install --use-pep517 --upgrade InvokeAI . You may specify a particular version by adding the version number to the command, as in InvokeAI==2.3.5.post1. To upgrade to an xformers version if you are not currently using xformers, use pip install --use-pep517 --upgrade InvokeAI[xformers]. You can see which versions are available by going to The PyPI InvokeAI Project Page
Known Bugs in 2.3.5.post1
These are known bugs in the release.
- Windows Defender will sometimes raise Trojan or backdoor alerts for the
codeformer.pthface restoration model, as well as theCIDAS/clipsegandrunwayml/stable-diffusion-v1.5models. These are false positives and can be safely ignored. InvokeAI performs a malware scan on all models as they are loaded. For additional security, you should use safetensors models whenever they are available.
Getting Help
Please see the InvokeAI Issues Board or the InvokeAI Discord for assistance from the development team.
Development Roadmap
This is very likely to be the last release on the v2.3 source code branch. All new features are being added to the main branch. At the current time (mid-May, 2023), the main branch is only partially functional due to a complex transition to an architecture in which all operations are implemented via flexible and extensible pipelines of “nodes”.
If you are looking for a stable version of InvokeAI, either use this release, install from the v2.3 source code branch, or use the pre-nodes tag from the main branch. Developers seeking to contribute to InvokeAI should use the head of the main branch. Please be sure to check out the dev-chat channel of the InvokeAI Discord, and the architecture documentation located at Contributing to come up to speed.
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v2.3.4.post1…v2.3.5-rc1
What’s Changed
- Update dependencies to get deterministic image generation behavior (2.3 branch) by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3353
- [Bugfix] Update check failing because process disappears by @pedantic79 in https://github.com/invoke-ai/InvokeAI/pull/3334
- Turn the HuggingFaceConceptsLib into a singleton to prevent redundant connections by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3337
New Contributors
- @pedantic79 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3334
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v2.3.5…v2.3.5.post1
InvokeAI 2.3.5.post2
We are pleased to announce a minor update to InvokeAI with the release of version 2.3.5.post2.
- What’s New
- Installation and Upgrading
- Known Bugs
- Getting Help
- Development Roadmap
- Detailed Change Log
- Acknowledgements
What’s New in 2.3.5.post2
This is a bugfix release. In previous versions, the built-in updating script did not update the Xformers library when the torch library was upgraded, leaving people with a version that ran on CPU only. Install this version to fix the issue so that it doesn’t happen when updating to future versions of InvokeAI 3.0.0.
As a bonus, this version allows you to apply a checkpoint VAE, such as vae-ft-mse-840000-ema-pruned.ckpt to a diffusers model, without worrying about finding the diffusers version of the VAE. From within the web Model Manager, choose the diffusers model you wish to change, press the edit button, and enter the Location of the VAE file of your choice. The field will now accept either a .ckpt file, or a diffusers directory.
Installation / Upgrading
To install 2.3.5.post2 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.
InvokeAI-installer-v2.3.5.post2.zip
If you are using the Xformers library, and running v2.3.5.post1 or earlier, please do not use the built-in updater to update, as it will not update xformers properly. Instead, either download the installer and ask it to overwrite the existing invokeai directory (your previously-installed models and settings will not be affected), or use the following recipe to perform a command-line install:
- Start the launcher script and select option # 8 - Developer’s console.
- Give the following command:
pip install invokeai[xformers] --use-pep517 --upgradeIf you do not use Xformers, the built-in update option (# 9) will work, as will the above command without the “[xformers]” part. From v2.3.5.post2 onward, the updater script will work properly with Xformers installed.
Developers and power users can upgrade to the current version by activating the InvokeAI environment and then using:
pip install --use-pep517 --upgrade InvokeAIYou may specify a particular version by adding the version number to the command, as in:
pip install --use-pep517 --upgrade InvokeAI==2.3.5.post2To upgrade to an xformers version if you are not currently using xformers, use:
pip install --use-pep517 --upgrade InvokeAI[xformers]You can see which versions are available by going to The PyPI InvokeAI Project Page
Known Bugs in 2.3.5.post2
These are known bugs in the release.
- Windows Defender will sometimes raise Trojan or backdoor alerts for the
codeformer.pthface restoration model, as well as theCIDAS/clipsegandrunwayml/stable-diffusion-v1.5models. These are false positives and can be safely ignored. InvokeAI performs a malware scan on all models as they are loaded. For additional security, you should use safetensors models whenever they are available.
Getting Help
Please see the InvokeAI Issues Board or the InvokeAI Discord for assistance from the development team.
Development Roadmap
This is very likely to be the last release on the v2.3 source code branch. All new features are being added to the main branch. At the current time (mid-May, 2023), the main branch is only partially functional due to a complex transition to an architecture in which all operations are implemented via flexible and extensible pipelines of “nodes”.
If you are looking for a stable version of InvokeAI, either use this release, install from the v2.3 source code branch, or use the pre-nodes tag from the main branch. Developers seeking to contribute to InvokeAI should use the head of the main branch. Please be sure to check out the dev-chat channel of the InvokeAI Discord, and the architecture documentation located at Contributing to come up to speed.
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v2.3.5…v2.3.5.post2
What’s Changed
- autoconvert legacy VAEs by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3235
- 2.3.5 fixes to automatic updating and vae conversions by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3444
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v2.3.5.post1…v2.3.5.post2
InvokeAI 3.0.0
InvokeAI Version 3.0.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, interactive Command Line Interface, and also serves as the foundation for multiple commercial products.
InvokeAI version 3.0.0 represents a major advance in functionality and ease compared with the last official release, 2.3.5.
- What’s New
- Installation and Upgrading
- Getting Started with SDXL
- Known Bugs
- Getting Help
- Contributing
- Detailed Change Log
Please use the 3.0.0 release discussion thread, for comments on this version, including feature requests, enhancement suggestions and other non-critical issues. Report bugs to InvokeAI Issues. For interactive support with the development team, contributors and user community, you are invited join the InvokeAI Discord Server.
To learn more about InvokeAI, please see our Documentation Pages.
What’s New in v3.0.0
Quite a lot has changed, both internally and externally.
Web User Interface:
- A ControlNet interface that gives you fine control over such things as the posture of figures in generated images by providing an image that illustrates the end result you wish to achieve.
- A Dynamic Prompts interface that lets you generate combinations of prompt elements.
- Preliminary support for Stable Diffusion XL the latest iteration of Stability AI’s image generation models.
- A redesigned user interface which makes it easier to access frequently-used elements, such as the random seed generator.
- The ability to create multiple image galleries, allowing you to organize your generated images topically or chronologically.
- An experimental Nodes Editor that lets you design and execute complex image generation operations using a point-and-click interface. To activate this, please use the settings icon at the upper right of the Web UI.
- Macintosh users can now load models at half-precision (float16) in order to reduce the amount of RAM.
- Advanced users can choose earlier CLIP layers during generation to produce a larger variety of images.
- Long prompt support (>77 tokens).
- Memory and speed improvements.
The WebUI can now be launched from the command line using either invokeai-web (preferred new way) or invokeai --web (deprecated old way).
Command Line Tool
The previous command line tool has been removed and replaced with a new developer-oriented tool invokeai-node-cli that allows you to experiment with InvokeAI nodes.
Installer
The console-based model installer, invokeai-model-install has been redesigned and now provides tabs for installing checkpoint models, diffusers models, ControlNet models, LoRAs, and Textual Inversion embeddings. You can install models stored locally on disk, or install them using their web URLs or Repo_IDs.
Internal
Internally the code base has been completely rewritten to be much easier to maintain and extend. Importantly, all image generation options are now represented as “nodes”, which are small pieces of code that transform inputs into outputs and can be connected together into a graph of operations. Generation and image manipulation operations can now be easily extended by writing a new InvokeAI nodes.
Installation / Upgrading
Installing using the InvokeAI zip file installer
To install 3.0.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 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 the 3.0 beta releases 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 2.3 root directory you wish to upgrade
- Launch
invoke.shorinvoke.bat - Select the
upgrademenu 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.shorinvoke.bat - Select the “Developer’s console” option [8]
- Type the following command:
pip install "invokeai @ https://github.com/invoke-ai/InvokeAI/archive/refs/tags/v3.0.0.zip" --use-pep517 --upgradeThis 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”.
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
Once 3.0.0 is released, developers and power users can upgrade to the current version by activating the InvokeAI environment and then using:
pip install --use-pep517 --upgrade InvokeAIYou may specify a particular version by adding the version number to the command, as in:
pip install --use-pep517 --upgrade InvokeAI==3.0.0To upgrade to an xformers version if you are not currently using xformers, use:
pip install --use-pep517 --upgrade InvokeAI[xformers]You can see which versions are available by going to The PyPI InvokeAI Project Page
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. As of the current time (July 2023) SDXL had not been officially released, but a pre-release 0.9 version is widely available. InvokeAI provides support for SDXL image generation via its Nodes Editor, a user interface that allows you to create and customize complex image generation pipelines using a drag-and-drop interface. Currently SDXL generation is not directly supported in the text2image, image2image, and canvas panels, but we expect to add this feature as soon as SDXL 1.0 is officially released.
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. For best results, the initial image is handed off from the base to the refiner before all the denoising steps are complete. It is not clear whether SDXL 1.0, when it is released, will require the refiner.
To experiment with SDXL, you’ll need the “base” and “refiner” models. Currently a beta version of SDXL, version 0.9, is available from HuggingFace for research purposes. To obtain access, you will need to register with HF at https://huggingface.co/join, obtain an access token at https://huggingface.co/settings/tokens, and add the access token to your environment. To do this, run the InvokeAI launcher script, activate the InvokeAI virtual environment with option [8], and type the command huggingface-cli login. Paste in your access token from HuggingFace and hit return (the token will not be echoed to the screen). Alternatively, select launcher option [6] “Change InvokeAI startup options” and paste the HF token into the indicated field.
Now navigate to https://huggingface.co/stabilityai/stable-diffusion-xl-base-0.9 and fill out the access request form for research use. You will be granted instant access to download. Next launch the InvokeAI console-based model installer by selecting launcher option [5] or by activating the virtual environment and giving the command invokeai-model-install. In the STARTER MODELS section, select the checkboxes for stable-diffusion-xl-base-0-9 and stable-diffusion-xl-refiner-0-9. Press Apply Changes to install the models and keep the installer running, or Apply Changes and Exit to install the models and exit back to the launcher menu.
Alternatively you can install these models from the Web UI Model Manager (cube at the bottom of the left-hand panel) and navigate to Import Models. In the field labeled Location type in the repo id of the base model, which is stabilityai/stable-diffusion-xl-base-0.9. Press Add Model and wait for the model to download and install. After receiving confirmation that the model installed, repeat with stabilityai/stable-diffusion-xl-refiner-0.9.
Note that these are large models (12 GB each) so be prepared to wait a while.
To use the installed models you will need to activate the Node Editor, an advanced feature of InvokeAI. Go to the Settings (gear) icon on the upper right of the Web interface, and activate “Enable Nodes Editor”. After reloading the page, an inverted “Y” will appear on the left-hand panel. This is the Node Editor.
Enter the Node Editor and click the Upload button to upload either the SDXL base-only or SDXL base+refiner pipelines (right click to save these .json files to disk). This will load and display a flow diagram showing the (many complex) steps in generating an SDXL image.
Ensure that the SDXL Model Loader (leftmost column, bottom) is set to load the SDXL base model on your system, and that the SDXL Refiner Model Loader (third column, top) is set to load the SDXL refiner model on your system. Find the nodes that contain the example prompt and style (“bluebird in a sakura tree” and “chinese classical painting”) and replace them with the prompt and style of your choice. Then press the Invoke button. If all goes well, an image will eventually be generated and added to the image gallery. Unlike standard rendering, intermediate images are not (yet) displayed during rendering.
Be aware that SDXL support is an experimental feature and is not 100% stable. When designing your own SDXL pipelines, be aware that there are certain settings that will have a disproportionate effect on image quality. In particular, the latents decode VAE step must be run at fp32 precision (using a slider at the bottom of the VAE node), and that images will change dramatically as the denoising threshold used by the refiner is adjusted.
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: float16max_cache_size: 12.0max_vram_cache_size: 0.0Known Bugs in 3.0
This is a list of known bugs in 3.0 as well as features that are planned for inclusion in later releases:
- On Macintoshes with MPS, Stable Diffusion 2 models will not render properly. This will be corrected in the next point release.
- 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.
- The NSFW checker (blurs explicit images) is currently disabled but will be reenabled in time for the next release.
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 Since 2.3.5
- doc(invoke_ai_web_server): put docstrings inside their functions by @keturn in https://github.com/invoke-ai/InvokeAI/pull/2816
- perf(invoke_ai_web_server): encode intermediate result previews as jpeg by @keturn in https://github.com/invoke-ai/InvokeAI/pull/2817
- Split requirements / pyproject installation in Dockerfile by @mauwii in https://github.com/invoke-ai/InvokeAI/pull/2815
- add a workflow to close stale issues by @mauwii in https://github.com/invoke-ai/InvokeAI/pull/2808
- [nodes] Add better error handling to processor and CLI by @Kyle0654 in https://github.com/invoke-ai/InvokeAI/pull/2828
- fix newlines causing negative prompt to be parsed incorrectly by @damian0815 in https://github.com/invoke-ai/InvokeAI/pull/2837
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/2850
- Final phase of source tree restructure by @lstein in https://github.com/invoke-ai/InvokeAI/pull/2833
- Fix for txt2img2img.py by @mickr777 in https://github.com/invoke-ai/InvokeAI/pull/2856
- Protect invocations against black autoformatting by @lstein in https://github.com/invoke-ai/InvokeAI/pull/2854
- fix broken scripts by @lstein in https://github.com/invoke-ai/InvokeAI/pull/2857
- deps: upgrade to diffusers 0.14, safetensors 0.3, transformers 4.26, accelerate 0.16 by @keturn in https://github.com/invoke-ai/InvokeAI/pull/2865
- remove legacy ldm code by @keturn in https://github.com/invoke-ai/InvokeAI/pull/2866
- fix Dockerfile after restructure by @mauwii in https://github.com/invoke-ai/InvokeAI/pull/2863
- [ui]: migrate all styling to chakra-ui theme by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/2814
- Migrate to new HF diffusers cache location by @lstein in https://github.com/invoke-ai/InvokeAI/pull/2867
- Bugfix/reenable ckpt conversion to ram by @lstein in https://github.com/invoke-ai/InvokeAI/pull/2868
- add .git-blame-ignore-revs file to maintain provenance by @lstein in https://github.com/invoke-ai/InvokeAI/pull/2855
- migrate to new diffusers model layout by @lstein in https://github.com/invoke-ai/InvokeAI/pull/2871
- support both epsilon and v-prediction v2 inference by @lstein in https://github.com/invoke-ai/InvokeAI/pull/2870
- feat(ui): migrate theming to chakra ui by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/2873
- add missing package by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/2878
- Fixed startup issues with the web UI. by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/2876
- [cli] Update CLI to define commands as Pydantic objects by @Kyle0654 in https://github.com/invoke-ai/InvokeAI/pull/2861
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/2882
- ui: update readme & scripts by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/2884
- build: update actions by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/2883
- Make img2img strength 1 behave the same as txt2img by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/2895
- decouple default component from react root by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/2897
- [cli] Execute commands in-order with nodes by @Kyle0654 in https://github.com/invoke-ai/InvokeAI/pull/2901
- add back pytorch-lightning dependency by @lstein in https://github.com/invoke-ai/InvokeAI/pull/2899
- [ui] chore(Accessibility): various additions by @ElrikUnderlake in https://github.com/invoke-ai/InvokeAI/pull/2888
- Bypass the 77 token limit by @damian0815 in https://github.com/invoke-ai/InvokeAI/pull/2896
- Remove label from stale issues on comment event by @ebr in https://github.com/invoke-ai/InvokeAI/pull/2903
- Revert “Remove label from stale issues on comment event” by @lstein in https://github.com/invoke-ai/InvokeAI/pull/2912
- backend: more post-ldm-removal cleanup by @keturn in https://github.com/invoke-ai/InvokeAI/pull/2911
- Make sure command also works with Oh-my-zsh by @patrickvonplaten in https://github.com/invoke-ai/InvokeAI/pull/2905
- FIX bug that caused black images when converting ckpts to diffusers by @lstein in https://github.com/invoke-ai/InvokeAI/pull/2914
- Chore/accessibility add all aria labels to translation by @ElrikUnderlake in https://github.com/invoke-ai/InvokeAI/pull/2919
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/2922
- raise operations-per-run for issue workflow to 500 by @mauwii in https://github.com/invoke-ai/InvokeAI/pull/2925
- build: exclude ui from
test-invoke-pipby @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/2892 - Remove image generation node dependencies on generate.py by @lstein in https://github.com/invoke-ai/InvokeAI/pull/2902
- [ui]: add resizable pinnable drawer component by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/2874
- [fix] Get the model again if current model is empty by @Kyle0654 in https://github.com/invoke-ai/InvokeAI/pull/2938
- [nodes-api] Fix API generation to correctly reference outputs by @Kyle0654 in https://github.com/invoke-ai/InvokeAI/pull/2939
- [nodes] Fixes calls into image to image and inpaint from nodes by @Kyle0654 in https://github.com/invoke-ai/InvokeAI/pull/2940
- Fix bug #2931 by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/2942
- chore(UI, accessibility): Icons. Header links & radio button by @ElrikUnderlake in https://github.com/invoke-ai/InvokeAI/pull/2935
- add additional build mode by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/2904
- fix —png_compression command line argument by @lstein in https://github.com/invoke-ai/InvokeAI/pull/2950
- Removed file-extension-based arbitrary code execution attack vector by @CodeZombie in https://github.com/invoke-ai/InvokeAI/pull/2946
- fix(inpaint): Seam painting being broken by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/2952
- Allow for dynamic header by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/2955
- [nodes] Add Edge data type by @Kyle0654 in https://github.com/invoke-ai/InvokeAI/pull/2958
- [deps] update compel to fix black output with weight=0; also use new downweighting algorithm by @damian0815 in https://github.com/invoke-ai/InvokeAI/pull/2961
- nodes: api fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/2959
- Fix some text and a link by @thinkyhead in https://github.com/invoke-ai/InvokeAI/pull/2910
- [WebUI] Quick Fixes by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/2974
- [nodes] Update fastapi packages to latest (except FastAPI, which has an annotation bug in the newest version) by @Kyle0654 in https://github.com/invoke-ai/InvokeAI/pull/3004
- Export more for header by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/2996
- load embeddings after a ckpt legacy model is converted to diffusers by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3013
- make step_callback work again in generate() call by @lstein in https://github.com/invoke-ai/InvokeAI/pull/2957
- [deps] upgrade compel for better .swap defaults and a bugfix by @damian0815 in https://github.com/invoke-ai/InvokeAI/pull/3014
- Tidy up Tests and Provide Documentation by @mastercaster9000 in https://github.com/invoke-ai/InvokeAI/pull/2869
- Allow loading all types of dreambooth models - Fix issue #2932 by @mrwho in https://github.com/invoke-ai/InvokeAI/pull/2933
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/3021
- build: do not run python tests on ui build by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/2987
- re-implement model scanning when loading legacy checkpoint files by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3012
- doc(readme): fix incorrect install command by @darkcl in https://github.com/invoke-ai/InvokeAI/pull/3024
- add github API token to mkdocs workflow by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3023
- Convert custom VAEs during legacy checkpoint loading by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3010
- (fix)[docs] Fixed snippet/code formatting by @felixsanz in https://github.com/invoke-ai/InvokeAI/pull/2918
- fix issue with embeddings being loaded twice by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3029
- Avoid invoke.sh infinite loop (main branch) by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3017
- feat[web]: use the predicted denoised image for previews by @keturn in https://github.com/invoke-ai/InvokeAI/pull/2915
- nodes: add cancelation, updated progress callback, typing fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3036
- fix(ui): fix viewer tooltip localisation strings by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3037
- Doc: updating ROCm version in documentation by @aeyno in https://github.com/invoke-ai/InvokeAI/pull/3041
- Downgrade FastAPI by @ebr in https://github.com/invoke-ai/InvokeAI/pull/3039
- Fix bugs in online ckpt conversion of 2.0 models by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3057
- improve importation and conversion of legacy checkpoint files by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3053
- I18n build mode by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3051
- add basic autocomplete functionality to node cli by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3035
- Add support for yet another TI embedding format (main version) by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3050
- fix(nodes): commit changes to db by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3103
- [deps] bump compel version to fix crash on invalid (auto111) syntax by @damian0815 in https://github.com/invoke-ai/InvokeAI/pull/3107
- fix(nodes): fix typo in
list_sessionshandler by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3109 - Right link on pytorch installer for linux rocm by @creachec in https://github.com/invoke-ai/InvokeAI/pull/3084
- feat(nodes): save thumbnails by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3105
- fix build-container.yml by @mauwii in https://github.com/invoke-ai/InvokeAI/pull/3117
- Model API Merge Into Main by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/3079
- [nodes] Add latent nodes, storage, and fix iteration bugs by @Kyle0654 in https://github.com/invoke-ai/InvokeAI/pull/3091
- Fix typo by @panicsteve in https://github.com/invoke-ai/InvokeAI/pull/3133
- Change where !replay looks for its infile by @teerl in https://github.com/invoke-ai/InvokeAI/pull/3129
- add a new method to model_manager that retrieves individual pipeline components by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3120
- chore: configure stale bot by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3134
- remove vestiges of non-functional autoimport code for legacy checkpoints by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3076
- Add python-multipart, which is needed by nodes by @cmsj in https://github.com/invoke-ai/InvokeAI/pull/3141
- fix(nodes): use correct torch device in NoiseInvocation by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3128
- fix typo by @c67e708d in https://github.com/invoke-ai/InvokeAI/pull/3147
- Add/Update and Delete Models by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/3131
- feat(nodes): add list_images endpoint by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3126
- feat(nodes): mark ImageField properties required, add invocation README by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3108
- Increase chunk size when computing diffusers SHAs by @AbdBarho in https://github.com/invoke-ai/InvokeAI/pull/3159
- fix(nodes): add missing type to
ImageFieldby @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3170 - fix(nodes):
sampler_name—>schedulerby @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3169 - feat(nodes): fix typo in PasteImageInvocation by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3155
- feat(nodes): add invocation schema customisation, add model selection by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3171
- Fixed a Typo. by @nicholaskoerfer in https://github.com/invoke-ai/InvokeAI/pull/3190
- [nodes] Add subgraph library, subgraph usage in CLI, and fix subgraph execution by @Kyle0654 in https://github.com/invoke-ai/InvokeAI/pull/3180
- feat(ui): Add “Hide Preview” Button to WebUI by @SammCheese in https://github.com/invoke-ai/InvokeAI/pull/3204
- Make InvocationQueueItem serializable by @ebr in https://github.com/invoke-ai/InvokeAI/pull/3187
- [bug] #3218 HuggingFace API off when —no-internet set by @TimCabbage in https://github.com/invoke-ai/InvokeAI/pull/3219
- Added CPU instruction for README by @EternalLeo in https://github.com/invoke-ai/InvokeAI/pull/3225
- Update NSFW.md by @AldeRoberge in https://github.com/invoke-ai/InvokeAI/pull/3231
- update CODEOWNERS for changed team composition by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3234
- chore: add “.version” and “.last_model” to gitignore by @SammCheese in https://github.com/invoke-ai/InvokeAI/pull/3208
- Partial migration of UI to nodes API by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3195
- [Nodes UI] Invocation Component Updates by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3247
- Responsive Mobile Layout by @SammCheese in https://github.com/invoke-ai/InvokeAI/pull/3207
- [Nodes UI] More Work by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3248
- feat(ui): add support for shouldFetchImages if UI needs to re-fetch an image URL by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3250
- feat(ui): add reload schema button by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3252
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/3259
- Event service will now sleep for 100ms between polls instead of 1ms, reducing CPU usage significantly by @cmsj in https://github.com/invoke-ai/InvokeAI/pull/3256
- update to diffusers 0.15 and fix code for name changes by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3201
- [Bugfix] fixes and code cleanup to update and installation routines by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3101
- [Bugfix] prevent cli crash by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3132
- fix(ui): fix no progress images when gallery is empty by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3268
- [nodes] add delete image & delete images endpoint by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3245
- feat(ui): support disabledFeatures, add nicer loading by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3271
- feat(ui): wip img2img ui by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3258
- fix(ui): update UI to handle uploads with alternate URLs by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3274
- docs: add note on README about migration by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3277
- feat(ui): add config slice, configuration default values by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3273
- fix(ui): add formatted neg prompt for linear nodes by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3282
- feat(ui): remove connected/disconnected toasts bc we have status for that by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3287
- fix(ui): update thumbnailReceived to match change in route params by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3286
- fix(ui): update exported types by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3283
- feat(nodes): add resize and scale latents nodes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3261
- ui: set up more straightforward packaging of UI components by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3292
- ui: session persistence by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3280
- fix(ui): fix packaging import issue by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3294
- fix(ui): restore missing chakra-cli package by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3295
- feat(ui): logging by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3299
- ui: error handling, init image, cleanup, recall params by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3301
- ui, nodes: fix img2img fit param by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3308
- nodes-api: enforce single thread for the processor by @ebr in https://github.com/invoke-ai/InvokeAI/pull/3312
- feat(ui): use windowing for gallery by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3307
- feat(nodes): allow multiples of 8 for dimensions by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3260
- fix(nodes): fix
t2igraph by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3318 - chore(ui): bump react-virtuoso by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3324
- feat(ui): do not persist gallery images by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3331
- [Enhancement] Regularize logging messages by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3176
- Fix inpaint node by @aluhrs13 in https://github.com/invoke-ai/InvokeAI/pull/3284
- Add compel node and conditioning field type by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3265
- Fix logger namespace clash in web server by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3344
- add -y to the automated install instructions by @stevemar in https://github.com/invoke-ai/InvokeAI/pull/3349
- ui: support collect nodes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3357
- Deploy documentation from v2.3 branch rather than main by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3356
- Use websocket transport first for Socket.io by @ebr in https://github.com/invoke-ai/InvokeAI/pull/3369
- if backend throws a socket connection error, let user know via toast by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3364
- surface error detail field to redux layer for 403 errors by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3362
- Update dependencies to get deterministic image generation behavior (main branch) by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3354
- fix(nodes): fix #3306 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3377
- feat(nodes): add ui build static route by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3378
- fix some missing translations by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3381
- ui: migrate canvas to nodes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3323
- filter out websocket errors by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3382
- fix(nodes): fix missing
contextarg in LatentsToLatents by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3387 - ui: miscellaneous fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3386
- fix translations again by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3395
- Add UniPC / Euler Karras / DPMPP_2 Karras / DEIS / DDPM Schedulers by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3388
- fix(model manager): fix string formatting error on model checksum timer by @keturn in https://github.com/invoke-ai/InvokeAI/pull/3397
- docs(ui): update ui readme by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3396
- feat(ui): make core parameters layout consistent by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3394
- fix(nodes): remove Optionals on ImageOutputs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3392
- feat(nodes): add w/h to latents outputs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3389
- feat(nodes): add RandomIntInvocation by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3390
- feat(ui): expand config options by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3393
- ui: misc fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3398
- Feat/ui/improve-language by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3399
- fix(nodes): temporarily disable librarygraphs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3372
- Make InvocationProcessor more robust against exceptions by @ebr in https://github.com/invoke-ai/InvokeAI/pull/3376
- rehydrate selectedImage URL when results and uploads are fetched by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3403
- Add Heun Karras Scheduler by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3402
- ui: commercial fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3409
- Logging Improvements by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3401
- fix(ui): fix syntax error in the logo component flexbox by @ebr in https://github.com/invoke-ai/InvokeAI/pull/3410
- make conditioning.py work with compel 1.1.5 by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3383
- ui: restore canvas and upload functionality by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3414
- ui: cleanup by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3418
- feat(nodes): add low and high to RandomIntInvocation by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3419
- tell user to refresh page on image load error by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3425
- Add configuration system, remove legacy globals, args, generate and CLI by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3340
- add some IDs by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3432
- added optional middleware prop and new actions needed by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3437
- add crossOrigin = anonymous attribute to konva image by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3450
- fix(ui): send to canvas in currentimagebuttons not working by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3428
- build: fix test-invoke-pip.yml by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3451
- fix: attempt to fix actions by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3454
- fix(nodes): fix seam painting by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3449
- images refactor by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3443
- Update 020_INSTALL_MANUAL.md by @KernelGhost in https://github.com/invoke-ai/InvokeAI/pull/3439
- fix tests by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3458
- Use parameter fixes by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3464
- Default Scheduler Update by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/3457
- feat(nodes, ui): change how “intermediate” artefacts are handled by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3463
- (wip) Fix gallery jumpiness when image is fully generated by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3465
- ui: error and event handling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3467
- Update CODEOWNERS by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/3468
- Feat/controlnet nodes by @GreggHelt2 in https://github.com/invoke-ai/InvokeAI/pull/3405
- image service fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3473
- misc fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3479
- Fixed problem with inpainting after controlnet support added to main. by @GreggHelt2 in https://github.com/invoke-ai/InvokeAI/pull/3483
- feat(ui): more misc fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3482
- fix(ui): ensure download image opens in new tab by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3484
- fix(ui): fix width and height not working on txt2img tab by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3485
- ui: improve metadata handling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3487
- ui: fix looping gallery fetch by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3488
- add optional config for settings modal by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3490
- Make Invoke Button also the progress bar by @mickr777 in https://github.com/invoke-ai/InvokeAI/pull/3492
- Add logging configuration by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3460
- feat(nodes): add separate scripts to launch cli and web by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3495
- ui: controlnet in linear ui by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3491
- Update web README.md by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3496
- Prompting: enable long prompts and compel’s new
.and()concatenating feature by @damian0815 in https://github.com/invoke-ai/InvokeAI/pull/3497 - ui: handle drag and drop to canvas by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3499
- feat(ui): fix image fit by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3501
- Fix potential race condition in config system by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3466
- feat(ui): improve UI on smaller screens by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3505
- feat(ui): fix canvas saving by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3503
- ui: improve image url refresh, error and deletion handling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3502
- feat(ui): update image urls on connect by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3507
- feat(ui): fix bugs with image deletion by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3506
- Graph overlay was expanding off the screen to the size of the prompt line by @mickr777 in https://github.com/invoke-ai/InvokeAI/pull/3510
- ui: controlnet tweaks by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3508
- docs(nodes): update INVOCATIONS.md by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3511
- fix(ui): default controlnet autoprocess to true by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3513
- Update installer support for main by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3448
- create databases directory on startup by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3518
- feat(ui): skip resize on img2img if not needed by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3520
- feat(ui): restore reset button for init image by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3521
- feat(nodes): depth-first execution by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3517
- feat(ui): decrease delay on dnd to 150ms by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3522
- feat(ui): enhance IAICustomSelect by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3523
- ui: misc fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3525
- fix(ui): fix crash when using dropdown on certain device resolutions by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3526
- fix logger behavior so that it is initialized after command line parsed by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3509
- Feat/easy param by @GreggHelt2 in https://github.com/invoke-ai/InvokeAI/pull/3504
- fix: git stash by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3528
- Fix/UI/controlnet fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3531
- Upgrade to Diffusers 0.17.0 by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3514
- Add Mantine UI Support by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3532
- remove
image_originfrom most places by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3537 - refactor(minor): Image & Latent File Storage by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3538
- nodes: add dynamic prompt node by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3533
- Model Manager rewrite by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3335
- Model manager fixes by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3541
- Add lms and dpmpp2_s karras scheduler by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3551
- feat: Port Schedulers to Mantine by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3552
- Update index.md by @DrGunnarMallon in https://github.com/invoke-ai/InvokeAI/pull/3553
- Add dpmpp_sde and dpmpp_2m_sde schedulers(with karras) by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3554
- Fix inpaint node to new manager by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3550
- feat: Upgrade to Diffusers 0.17.1 by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3545
- fix failing pytest for config module by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3559
- image boards by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3534
- Update UI To Use New Model Manager by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3548
- fix(linux): installer script prints maximum python version usable by @skf-funzt in https://github.com/invoke-ai/InvokeAI/pull/3546
- Fix vae conversion by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3555
- ui: api cleanup by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3572
- ui: fix initial image buttons, uploader functionality by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3576
- chore(ui): bump all packages by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3579
- Add control_mode parameter to ControlNet by @GreggHelt2 in https://github.com/invoke-ai/InvokeAI/pull/3535
- fix(ui): fix controlnet image size by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3585
- feat(ui): improved node parsing by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3584
- feat(ui): add dynamic prompts to t2i tab by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3588
- feat(ui): only show canvas image fallback on loading error by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3589
- Bypass failing tests by @ebr in https://github.com/invoke-ai/InvokeAI/pull/3593
- Configure and model install TUI tweaks by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3519
- feat(ui): add type extraction helpers by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3597
- fix(nodes): use context for logger in param_easing by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3529
- feat(ui): use max prompts for combinatorial, iterations for non-combi… by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3600
- Feat/controlnet extras by @GreggHelt2 in https://github.com/invoke-ai/InvokeAI/pull/3596
- nodes: default to CPU noise by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3598
- Configuration and model installer for new model layout by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3547
- Update 060_INSTALL_PATCHMATCH.md by @sammyf in https://github.com/invoke-ai/InvokeAI/pull/3591
- Apply lora by model patching by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3583
- Set use-credentials on commercial deployment if authToken is set on c… by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/3606
- ui: fix ts perf by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3609
- Fix Typo in migrate_to_3.py by @mickr777 in https://github.com/invoke-ai/InvokeAI/pull/3610
- Fix duplicate model key addition when root directory is a relative path by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3607
- Maryhipp/delete images on board by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3604
- Add image board support to invokeai-node-cli by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3594
- ui: support dark mode by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3592
- feat(ui): tweak light mode colors, buttons pop by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3612
- fix(ui): fix canvas crash by rolling back swagger-parser by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3611
- export new ColorModeButton component by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3614
- fix incorrect VAE config file path during conversion of ckpts by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3616
- feat(ui): minimum gallery size by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3617
- feat(ui): gallery minSize tweak by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3618
- loading state for gallery and model list by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3615
- Fix Invoke Progress Bar by @mickr777 in https://github.com/invoke-ai/InvokeAI/pull/3626
- ui: batches by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3603
- feat(ui): hide batch ui pending logic implementation by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3629
- Add missing k-* legacy sampler names to init file migrate list by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3625
- Make unit tests work again by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3575
- Add runtime root path to relative vaes and other submodels by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3631
- Quash memory leak when compel invocation called by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3633
- (wip) Model Manager 3.0 UI by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3586
- ui: loras by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3638
- ui: render perf fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3642
- feat: Add Lora to Canvas by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3643
- fix: Change Lora weight bounds to -1 to 2 by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3645
- Expose max_cache_size in config by @ebr in https://github.com/invoke-ai/InvokeAI/pull/3640
- Fix model detection by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3646
- feat(ui): improve accordion ux by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3647
- fix(ui): deleting image selects first image by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3648
- fix(ui): fix dnd on nodes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3649
- Detect invalid model names when migrating 2.3->3.0 by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3623
- Fix clip path in migrate script by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3651
- fix(ui): fix prompt resize & style resizer by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3652
- Fix loading diffusers ti by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3661
- Fix ckpt scanning on conversion by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3653
- close modal when user clicks cancel by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3656
- build: remove web ui dist from gitignore by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3650
- Remove hardcoded cuda device in model manager init by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3624
- Put tokenizer and text encoder in same clip-vit-large-patch14 by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3662
- feat: Add Embedding Picker to Linear UI by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3654
- only show delete icon if big enough by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3657
- LoRA model loading fixes by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3663
- expose max_cache_size to invokeai-configure interface by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3664
- Improved loading for UI by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3667
- [Docs] ELI5 Tutorial For Invocations by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3524
- Add REACT API routes for model manager by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3639
- feat: Add Clip Skip by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3666
- feat(ui): update
openapi-fetch; fix upload issue by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3674 - fix: Adjust clip skip layer count based on model by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3675
- UI model compatibiltiy by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3672
- feat(ui): improve embed button styles by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3676
- add ability to disable lora, ti, dynamic prompts, vae selection by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3677
- prop to hide toggle for advanced settings by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3681
- Branch for 3.0alpha release installation tweaks and bug fixes by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3608
- Make the update script work on Windows by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3622
- fixes ImportError described in #3658. by @Zadagu in https://github.com/invoke-ai/InvokeAI/pull/3668
- Mac MPS FP16 fixes by @gogurtenjoyer in https://github.com/invoke-ai/InvokeAI/pull/3641
- get uploads working again by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3679
- Revert “get uploads working again” by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3686
- ui: add cpu noise by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3688
- fix(ui): fix readonly inputs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3689
- fix(ui): do not diable show progress toggle while generating by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3690
- fix(ui): fix inconsistent shift modifier capture by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3691
- gallery tweaks by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3682
- feat: Add App Version to UI by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3692
- fix(ui): fix tab translations by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3698
- fix(ui): fix selection on dropdowns by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3697
- Version of _find_root() that works in conda environment by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3696
- feat: Upgrade Diffusers to 0.18.1 by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3699
- fix: Rearrange Model Select to take full width by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3701
- add load more images to the right arrow by @mickr777 in https://github.com/invoke-ai/InvokeAI/pull/3694
- fix(ui): escape on embedding popup closes it by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3703
- feat(ui): add progress image node by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3704
- fix(api): fix for borked windows mimetypes registry by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3705
- Add Cancel Button button to nodes tab by @mickr777 in https://github.com/invoke-ai/InvokeAI/pull/3706
- Updating Docs by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/3456
- ui, db: rand fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3715
- feat: Add Aspect Ratio by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3709
- Maryhipp/disable multiselect by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3722
- disable hotkey for lightbox if lightbox is disabled by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3725
- always enable these things on txt2img tab by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3726
- Branch for invokeai 3.0-beta bugfixes by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3683
- Fix the test of the config system by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3730
- Node Editor: QoL Fixes by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3734
- installer installs torchimetrics 0.11.4 by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3733
- Less naive model detection by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3685
- disable features that are not supported yet or no longer supported by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3739
- Container build fixes + docker-compose by @ebr in https://github.com/invoke-ai/InvokeAI/pull/3587
- feat: Save and Loads Nodes From Disk by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3724
- feat: Add Aspect Ratio To Canvas Bounding Box by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3717
- output stringified error for session and invocation errors by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3741
- feat: core metadata & graph in viewer by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3728
- Add Clear nodes Button by @mickr777 in https://github.com/invoke-ai/InvokeAI/pull/3747
- fix(ui): fix inpaint invalid model error by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3750
- fix(ui): check for metadata accumulator before connecting to it by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3751
- fix(ui): fix lora name disappearing by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3753
- fix(ui): fix node parsing failing by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3754
- fix(ui): fix nodes crash when adding model loader by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3755
- Fix clear nodes with psychedelicious Requests by @mickr777 in https://github.com/invoke-ai/InvokeAI/pull/3749
- Fix Inpainting Issues by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3744
- Fix wrong conditioning used by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3595
- detect patchmatch by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3740
- fix: model_name reference in Model Manager by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3756
- ui: gallery enhancements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3752
- ui: model-related fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3761
- fix(nodes): make ResizeLatents w/h optional by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3762
- feat(api): set max-age for images by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3711
- Model Manager 3.0 UI by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3735
- Allow ImageResizeInvocation w/h to take inputs from other nodes by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/3765
- Create NODES.md by @ymgenesis in https://github.com/invoke-ai/InvokeAI/pull/3729
- Pad conditionings using zeros and encoder_attention_mask by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3772
- fix(ui): fix mouse interactions by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3764
- fix(ui): fix crash on LoRA remove / weight change by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3774
- restore scrollbar by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3767
- Model manager route enhancements by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3768
- Rewrite controlnet to new model manager by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3665
- fix: Minor UI tweak to Control Net enable button by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3783
- Nodes + Backend Owners by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/3782
- add fp16 support to controlnet models by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3785
- migrate script now initializes destination root if needed by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3784
- add documentation on the configuration system by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3787
- Setup textual inversion training with new model manager by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/3775
- Update NODES.md by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3788
- add renaming capabilities to model update API route by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3793
- Updating installation instructions to include Node.JS by @lillekemiker in https://github.com/invoke-ai/InvokeAI/pull/3795
- Add defaults for controlnet/textual inversion/realesrgan by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3773
- Fix error with long prompts when controlnet used by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3792
- Added class PromptsFromFileInvocation to prompt.py. by @skunkworxdark in https://github.com/invoke-ai/InvokeAI/pull/3781
- Allow bin extension to detect diffusers-ti provided as file by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3796
- Create pull request template for the project by @Millu in https://github.com/invoke-ai/InvokeAI/pull/3798
- ui: improve context menu by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3799
- model installer — Prevent crashes on malformed models by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3619
- Fix/long prompts by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3806
- docs: add vscode setup instructions by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3807
- Hide legend button Option 2 by @mickr777 in https://github.com/invoke-ai/InvokeAI/pull/3797
- feat: model events by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3786
- Model Manager UI 3.0 by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3778
- Update LOCAL_DEVELOPMENT.md by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3808
- fix: Model Manager scan Auto Add not detecting checkpoint correctly by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3810
- Support SDXL models by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3714
- Add Toggle for Minimap and Tooltips by @mickr777 in https://github.com/invoke-ai/InvokeAI/pull/3809
- feat(ui): hide sdxl from linear UI by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3815
- 3.0 Pre-Release Polish — Bug Fixes / Style Fixes / Misc by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3812
- Release - invokeai 3 0 beta by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3814
- fix(nodes): fix inpaint cond logic for new compel version by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3816
- VRAM Optimizations, sdxl on 8gb by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3818
- feat: String Param Node + titles and tags for all Nodes by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3819
- Rename clip1 to clip by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3822
- Avoid crash if unable to modify the model config file by @ebr in https://github.com/invoke-ai/InvokeAI/pull/3824
- Cleanup vram after models offloading by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3826
- add option to hide version on logo by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3825
- install, nodes, ui: restore ad-hoc upscaling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3800
- Release/invokeai 3 0 beta - mkdocs fix by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3821
- Missing def choose_torch_device by @mickr777 in https://github.com/invoke-ai/InvokeAI/pull/3834
- Tweaks to Image Progress Node by @mickr777 in https://github.com/invoke-ai/InvokeAI/pull/3833
- [WIP] Load text_model.embeddings.position_ids outsude state_dict by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3829
- Maryhipp/clear intermediates by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3820
- clear canvas alongside intermediates by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3837
- feat(ui): another go at gallery by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3791
- add toggle for isNodesEnabled in settings by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3839
- Changing ImageToLatentsInvocation node to default to detected precision by @lillekemiker in https://github.com/invoke-ai/InvokeAI/pull/3838
- Beta branch containing documentation enhancements, minor bug fix by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3831
- feat(api): use next available port by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3710
- fix inpaint model detection by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3843
- fix v1-finetune.yaml is not in the subpath of "" by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3848
- fix: Model List not scrolling through checkpoints by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3849
- feat: Add Setting Switch Component by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3847
- Updated documentation by @Millu in https://github.com/invoke-ai/InvokeAI/pull/3832
- ui: enhance intermediates clear, enhance board auto-add by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3851
- feat: Add Sync Models by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3850
- feat(ui): boards styling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3856
- feat: ControlNet Resize Mode by @GreggHelt2 in https://github.com/invoke-ai/InvokeAI/pull/3854
- if updating intermediate, dont add to gallery list cache by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3859
- fix(ui): fix no_board cache not updating by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3852
- Add get_log_level and set_log_level operations to the app route by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3858
- Add sdxl generation preview by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3862
New Contributors
- @ElrikUnderlake made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/2888
- @patrickvonplaten made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/2905
- @mastercaster9000 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/2869
- @mrwho made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/2933
- @darkcl made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3024
- @felixsanz made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/2918
- @aeyno made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3041
- @creachec made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3084
- @teerl made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3129
- @cmsj made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3141
- @c67e708d made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3147
- @AbdBarho made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3159
- @nicholaskoerfer made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3190
- @TimCabbage made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3219
- @EternalLeo made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3225
- @AldeRoberge made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3231
- @aluhrs13 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3284
- @stevemar made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3349
- @KernelGhost made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3439
- @GreggHelt2 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3405
- @DrGunnarMallon made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3553
- @skf-funzt made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3546
- @sammyf made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3591
- @brandonrising made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3606
- @Zadagu made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3668
- @ymgenesis made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3729
- @lillekemiker made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3795
- @skunkworxdark made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3781
- @Millu made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3798
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v2.3.5…v3.0.0rc2
InvokeAI Version 3.0.1
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
- 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.shorinvoke.bat - Select the
upgrademenu 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.shorinvoke.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 --upgradeinvokeai-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 InvokeAIinvokeai-configure --skip-sd-weightsYou may specify a particular version by adding the version number to the command, as in:
pip install --use-pep517 --upgrade InvokeAI==3.0.1invokeai-configure --skip-sd-weightsImportant: 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.batlauncher 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: float16max_cache_size: 12.0max_vram_cache_size: 0.0Users 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 https://github.com/invoke-ai/InvokeAI/pull/3874
- Warn, do not crash, when duplicate models encountered by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3877
- Update communityNodes.md by @ymgenesis in https://github.com/invoke-ai/InvokeAI/pull/3876
- Update communityNodes.md by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/3873
- ui: pay back tech debt by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3896
- Fix ‘Del’ hotkey to delete current image by @zopieux in https://github.com/invoke-ai/InvokeAI/pull/3904
- fix: Fix app crashing when you upload an incorrect JSON to node editor by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3911
- feat: increase seed from int32 to uint32 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3933
- fix: Generate random seed using the generator instead of RandomState by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3940
- Add missing import by @zopieux in https://github.com/invoke-ai/InvokeAI/pull/3917
- Fix incorrect use of a singleton list by @zopieux in https://github.com/invoke-ai/InvokeAI/pull/3914
- feat(nodes,ui): fix soft locks on session/invocation retrieval by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3910
- feat(ui): display canvas generation mode in status text by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/3915
- docs generation: fix typo and remove trailing white space by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/3972
- add option to disable model syncing in UI by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/3992
- docs/features/NODES.md - Fix image links by @ymgenesis in https://github.com/invoke-ai/InvokeAI/pull/3969
- Update stale issues action by @Millu in https://github.com/invoke-ai/InvokeAI/pull/3960
- feat: Add SDXL To Linear UI by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/3973
- [Nodes/Temp fix] for is intermediate switch for l2i by @mickr777 in https://github.com/invoke-ai/InvokeAI/pull/3997
- 3.0.1 - Pre-Release UI Fixes by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/4001
- Add support for controlnet & sdxl checkpoint conversion by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3905
- feat: :sparkles: consolidated app nav to settings & dropdown by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/4000
- NSFW checker and watermark nodes by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3923
- Download all model types. by @camenduru in https://github.com/invoke-ai/InvokeAI/pull/3944
- enable hide localization toggle by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/4004
- feat: SDXL - Concat Prompt and Style for Style Prompt by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/4005
- Bugfix/checkpoint conversion by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4010
- fix: Metadata Not Being Saved by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/4009
- Documentation updates for SDXL license terms, invisible watermark by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4012
- Rework configure/install TUI to require less space by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3989
- Configure script should not overwrite models.yaml if it is well formed by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4019
- install SDXL “fixed” VAE by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4020
- Restore ability to convert SDXL checkpoints to diffusers by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4021
- PR for 3.0.1 release by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3998
- Dev/black by @lillekemiker in https://github.com/invoke-ai/InvokeAI/pull/3840
- prevent resize error by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/4031
- Support Python 3.11 by @lstein in https://github.com/invoke-ai/InvokeAI/pull/3966
- feat: Upgrade Diffusers to 0.19.0 by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/4011
- Unify uvicorn and backend logging by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4034
- Add LoRAs to the model manager by @zopieux in https://github.com/invoke-ai/InvokeAI/pull/3902
- feat: Unify Promp Area Styling by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/4033
- Update troubleshooting guide with ~ydantic and SDXL unet issue advice by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4054
- fix: Concat Link Styling by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/4048
- bugfix: Float64 error for mps devices on set_timesteps by @ZachNagengast in https://github.com/invoke-ai/InvokeAI/pull/4040
- Release 3.0.1 release candidate 3 by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4025
New Contributors
- @zopieux made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3904
- @joshistoast made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3972
- @camenduru made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3944
- @ZachNagengast made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4040
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/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
InvokeAI 3.0.1 (hotfix 3)
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
- 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.
v3.0.1post3Hotfixes
This release containss a proposed hotfix for the Windows install OSError crashes that began appearing in 3.0.1. In addition, the following bugs have been addressed:
- Correct issue of some SD-1 safetensors models could not be loaded or converted
- The
models_dirconfiguration variable used to customize the location of the models directory is now working properly - Fixed crashes of the text-based installer when the number of installed LoRAs and other models exceeded 72
- SDXL metadata is now set and retrieved properly
- Correct post1’s crash when performing configure with
--yesflag. - Correct crashes in the CLI model installer
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 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.
InvokeAI-installer-v3.0.1post3.zip
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.shorinvoke.bat - Select the
upgrademenu 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.shorinvoke.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.1post3.zip" --use-pep517 --upgradeinvokeai-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.
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 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 InvokeAIinvokeai-configure --yes --skip-sd-weightsYou may specify a particular version by adding the version number to the command, as in:
pip install --use-pep517 --upgrade InvokeAI==3.0.1post3invokeai-configure --yes --skip-sd-weightsImportant: 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.batlauncher 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.0stabilityai/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: float16max_cache_size: 12.0max_vram_cache_size: 0.5Known Bugs in 3.0
This is a list of known bugs in 3.0.1post3 as well as features that are planned for inclusion in later releases:
- The merge script isn’t working, and crashes during startup (will be fixed soon)
- Inpainting models generated using the A1111 merge module are not loading properly (will be fixed soon)
- 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
- Feat/Nodes: Change Input to Textbox by @mickr777 in https://github.com/invoke-ai/InvokeAI/pull/3853
- fix: Prompt Node using incorrect output type by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/4058
- fix: SDXL Metadata not being retrieved by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/4057
- Fix recovery recipe by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4066
- Unpin pydantic and numpy in pyproject.toml by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4062
- Fix various bugs in ckpt to diffusers conversion script by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4065
- Installer tweaks by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4070
- fix relative model paths to be against config.models_path, not root by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4061
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v3.0.1…v3.0.1post1
InvokeAI Version 3.0.2
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 Pages.
What’s New in v3.0.2
- LoRA support for SDXL is now available
- Mutli-select actions are now supported in the Gallery
- Images are automatically sent to the board that is selected at invocation
- Images from previous versions of InvokeAI are able to imported with the
invokeai-import-imagescommand - Inpainting models imported from A1111 will now work with InvokeAI (see upgrading note)
- Model merging functionality has been fixed
- Improved Model Manager UI/UX
- InvokeAI 3.0 can be served via HTTPS
- Execution statistics are visible in the terminal after each invocation
- ONNX models are now supported for use with Text2Image
- Pydantic errors when upgrading inplace have been resolved
- Code formatting is now part of the CI/CD pipeline
- …and lots more! You can view the full change log here
Installation / Upgrading
Installing using the InvokeAI zip file installer
To install 3.0.2 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 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.1 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.2 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.shorinvoke.bat - Select the
upgrademenu 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.shorinvoke.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.2.zip" --use-pep517 --upgradeinvokeai-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”.
Note:
- If you had issues with inpainting on a previous InvokeAI 3.0 version, delete your
models/ .cachefolder 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 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 InvokeAIinvokeai-configure --yes --skip-sd-weightsYou may specify a particular version by adding the version number to the command, as in:
pip install --use-pep517 --upgrade InvokeAI==3.0.2invokeai-configure --yes --skip-sd-weightsImportant: 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.batlauncher 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.0stabilityai/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: float16max_cache_size: 12.0max_vram_cache_size: 0.5Known Issues in 3.0
This is a list of known bugs in 3.0.2rc1 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.
- 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.
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
- @zopieux made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3904
- @joshistoast made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3972
- @camenduru made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3944
- @ZachNagengast made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4040
- @sohelzerdoumi made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4116
- @KevinBrack made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4086
- @SauravMaheshkar made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4060
Thank you to all of the new contributors to InvokeAI. We appreciate your efforts and contributions!
Detailed Change Log
- Add LoRAs to the model manager by @zopieux in https://github.com/invoke-ai/InvokeAI/pull/3902
- feat: Unify Promp Area Styling by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/4033
- Update troubleshooting guide with ~ydantic and SDXL unet issue advice by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4054
- fix: Concat Link Styling by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/4048
- bugfix: Float64 error for mps devices on set_timesteps by @ZachNagengast in https://github.com/invoke-ai/InvokeAI/pull/4040
- Release 3.0.1 release candidate 3 by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4025
- Feat/Nodes: Change Input to Textbox by @mickr777 in https://github.com/invoke-ai/InvokeAI/pull/3853
- fix: Prompt Node using incorrect output type by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/4058
- fix: SDXL Metadata not being retrieved by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/4057
- Fix recovery recipe by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4066
- Unpin pydantic and numpy in pyproject.toml by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4062
- Fix various bugs in ckpt to diffusers conversion script by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4065
- Installer tweaks by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4070
- fix relative model paths to be against config.models_path, not root by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4061
- Update communityNodes.md - FaceTools by @ymgenesis in https://github.com/invoke-ai/InvokeAI/pull/4044
- 3.0.1post3 by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4082
- Restore model merge script by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4085
- Add Nix Flake for development by @zopieux in https://github.com/invoke-ai/InvokeAI/pull/4077
- Add python black check to pre-commit by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/4094
- Added a getting started guide & updated the user landing page flow by @Millu in https://github.com/invoke-ai/InvokeAI/pull/4028
- Add missing Optional on a few nullable fields by @zopieux in https://github.com/invoke-ai/InvokeAI/pull/4076
- ONNX Support by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/3562
- Chakra optimizations by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/4096
- Add onnxruntime to the main dependencies by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/4103
- fix(ui): post-onnx fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/4105
- Update lint-frontend.yml by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/4113
- fix: Model Manager Tab Issues by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/4087
- fix: flake: add opencv with CUDA, new patchmatch dependency by @zopieux in https://github.com/invoke-ai/InvokeAI/pull/4115
- Fix manual installation documentation by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4107
- fix https/wss behind reverse proxy by @sohelzerdoumi in https://github.com/invoke-ai/InvokeAI/pull/4116
- Refactor/cleanup root detection by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4102
- chore: delete nonfunctional nix flake by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/4117
- Feat/auto assign board on click by @KevinBrack in https://github.com/invoke-ai/InvokeAI/pull/4086
- (ci) only install black when running static checks by @ebr in https://github.com/invoke-ai/InvokeAI/pull/4036
- fix .swap() by reverting improperly merged @classmethod change by @damian0815 in https://github.com/invoke-ai/InvokeAI/pull/4080
- chore: move PR template to
.github/dir by @SauravMaheshkar in https://github.com/invoke-ai/InvokeAI/pull/4060 - Path checks in a workflow step for python tests by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/4122
- fix(db): retrieve metadata even when no session_id by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/4110
- project header by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/4134
- Restore ability to convert merged inpaint .safetensors files by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4084
- ui: multi-select and batched gallery image operations by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/4032
- Add execution stat reporting after each invocation by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4125
- Stop checking for unet/model.onnx when a model_index.json is detected by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/4132
- autoAddBoardId should always be defined as “none” or board_id by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/4149
- Add support for diff/full lora layers by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/4118
- [WIP] Add sdxl lora support by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/4097
- Provide ti name from model manager, not from ti itself by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/4120
- Installer should download fp16 models if user has specified ‘auto’ in config by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4129
- add
--ignore_missing_core_modelsCLI flag to bypass checking for missing core models by @damian0815 in https://github.com/invoke-ai/InvokeAI/pull/4081 - fix broken civitai example link by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4153
- devices.py - Update MPS FP16 check to account for upcoming MacOS Sonoma by @gogurtenjoyer in https://github.com/invoke-ai/InvokeAI/pull/3886
- Bump version number on main to distinguish from release by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4158
- Fix random number generator by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/4159
- Added HSL Nodes by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/3459
- backend: fix up types by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/4109
- Fix hue adjustment by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/4182
- fix(ModelManager): fix overridden VAE with relative path by @keturn in https://github.com/invoke-ai/InvokeAI/pull/4059
- Maryhipp/multiselect updates by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/4188
- feat(ui): add LoRA support to SDXL linear UI by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/4194
- api(images): allow HEAD request on image/full by @keturn in https://github.com/invoke-ai/InvokeAI/pull/4193
- Fix crash when attempting to update a model by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4192
- Refrain from writing deprecated legacy options to invokeai.yaml by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4190
- Pick correct config file for sdxl models by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4191
- Add slider for VRAM cache in configure script by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4133
- 3.0.2 Release Branch by @Millu in https://github.com/invoke-ai/InvokeAI/pull/4203
- Add techjedi’s image import script by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4171
- refactor(diffusers_pipeline): remove unused pipeline methods 🚮 by @keturn in https://github.com/invoke-ai/InvokeAI/pull/4175
- ImageLerpInvocation math bug: Add self.min, not self.max by @lillekemiker in https://github.com/invoke-ai/InvokeAI/pull/4176
- feat: add
app_versionto image metadata by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/4198 - fix(ui): fix canvas model switching by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/4221
- fix(ui): fix lora sort by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/4222
- Update dependencies and docs to cu118 by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4212
- Prevent
vae: ''from crashing model by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4209 - Probe LoRAs that do not have the text encoder by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4181
- Bugfix: Limit RAM and VRAM cache settings to permissible values by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4214
- Temporary force set vae to same precision as unet by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/4233
- Add support for LyCORIS IA3 format by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/4234
- Two changes to command-line scripts by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4235
- 3.0.2 Release by @Millu in https://github.com/invoke-ai/InvokeAI/pull/4236
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v3.0.1rc3…v3.0.2
InvokeAI v3.0.2post1
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 Pages.
What’s New in v3.0.2post1
- Support for LoRA models in diffusers format
- Warn instead of crashing when a corrupted model is detected
- Bug fix for auto-adding to a board
What’s New in v3.0.2
- LoRA support for SDXL is now available
- Mutli-select actions are now supported in the Gallery
- Images are automatically sent to the board that is selected at invocation
- Images from previous versions of InvokeAI are able to imported with the
invokeai-import-imagescommand - Inpainting models imported from A1111 will now work with InvokeAI (see upgrading note)
- Model merging functionality has been fixed
- Improved Model Manager UI/UX
- InvokeAI 3.0 can be served via HTTPS
- Execution statistics are visible in the terminal after each invocation
- ONNX models are now supported for use with Text2Image
- Pydantic errors when upgrading inplace have been resolved
- Code formatting is now part of the CI/CD pipeline
- …and lots more! You can view the full change log here
Installation / Upgrading
Installing using the InvokeAI zip file installer
To install 3.0.2post1 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 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.
InvokeAI-installer-v3.0.2post1.zip
Upgrading in place
All users can upgrade from 3.0.1 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.2 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.shorinvoke.bat - Select the
upgrademenu 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.shorinvoke.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.2.zip" --use-pep517 --upgradeinvokeai-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”.
Note:
- If you had issues with inpainting on a previous InvokeAI 3.0 version, delete your
models/ .cachefolder 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 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 InvokeAIinvokeai-configure --yes --skip-sd-weightsYou may specify a particular version by adding the version number to the command, as in:
pip install --use-pep517 --upgrade InvokeAI==3.0.2invokeai-configure --yes --skip-sd-weightsImportant: 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.batlauncher 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.0stabilityai/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: float16max_cache_size: 12.0max_vram_cache_size: 0.5Known Issues in 3.0
This is a list of known bugs in 3.0.2rc1 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.
- 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.
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
- @zopieux made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3904
- @joshistoast made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3972
- @camenduru made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/3944
- @ZachNagengast made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4040
- @sohelzerdoumi made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4116
- @KevinBrack made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4086
- @SauravMaheshkar made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4060
Thank you to all of the new contributors to InvokeAI. We appreciate your efforts and contributions!
Detailed Change Long since 3.0.2
- surface error detail by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/4231
- Fix maximum python version installation instructions by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4243
- Add support for SDXL LoRA models in diffusers format. by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/4242
- Warn instead of crashing when a corrupted model is detected during startup scan by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4244
- fix missed spot for autoAddBoardId none by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/4241
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v3.0.2…v3.0.2post1
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.shorinvoke.bat - Select the
upgrademenu 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.shorinvoke.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 --upgradeinvokeai-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/.cachefolder 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-imagesThis 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 InvokeAIinvokeai-configure --yes --skip-sd-weightsYou may specify a particular version by adding the version number to the command, as in:
pip install --use-pep517 --upgrade InvokeAI==3.1.0invokeai-configure --yes --skip-sd-weightsImportant: 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.batlauncher 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.0stabilityai/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: float16ram: 12.0vram: 0.5Known 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_cacheandram_cachesettings ininvokeai.yamlhave been deprecated and renamed tovramandram. 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 https://github.com/invoke-ai/InvokeAI/pull/4259
- @mitchallain made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4260
- @Ar7ific1al made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4359
- @helix4u made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/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 https://github.com/invoke-ai/InvokeAI/pull/4259
- Update post processing docs to remove face restore by @Millu in https://github.com/invoke-ai/InvokeAI/pull/4261
- Refactor generation backend by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/4201
- Use double quotes in docker entrypoint to prevent word splitting by @mitchallain in https://github.com/invoke-ai/InvokeAI/pull/4260
- fix: Change refinerStart default to 0.8 by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/4274
- chore: remove old web server code and python deps by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/4227
- Prevent merge from crashing with a WindowsPath serialization error by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4271
- Autodetect SDXL ControlNet models by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4281
- ui: node editor 1.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/4114
- Star images by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/4246
- node editor bug fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/4296
- Fix several broken links in the installation index by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4300
- Report RAM usage and RAM cache statistics after each generation by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4287
- Fix for Image Deletion issue by @mickr777 in https://github.com/invoke-ai/InvokeAI/pull/4294
- (feat): Add Seam Painting to Canvas (1.x, 2.x & SDXL w/ Refiner) by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/4292
- Update ‘monkeypatched’ controlnet class by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/4269
- allow symbolic links to be followed during autoimport by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4268
- feat(ui): improve error toast messages by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/4312
- Feature/flake8 by @lillekemiker in https://github.com/invoke-ai/InvokeAI/pull/4237
- dep(diffusers): upgrade diffusers to 0.20 by @keturn in https://github.com/invoke-ai/InvokeAI/pull/4311
- Report correctly to compel if we want get pooled in future by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/4299
- Add
BlendLatentsInvocationby @damian0815 in https://github.com/invoke-ai/InvokeAI/pull/4336 - stats: handle exceptions by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/4320
- ui: node editor misc 2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/4306
- Refactor config class and reorganize image generation options by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4309
- ui: nodes phase 4 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/4339
- fix: Outpainting Fixes by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/4347
- optional created_by by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/4354
- 3.1 Documentation Updates by @Millu in https://github.com/invoke-ai/InvokeAI/pull/4318
- fix crash that occurs when no invokeai.yaml is present by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4357
- Add Retroize Nodes to Community Nodes by @Ar7ific1al in https://github.com/invoke-ai/InvokeAI/pull/4359
- Add GPT2RandomPromptMaker to communityNodes.md by @mickr777 in https://github.com/invoke-ai/InvokeAI/pull/4361
- feat(dev_reload): use jurigged to hot reload changes to Python source by @keturn in https://github.com/invoke-ai/InvokeAI/pull/4313
- Update communityNodes.md - Load Video Frame by @helix4u in https://github.com/invoke-ai/InvokeAI/pull/4366
- Update communityNodes.md by @sammyf in https://github.com/invoke-ai/InvokeAI/pull/4362
- Update CODEOWNERS by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/4363
- fix: Inpaint Fixes by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/4301
- enable preselected image actions by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/4355
- Seamless Implementation by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/4370
- Seamless Patch from Stalker by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/4372
- Add Next/Prev Buttons CurrentImageNode.tsx by @mickr777 in https://github.com/invoke-ai/InvokeAI/pull/4352
- feat: Send Canvas Image & Mask To ControlNet by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/4374
- enable .and() syntax and long prompts by @damian0815 in https://github.com/invoke-ai/InvokeAI/pull/4112
- fix: Controlnet Prepreocessed Image Save Icon Missing by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/4375
- Hotfix to make second order schedulers work with mask by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/4378
- [3.1] UI Fixes by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/4376
- nodes phase 5: workflow saving and loading by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/4353
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v3.0.2post1…v3.1.0rc1
InvokeAI 3.1.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 and also serves as the foundation for multiple commercial products.
To learn more about InvokeAI, please see our Documentation, and check out the 3.1 Release Landing Page for the Community Edition!
What’s New in 3.1.1:
- Node versioning
- Nodes now support polymorphic inputs (inputs which are a single of a given type or list of a given type, e.g.
Union[str, list[str]]) - SDXL Inpainting Model is now supported
- Inpainting & Outpainting Improvements
- Workflow Editor UI Improvements
- Model Manager Improvements
- Fixed configuration script trying to set VRAM on macOS
Things to Know:
- You might see a red alert icon on your nodes after loading a workflow. This indicates that the node in the workflow is from an older version of InvokeAI, or the node doesn’t have a version. If your workflow runs, you may safely ignore this, and we will add functionality to “upgrade” the un-versioned nodes in a future update. If the workflow does not work, you will need to delete and add the nodes.
Installation and Upgrading
To install v3.1.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.
Download the installer: InvokeAI-installer-v3.1.1.zip
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
- @dunkeroni made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4425
- @dwringer made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4444
- @Keerigan45 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4459
- @sammcj made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4490
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v3.1.0…v3.1.1
InvokeAI v3.2.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.
To learn more about InvokeAI, please see our Documentation or join the Discord!
What’s New in 3.2.0:
- Queueing
- This is a powerful new feature that allows you to queue multiple image generations, create batches, manage the queue, and gain insight into generations.
- IP-Adapter is now supported
- Instructions on getting started with IP-Adapter are located in the “Things to Know” section below
- TAESD is now supported. You can download TAESD or TAESDXL through the model manager UI
- LoRAs and ControlNets are now able to be recalled with the “Use All” function
- New nodes! Load prompts from a file, string manipulation, and expanded math functions
- Node caching - improve performance by using previously cached generation values
- V-prediction for SD1.5 is now supported
- Importing images from previous versions of InvokeAI has been fixed
- Database maintenance script can be run with
invokeai-db-maintenance - View image metadata with the
invokeai-metadatacommand - Workflow Editor UI/UX improvements
- Unified Canvas improvements & bug fixes
Things to Know:
-
If you experience the server error,
TypeError: Invoker.create_execution_state() got an unexpected keyword argument 'queue_id', try clearing your local browser cache or resetting the InvokAI UI (Settings -> Reset UI) before running a generation. -
You might see a red alert icon on your nodes after loading a workflow. This indicates that the node in the workflow is from an older version of InvokeAI, or the node doesn’t have a version. If your workflow runs, you may safely ignore this, and we will add functionality to “upgrade” the un-versioned nodes in a future update. If the workflow does not work, you will need to delete and add the nodes.
-
To get started with IP-Adapter, you’ll need to download the image encoder and IP-Adapter for the desired based model. Once the models are installed, IP-Adapter is able to be used under the “Control Adapters” options.
Image Encoders:
IP-Adapter Models:
- InvokeAI/ip_adapter_sd15
- InvokeAI/ip_adapter_plus_sd15
- InvokeAI/ip_adapter_plus_face_sd15
- InvokeAI/ip_adapter_sdxl
These can be installed from the Model Manager by choosing “Import Models” and pasting in the repoIDs of the desired model. Remember to install the model and the image encoder! For example to get started with IP-Adapter for SD1.5 these are the repo IDs:
- InvokeAI/ip_adapter_plus_sd15
- InvokeAI/ip_adapter_sd_image_encoder
or from the command line by starting the “Developer’s Console” from the
invoke.batlauncher and pasting this command:invokeai-model-install --add InvokeAI/ip_adapter_sd_image_encoder InvokeAI/ip_adapter_sdxl_image_encoder InvokeAI/ip_adapter_sd15 InvokeAI/ip_adapter_plus_sd15 InvokeAI/ip_adapter_plus_face_sd15 InvokeAI/ip_adapter_sdxl
Installation and Upgrading:
To install v3.2.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 already have InvokeAI v3.x installed, you can update by running invoke.sh / invoke.bat and selecting option [9] to upgrade, or you can download and run the installer in your existing InvokeAI installation location.
Download the installer: InvokeAI-installer-v3.2.0.zip
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 is welcome. To get started as a contributor, please see How to Contribute or reach out to imic on Discord!
New Contributors
- @vedant-3010 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4488
- @chainchompa made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4608
- @CrypticWit made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4595
- @Malrama made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4633
- @parnas made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4634
- @Dekita made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4581
- @mildmisery made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4755
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v3.1.1…v3.2.0
InvokeAI 3.3.0post1
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.
To learn more about InvokeAI, please visit our Documentation or join our Discord server!
🌟 What’s New in 3.3.0:
- T2I-Adapter is now supported
- Models can be downloaded through the Model Manager or the model download function in the launcher script.
- Multi IP-Adapter Support!
- New nodes for working with faces
- Improved model load times from disk
- Hotkey fixes
- Expanded translations (for many languages!)
- Unified Canvas improvements and bug fixes
‼️ Things to Know:
- Future updates will bring a couple of major changes:
- Starting with 3.3, InvokeAI will only be supported for Python 3.10 and newer versions. Please begin preparing to upgrade your Python environment.
- Community Nodes will need to update their import structure. InvokeAI internal services are being reorganized to better support Community Nodes and future development efforts.
- T2I-Adapter and ControlNet cannot currently be used at the same time. This is prevented in the regular UI, but users will find that errors occur if they do not follow this guidance in Workflow development.
- T2I-Adapters currently require an image output size that is a multiple of 64. This is enforced in the regular UI, but again, you will need to adhere to this constraint in workflow development
💿 Installation and Upgrading:
To install version 3.3.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 already have InvokeAI version 3.x installed, you can update by running invoke.sh / invoke.bat and selecting option [9] to upgrade, or you can download and run the installer in your existing InvokeAI installation location.
**Download the installer: InvokeAI-installer-v3.3.0post1.zip **
⚙️ 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 is welcome. To get started as a contributor, please refer to How to Contribute or reach out to imic on Discord!
New Contributors:
- @src-r-r made their first contribution in this pull request.
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v3.2.0…v3.3.0
InvokeAI 3.3.0post2
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.
To learn more about InvokeAI, please visit our Documentation or join our Discord server!
Post2 update
3.3.0post2 is a minor hotfix that corrects incompatibility issues when installing xformers, updates translations, and corrects incompatibilities with systems that have versions of glibc<2.3.3.
🌟 What’s New in 3.3.0:
- T2I-Adapter is now supported
- Models can be downloaded through the Model Manager or the model download function in the launcher script.
- Multi IP-Adapter Support!
- New nodes for working with faces
- Improved model load times from disk
- Hotkey fixes
- Expanded translations (for many languages!)
- Unified Canvas improvements and bug fixes
‼️ Things to Know:
- Future updates will bring a couple of major changes:
- Starting with 3.3, InvokeAI will only be supported for Python 3.10 and newer versions. Please begin preparing to upgrade your Python environment.
- Community Nodes will need to update their import structure. InvokeAI internal services are being reorganized to better support Community Nodes and future development efforts.
- T2I-Adapter and ControlNet cannot currently be used at the same time. This is prevented in the regular UI, but users will find that errors occur if they do not follow this guidance in Workflow development.
- T2I-Adapters currently require an image output size that is a multiple of 64. This is enforced in the regular UI, but again, you will need to adhere to this constraint in workflow development
💿 Installation and Upgrading:
To install version 3.3.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 already have InvokeAI version 3.x installed, you can update by running invoke.sh / invoke.bat and selecting option [9] to upgrade, or you can download and run the installer in your existing InvokeAI installation location.
**Download the installer: InvokeAI-installer-v3.3.0post2.zip **
⚙️ 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 is welcome. To get started as a contributor, please refer to How to Contribute or reach out to imic on Discord!
New Contributors:
- @src-r-r made their first contribution in this pull request.
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v3.2.0…v3.3.0post2
InvokeAI 3.3.0post3
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.
To learn more about InvokeAI, please visit our Documentation or join our Discord server!
Post3 Update
3.3.0post3 is a hotfix release that fixes canvas locking issues, addresses a breaking change from v5.10 of python-socketio and adds translations
🌟 What’s New in 3.3.0:
- T2I-Adapter is now supported
- Models can be downloaded through the Model Manager or the model download function in the launcher script.
- Multi IP-Adapter Support!
- New nodes for working with faces
- Improved model load times from disk
- Hotkey fixes
- Expanded translations (for many languages!)
- Unified Canvas improvements and bug fixes
‼️ Things to Know:
- Future updates will bring a couple of major changes:
- Starting with 3.30, InvokeAI will only be supported for Python 3.10 and newer versions. Please begin preparing to upgrade your Python environment.
- Community Nodes will need to update their import structure. InvokeAI internal services are being reorganized to better support Community Nodes and future development efforts.
- T2I-Adapter and ControlNet cannot currently be used at the same time. This is prevented in the regular UI, but users will find that errors occur if they do not follow this guidance in Workflow development.
- T2I-Adapters currently require an image output size that is a multiple of 64. This is enforced in the regular UI, but again, you will need to adhere to this constraint in workflow development
💿 Installation and Upgrading:
To install version 3.3.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 already have InvokeAI version 3.x installed, you can update by running invoke.sh / invoke.bat and selecting option [9] to upgrade, or you can download and run the installer in your existing InvokeAI installation location.
Download the installer: InvokeAI-installer-v3.3.0post3.zip
⚙️ 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 is welcome. To get started as a contributor, please refer to How to Contribute or reach out to imic on Discord!
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v3.3.0post2…v3.3.0post3
InvokeAI v3.4.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.
To learn more about InvokeAI, please visit our Documentation or join our Discord server!
🌟 What’s New in 3.4.0:
- LCM-LoRAs are natively supported now supported in InvokeAI. See the note in Things to Know below.
- Community Nodes can now be installed by adding them to the
nodesfolder of the InvokeAI installation - Core Nodes can be automatically updated via the Workflow Editor
- Large performance improvements: reduced LoRA & text encoder loading times, improved token handling
- HiRes Fix is has returned!
- FreeU is supported for workflows
- ControlNets & T2I-Adapters can now be used together
- Multi-Image IP-Adapter is now available in Nodes Workflows (Instant LoRA!)
- Intermediate images are no longer saved to disk
- ControlNets in .safetensors format are now able to be used (SD1.5 & SD2 only). See the note in Things to Know below.
- VAE is now able to be recalled with “Use All”
- Color Picker Improvements
- Expanded translations (Dutch, Italian and Chinese are almost entirely complete!)
- InvokeAI now uses Pydantic2 and the latest FastAPI, making certain functions (like Iterate nodes) much more efficient.
‼️ Things to Know:
- InvokeAI is only be supported for Python 3.10 and newer versions. Please upgrade your Python environment if you are using an older version.
- Community nodes that were previously installed in the
.venvwill need to be moved to thenodesfolder at the root level of the InvokeAI installation. - LCM-LoRAs are natively supported in diffusers format can be downloaded through the model manager using the HuggingFace RepoID. LCMs are supported through a custom node.
- To support .safetensors ControlNets for SD1.5 & SD2, select option [6] from the launcher to “Re-run the configure script to fix a broken install or to complete a major upgrade”.
💿 Installation and Upgrading:
To install version 3.4.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 already have InvokeAI version 3.x installed, you can update by running invoke.sh / invoke.bat and selecting option [9] to upgrade, or you can download and run the installer in your existing InvokeAI installation location.
🚨 Please ensure your generation queue is has no pending items before upgrading. Pending generations may fail after an upgrade. 🚨
Download the installer:InvokeAI-installer-v3.4.0.zip
⚙️ 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 is welcome. To get started as a contributor, please refer to How to Contribute or reach out to imic on Discord!
New Contributors
- @martazavro made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4859
- @d8ahazard made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4937
- @Rubonnek made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5007
- @Drun555 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4881
- @rohinish404 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5067
- @StefanTobler made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5073
- @kieranklaassen made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5092
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v3.3.0post3…v3.4.0
InvokeAI 3.4.0post1
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.
To learn more about InvokeAI, please visit our Documentation or join our Discord server!
Post Release
- This post release fixes a bug with generations that prevented Image to Image generations from running successfully.
🌟 What’s New in 3.4.0:
- LCM-LoRAs are now natively supported supported in InvokeAI. See the note in Things to Know below.
- Community Nodes can now be installed by adding them to the
nodesfolder of the InvokeAI installation - Core Nodes can be automatically updated via the Workflow Editor
- Large performance improvements: reduced LoRA & text encoder loading times, improved token handling
- HiRes Fix is has returned!
- FreeU is supported for workflows
- ControlNets & T2I-Adapters can now be used together
- Multi-Image IP-Adapter is now available in Nodes Workflows (Instant LoRA!)
- Intermediate images are no longer saved to disk
- ControlNets in .safetensors format are now able to be used (SD1.5 & SD2 only). See the note in Things to Know below.
- VAE is now able to be recalled with “Use All”
- Color Picker Improvements
- Expanded translations (Dutch, Italian and Chinese are almost entirely complete!)
- InvokeAI now uses Pydantic2 and the latest FastAPI, making certain functions (like Iterate nodes) much more efficient.
‼️ Things to Know:
- InvokeAI is only be supported for Python 3.10 and newer versions. Please upgrade your Python environment if you are using an older version.
- Some users are having issues with PyTorch updates when updating to 3.4. If you encounter an error starting with
WARNING[XFORMERS]: xFormers can't load C++/CUDA extensions, open the developer console (option 7) from the launcher and runpip install --force-reinstall torch==2.1.0 --index-url https://download.pytorch.org/whl/cu121 - Community nodes that were previously installed in the
.venvwill need to be moved to thenodesfolder at the root level of the InvokeAI installation. - LCM-LoRAs are natively supported in diffusers format can be downloaded through the model manager using the HuggingFace RepoID. LCMs are supported through a custom node and can be added manually.
- To support .safetensors ControlNets for SD1.5 & SD2, select option [6] from the launcher to “Re-run the configure script to fix a broken install or to complete a major upgrade”.
💿 Installation and Upgrading:
To install version 3.4.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 already have InvokeAI version 3.x installed, you can update by running invoke.sh / invoke.bat and selecting option [9] to upgrade, or you can download and run the installer in your existing InvokeAI installation location.
🚨 Please ensure your generation queue is has no pending items before upgrading. Pending generations may fail after an upgrade. 🚨
Download the installer: InvokeAI-installer-v3.4.0post1.zip
⚙️ 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 is welcome. To get started as a contributor, please refer to How to Contribute or reach out to imic on Discord!
New Contributors
- @martazavro made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4859
- @d8ahazard made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4937
- @Rubonnek made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5007
- @Drun555 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4881
- @rohinish404 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5067
- @StefanTobler made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5073
- @kieranklaassen made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5092
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v3.3.0post3…v3.4.0post1
InvokeAI v3.4.0post2
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.
To learn more about InvokeAI, please visit our Documentation or join our Discord server!
Post Release Notes
- Fixed LoRAs being applied twice (3.4.0post2)
- Fixed a bug with generations that prevented Image to Image generations from running successfully. (3.4.0post1)
🌟 What’s New in 3.4.0:
- LCM-LoRAs are now natively supported supported in InvokeAI. See the note in Things to Know below.
- Community Nodes can now be installed by adding them to the
nodesfolder of the InvokeAI installation - Core Nodes can be automatically updated via the Workflow Editor
- Large performance improvements: reduced LoRA & text encoder loading times, improved token handling
- HiRes Fix is has returned!
- FreeU is supported for workflows
- ControlNets & T2I-Adapters can now be used together
- Multi-Image IP-Adapter is now available in Nodes Workflows (Instant LoRA!)
- Intermediate images are no longer saved to disk
- ControlNets in .safetensors format are now able to be used (SD1.5 & SD2 only). See the note in Things to Know below.
- VAE is now able to be recalled with “Use All”
- Color Picker Improvements
- Expanded translations (Dutch, Italian and Chinese are almost entirely complete!)
- InvokeAI now uses Pydantic2 and the latest FastAPI, making certain functions (like Iterate nodes) much more efficient.
‼️ Things to Know:
- InvokeAI only supports Python 3.10 and 3.11. Earlier versions are not supported, and 3.12 is not supported at the current time. Please upgrade your Python environment if you are using an older version.
- Some users are having issues with PyTorch updates when updating to 3.4. If you encounter an error starting with
WARNING[XFORMERS]: xFormers can't load C++/CUDA extensions, open the developer console (option 7) from the launcher and runpip install --force-reinstall torch==2.1.0 --index-url https://download.pytorch.org/whl/cu121 - Community nodes that were previously installed in the
.venvwill need to be moved to thenodesfolder at the root level of the InvokeAI installation. - LCM-LoRAs are natively supported in diffusers format can be downloaded through the model manager using the HuggingFace RepoID. LCMs are supported through a custom node and can be added manually.
- To support .safetensors ControlNets for SD1.5 & SD2, select option [6] from the launcher to “Re-run the configure script to fix a broken install or to complete a major upgrade”.
💿 Installation and Upgrading:
To install version 3.4.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 already have InvokeAI version 3.x installed, you can update by running invoke.sh / invoke.bat and selecting option [9] to upgrade, or you can download and run the installer in your existing InvokeAI installation location.
🚨 Please ensure your generation queue is has no pending items before upgrading. Pending generations may fail after an upgrade. 🚨
Download the installer: InvokeAI-installer-v3.4.0post2.zip
⚙️ 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 is welcome. To get started as a contributor, please refer to How to Contribute or reach out to imic on Discord!
New Contributors
- @martazavro made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4859
- @d8ahazard made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4937
- @Rubonnek made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5007
- @Drun555 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/4881
- @rohinish404 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5067
- @StefanTobler made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5073
- @kieranklaassen made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5092
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/3.4.0post1…v3.4.0post2
InvokeAI v3.5.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.
To learn more about InvokeAI, please visit our Documentation or join our Discord server!
🌟 What’s New in 3.5.0:
Workflow Library
Until now, a workflow could only be associated with an image, or be downloaded as JSON. The Workflow Library allows workflows to be saved independently to the database. The UI provides sorting and filtering options to manage them.
With the Workflow Library, we can now ship default workflows directly in the app. You’ll see a couple on the Default tab. As the InvokeAI application evolves we will keep these workflows up-to-date, and regularly add more.
Other Enhancements
- More capable node updating
- Better errors when your workflow doesn’t match your installed nodes
- Community node packs auto-report their name, so if your workflow needs nodes you don’t have installed, you’ll see what’s missing
- Custom field types for nodes
- Tiled upscaling nodes (BETA)
- Added many missing translation strings
- Gallery auto-scroll
‼️ Things to Know:
Invoke might revert to CPU (NVIDA GPU only)
- Some users have experienced torch reverting to the CPU rather than their GPU. To fix this follow these steps:
- Launch your invoke.bat / invoke.sh and select the option to open the developer console
- Run:
pip install --force-reinstall torch==2.1.2 --index-url https://download.pytorch.org/whl/cu121 - If you run into an error with typing_extensions, run:
pip install -U typing-extensions - If there is an error with fsspec, run
pip install -U fsspec==2023.5.0
Database Migrations
As the app evolves and our database usage gets a bit more complex, we need a way to safely update it. This release introduces a database migration utility and versions the database.
The first time you run v3.5.0, the migrator will set up the database versioning and, for this particular release, updates the images table to flag if an image has a workflow embedded or not. You’ll see a progress bar as it checks each image - it should be pretty quick.
The migration utility rolls back changes if anything goes wrong, is covered by our test suite and has proved itself with manual testing.
Custom Field Types in Nodes
Previously, node authors had to use built-in field types for inputs and outputs of their nodes. While this covered many use-cases, we recognized the need for “custom” field types. This is now fully supported, and any pydantic model can be used as a field type.
💿 Installation and Upgrading:
To install version 3.5.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 already have InvokeAI version 3.x installed, you can update by running invoke.sh / invoke.bat and selecting “Updated InvokeAI” to upgrade, or you can download and run the installer in your existing InvokeAI installation location.
🚨 Please ensure your generation queue has no pending items before upgrading. Pending generations may fail after an upgrade. 🚨
Download the installer: InvokeAI-installer-v3.5.0.zip
💻 Developer Changes
There are a number of important changes for contributors in this release.
Frontend/UI
The biggest change is that the frontend build is no longer included in main. If you run the app off a clone of the repo, you’ll need to build the frontend to use the UI. See the “Impact to Contributors” section on this PR https://github.com/invoke-ai/InvokeAI/pull/5253.
Other changes:
- Moved from
yarntopnpmfor package management - Updated many packages
- Refactored all workflow schemas and types
- Workflow migration logic implemented
- Changes to release process
Backend Changes
This release includes feature-flagged changes to the model manager and a new database migration utility.
Model Manager
The Model Manager is partway through a redesign, to make it more capable and maintainable. The redesign will support a much better user experience for downloading, installing and managing models. The changes are in the repo, but implemented separately from the user-facing app.
⚙️ 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 is welcome. To get started as a contributor, please refer to How to Contribute or reach out to imic on Discord!
New Contributors
- @whjms made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5143
- @fieldOfView made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5144
- @Dobrynia100 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5166
- @Pfannkuchensack made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5181
- @alfiedotwtf made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5220
- @ZuluPro made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5206
- @dependabot made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5236
- @SoheilRezaei made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5329
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v3.4.0post2…v3.5.0
InvokeAI v3.5.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 and also serves as the foundation for multiple commercial products.
To learn more about InvokeAI, please visit our Documentation or join our Discord server!
🌟 What’s New in 3.5.1
- Fixed bug with multiple embeddings
- Added Tiled Upscaling to Default Workflows (Beta)
- Respect use of torch-sdp from config.yaml
3.5.0 Changes
Workflow Library
Until now, a workflow could only be associated with an image, or be downloaded as JSON. The Workflow Library allows workflows to be saved independently to the database. The UI provides sorting and filtering options to manage them.
With the Workflow Library, we can now ship default workflows directly in the app. You’ll see a couple on the Default tab. As the InvokeAI application evolves we will keep these workflows up-to-date, and regularly add more.
Other Enhancements
- More capable node updating
- Better errors when your workflow doesn’t match your installed nodes
- Community node packs auto-report their name, so if your workflow needs nodes you don’t have installed, you’ll see what’s missing
- Custom field types for nodes
- Tiled upscaling nodes (BETA)
- Added many missing translation strings
- Gallery auto-scroll
‼️ Things to Know:
Invoke might revert to CPU (NVIDA GPU only)
- Some users have experienced torch reverting to the CPU rather than their GPU. To fix this follow these steps:
- Launch your invoke.bat / invoke.sh and select the option to open the developer console
- Run:
pip install --force-reinstall torch==2.1.2 --index-url https://download.pytorch.org/whl/cu121 - If you run into an error with typing_extensions, run:
pip install -U typing-extensions - If there is an error with fsspec, run
pip install -U fsspec==2023.5.0
Database Migrations
As the app evolves and our database usage gets a bit more complex, we need a way to safely update it. This release introduces a database migration utility and versions the database.
The first time you run v3.5.1, the migrator will set up the database versioning and, for this particular release, updates the images table to flag if an image has a workflow embedded or not. You’ll see a progress bar as it checks each image - it should be pretty quick.
The migration utility rolls back changes if anything goes wrong, is covered by our test suite and has proved itself with manual testing.
Custom Field Types in Nodes
Previously, node authors had to use built-in field types for inputs and outputs of their nodes. While this covered many use-cases, we recognized the need for “custom” field types. This is now fully supported, and any pydantic model can be used as a field type.
💿 Installation and Upgrading:
To install version 3.5.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 already have InvokeAI version 3.x installed, you can update by running invoke.sh / invoke.bat and selecting “Updated InvokeAI” to upgrade, or you can download and run the installer in your existing InvokeAI installation location.
🚨 Please ensure your generation queue has no pending items before upgrading. Pending generations may fail after an upgrade. 🚨
Download the installer: InvokeAI-installer-v3.5.1.zip
💻 Developer Changes
There are a number of important changes for contributors in this release.
Frontend/UI
The biggest change is that the frontend build is no longer included in main. If you run the app off a clone of the repo, you’ll need to build the frontend to use the UI. See the “Impact to Contributors” section on this PR https://github.com/invoke-ai/InvokeAI/pull/5253.
Other changes:
- Moved from
yarntopnpmfor package management - Updated many packages
- Refactored all workflow schemas and types
- Workflow migration logic implemented
- Changes to release process
Backend Changes
This release includes feature-flagged changes to the model manager and a new database migration utility.
Model Manager
The Model Manager is partway through a redesign, to make it more capable and maintainable. The redesign will support a much better user experience for downloading, installing and managing models. The changes are in the repo, but implemented separately from the user-facing app.
⚙️ 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 is welcome. To get started as a contributor, please refer to How to Contribute or reach out to imic on Discord!
New Contributors
- @woweenie made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5356
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v3.5.0…v3.5.1
Invoke 3.6.0
Invoke 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.
You can learn more Invoke and our mission by visiting https://www.invoke.com/about, or joining our Discord server!
🌟 What’s New in 3.6.0
- UI/UX Overhaul
- We’re overhauling our brand as we continue to grow into serving businesses & enterprises with solving their deployment challenges for generative AI. At our core, we’re the same - Same mission, same team, same commitment to OSS. See “Things to Know” below when upgrading from 3.4
‼️ Things to Know:
- When upgrading from 3.4 via the updater script, the UI will not render and will display an error:
{"detail":"Not Found"}. To fix this error, open the developer console from the invoke.bat / invoke.sh menu and run:pip install --use-pep517 --upgrade --force-reinstall InvokeAI==v3.6.0 - bfloat16 is now able to be used with Invoke. The use of bfloat16 will result in different generation results from previous versions of Invoke.
- Currently known issues:
- Scan for Models is currently disabled due to the Model Manager refactor
Invoke might revert to CPU (NVIDIA GPU only)
- Some users have experienced torch reverting to the CPU rather than their GPU. To fix this follow these steps:
- Launch your invoke.bat / invoke.sh and select the option to open the developer console
- Run:
pip install --force-reinstall torch==2.1.2 --index-url https://download.pytorch.org/whl/cu121 - If you run into an error with typing_extensions, run:
pip install -U typing-extensions - If there is an error with fsspec, run
pip install -U fsspec==2023.5.0
💿 Installation and Upgrading:
To install version 3.6.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 already have InvokeAI version 3.x installed, you can update by running invoke.sh / invoke.bat and selecting “Updated InvokeAI” to upgrade, or you can download and run the installer in your existing InvokeAI installation location.
🚨 Please ensure your generation queue has no pending items before upgrading. Pending generations may fail after an upgrade. 🚨
Download the installer: InvokeAI-installer-v3.6.0.zip
💻 Developer Changes
There are a number of important changes for contributors in this release.
Frontend/UI
The biggest change is that the frontend build is no longer included in main. If you run the app off a clone of the repo, you’ll need to build the frontend to use the UI. See the “Impact to Contributors” section on this PR https://github.com/invoke-ai/InvokeAI/pull/5253.
Model Manager
The Model Manager is partway through a redesign, to make it more capable and maintainable. The redesign will support a much better user experience for downloading, installing and managing models. The changes are in the repo, but implemented separately from the user-facing app.
⚙️ 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 is welcome. To get started as a contributor, please refer to How to Contribute or reach out to imic on Discord!
New Contributors
- @dsisco11 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5344
What’s Changed
See Commits
* feat(ui): UX improvements & updated design by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5270 * ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5365 * feat(ui): redesign followups by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5368 * Release/v3.6.0rc1 by @Millu in https://github.com/invoke-ai/InvokeAI/pull/5372 * ui: redesign followups 2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5374 * Sisco/docker allow relative paths for invokeai data by @dsisco11 in https://github.com/invoke-ai/InvokeAI/pull/5344 * define tooltip color, optional new logo by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5375 * Updater suggest db backup when installing RC by @Millu in https://github.com/invoke-ai/InvokeAI/pull/5381 * ui: edesign followups 3 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5385 * Release: v3.6.0rc2 by @Millu in https://github.com/invoke-ai/InvokeAI/pull/5386 * ui: redesign followups 4 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5387 * ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5388 * ui: redesign followups 5 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5396 * feat: Remove Header & Other Minor UI Updates by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/5392 * custom components for nav, gallery header, and app info by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5400 * fix default panel width by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5403 * replace gear instead of adding below if custom nav component by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5404 * logo override by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5406 * ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5401 * fix(ui): fix panel resize bug by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5407 * Update Readme w/ New Brand Images by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/5402 * {release} v3.6.0rc3 by @Millu in https://github.com/invoke-ai/InvokeAI/pull/5408 * [Optimization] Use torch.bfloat16 on cuda systems by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5410 * ui: slightly reposition floating bars. by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/5409 * fix(ui): perf improvements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5411 * ui: redesign followups 6 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5414 * only GET intermediates if that setting is an option by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5416 * fix text color for lora card by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5417 * Improve speed of applying TI embeddings by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/5422 * ui: redesign followups 7 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5423 * {release} v3.6.0rc4 by @Millu in https://github.com/invoke-ai/InvokeAI/pull/5424 * up and down button support in gallery navigation by @rohinish404 in https://github.com/invoke-ai/InvokeAI/pull/5389 * ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5428 * [feat] Bake in sdxl-vae-fp16-fix model on checkpoint conversion by @lstein in https://github.com/invoke-ai/InvokeAI/pull/4468 * fix(ui): fix gallery nav math by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5432 * Update diffusers to the lastest version by @Malrama in https://github.com/invoke-ai/InvokeAI/pull/5431 * feat(ui): use config for all numerical params by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5433 * fix(ui): fix add node autoconnect by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5434 * Updated icons + Minor UI Tweaks by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/5427 * ui: redesign followups 8 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5445 * {release} v3.5.0rc5 by @Millu in https://github.com/invoke-ai/InvokeAI/pull/5446 * do not show toast if 403 is triggered by forbidden image by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5447 * Enable correct probing of LoRA latent-consistency/lcm-lora-sdxl by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5449 * fix(ui): use less brutally strict workflow validation by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5463 * fix(ui): use memoized selector for workflow watcher by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5464 * feat: pin deps by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5465 * ui: redesign followups 9 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5460 * Report ci disk space + minor docker fixes by @ebr in https://github.com/invoke-ai/InvokeAI/pull/5461 * ui: redesign followups 10 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5466 * {release} v3.6.0rc6 by @Millu in https://github.com/invoke-ai/InvokeAI/pull/5467 * ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5430 * fix(ui): reduce reconnect requests by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5451 * Bugfix textual inversion crash by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5450 * Enhancement: Workflow Library Styling by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/5470 * 3.6 Docs updates by @Millu in https://github.com/invoke-ai/InvokeAI/pull/5412 * feat(ui): more context in storage errors by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5471 * feat(ui): update assets by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5472 * feat(ui): misc ui by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5474 * ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5481 * Allow bfloat16 to be configurable in invoke.yaml by @Millu in https://github.com/invoke-ai/InvokeAI/pull/5469 * Release/v3.6.0 by @Millu in https://github.com/invoke-ai/InvokeAI/pull/5485Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v3.5.1…v3.6.0
Invoke 3.6.1
Invoke is a leading creative engine built to empower professionals and enthusiasts alike. Generate and create stunning visual media using the latest AI-driven technologies. Invoke offers an industry-leading web interface and also serves as the foundation for multiple commercial products.
You can learn more Invoke and our mission by visiting https://www.invoke.com/about, or joining our Discord server!
🌟 What’s New in 3.6.1
- UI/UX Overhaul Improvements
- Based on community feedback, updates have been made to the new UI/UX See “Things to Know” below when upgrading from Invoke 3.4
- Depth-Anything is now supported and is the default depth processor in Invoke
- Remix image - similar to Use All, but allows you to create a new image by setting all parameters except the Seed
- “About” menu can be found in settings. Displays Invoke & dependency versions
- Ideal Size node is now a default node
- Fixed LoRA renaming bug
‼️ Things to Know:
- When upgrading from 3.4 via the updater script, the UI will not render and will display an error:
{"detail":"Not Found"}. To fix this error, open the developer console from the invoke.bat / invoke.sh menu and run:pip install --use-pep517 --upgrade --force-reinstall InvokeAI==v3.6.1 - Currently known issues:
- Scan for Models is currently disabled due to the Model Manager refactor
Invoke might revert to CPU (NVIDIA GPU only)
- Some users have experienced torch reverting to the CPU rather than their GPU. To fix this follow these steps:
- Launch your invoke.bat / invoke.sh and select the option to open the developer console
- Run:
pip install --force-reinstall torch==2.1.2 --index-url https://download.pytorch.org/whl/cu121 - If you run into an error with typing_extensions, run:
pip install -U typing-extensions - If there is an error with fsspec, run
pip install -U fsspec==2023.5.0
💿 Installation and Upgrading:
To install version 3.6.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 already have Invoke version 3.x installed, you can update by running invoke.sh / invoke.bat and selecting “Updated Invoke” to upgrade, or you can download and run the installer in your existing Invoke installation location.
🚨 Please ensure your generation queue has no pending items before upgrading. Pending generations may fail after an upgrade. 🚨
Download the installer: InvokeAI-installer-v3.6.1.zip
💻 Developer Changes
There are a number of important changes for contributors to be aware of.
Frontend/UI
The biggest change is that the frontend build is no longer included in main. If you run the app off a clone of the repo, you’ll need to build the frontend to use the UI. See the “Impact to Contributors” section on this PR https://github.com/invoke-ai/InvokeAI/pull/5253.
Model Manager
The Model Manager is partway through a redesign, to make it more capable and maintainable. The redesign will support a much better user experience for downloading, installing and managing models. The changes are in the repo, but implemented separately from the user-facing app.
⚙️ 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 refer to How to Contribute or reach out to imic on Discord!
New Contributors
- @isNeil made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5526
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v3.6.0…v3.6.1
Invoke 3.6.2
Invoke is a leading creative engine built to empower professionals and enthusiasts alike. Generate and create stunning visual media using the latest AI-driven technologies. Invoke offers an industry-leading web interface and also serves as the foundation for multiple commercial products.
You can learn more Invoke and our mission by visiting https://www.invoke.com/about, or joining our Discord server!
🌟 What’s New in 3.6.2
- UI/UX Overhaul Improvements
- Based on community feedback, updates have been made to the new UI/UX See “Things to Know” below when upgrading from Invoke 3.4
- Depth-Anything is now supported and is the default depth processor in Invoke
- Remix image - similar to Use All, but allows you to create a new image by setting all parameters except the Seed
- “About” menu can be found in settings. Displays Invoke & dependency versions
- Ideal Size node is now a default node
- Fixed LoRA renaming bug
- Updated Workflow saving behavior
‼️ Things to Know:
- When upgrading from 3.4 via the updater script, the UI will not render and will display an error:
{"detail":"Not Found"}. To fix this error, open the developer console from the invoke.bat / invoke.sh menu and run:pip install --use-pep517 --upgrade --force-reinstall InvokeAI==v3.6.2 - Currently known issues:
- Scan for Models is currently disabled due to the Model Manager refactor
Invoke might revert to CPU (NVIDIA GPU only)
- Some users have experienced torch reverting to the CPU rather than their GPU. To fix this follow these steps:
- Launch your invoke.bat / invoke.sh and select the option to open the developer console
- Run:
pip install --force-reinstall torch==2.1.2 --index-url https://download.pytorch.org/whl/cu121 - If you run into an error with typing_extensions, run:
pip install -U typing-extensions - If there is an error with fsspec, run
pip install -U fsspec==2023.5.0
💿 Installation and Upgrading:
To install version 3.6.2, 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 already have Invoke version 3.x installed, you can update by running invoke.sh / invoke.bat and selecting “Updated Invoke” to upgrade, or you can download and run the installer in your existing Invoke installation location.
🚨 Please ensure your generation queue has no pending items before upgrading. Pending generations may fail after an upgrade. 🚨
Download the installer: InvokeAI-installer-v3.6.2.zip
💻 Developer Changes
There are a number of important changes for contributors to be aware of.
Frontend/UI
The biggest change is that the frontend build is no longer included in main. If you run the app off a clone of the repo, you’ll need to build the frontend to use the UI. See the “Impact to Contributors” section on this PR https://github.com/invoke-ai/InvokeAI/pull/5253.
Model Manager
The Model Manager is partway through a redesign, to make it more capable and maintainable. The redesign will support a much better user experience for downloading, installing and managing models. The changes are in the repo, but implemented separately from the user-facing app.
⚙️ 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 refer to How to Contribute or reach out to imic on Discord!
New Contributors
- @isNeil made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5526
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v3.6.0…v3.6.2
Invoke 3.6.3
Invoke is a leading creative engine built to empower professionals and enthusiasts alike. Generate and create stunning visual media using the latest AI-driven technologies. Invoke offers an industry-leading web interface and also serves as the foundation for multiple commercial products.
You can learn more Invoke and our mission by visiting https://www.invoke.com/about, or joining our Discord server!
🌟 What’s New in 3.6.3
- Significantly improved generation speeds
- Workflow Library improvements
- New Unified Canvas Hotkeys - Ctrl + Mouse Scroll can now change the brush size!
- Installer & Updater improvements
- Model Manager updates to model conversion and saving
- Faster image saving - see “Other” in Things to Know
‼️ Things to Know:
Possible Update Issues
- When upgrading from 3.4 via the updater script, the UI will not render and will display an error:
{"detail":"Not Found"}. To fix this error, download the installer and re-run it in the same location as your existing installation.
Invoke might revert to CPU (NVIDIA GPU only)
- Some users have experienced torch reverting to the CPU rather than their GPU. To fix this follow these steps:
- Launch your invoke.bat / invoke.sh and select the option to open the developer console
- Run:
pip install --force-reinstall torch==2.1.2 --index-url https://download.pytorch.org/whl/cu121 - If you run into an error with typing_extensions, run:
pip install -U typing-extensions - If there is an error with fsspec, run
pip install -U fsspec==2023.5.0
Other
- To take advantage of the image saving speed increase for existing installations, set your
png_compress_levelto 1 in your invoke.yaml file. - Graph data was not being used and is longer saved in the database. You may experience an unusual pause during updating as this is data is deleted.
- Currently known issues:
- Scan for Models is currently disabled due to the Model Manager refactor
💿 Installation and Upgrading:
To install version 3.6.3, 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 already have Invoke version 3.x installed, you can update by running invoke.sh / invoke.bat and selecting “Updated Invoke” to upgrade, or you can download and run the installer in your existing Invoke installation location.
🚨 Please ensure your generation queue has no pending items before upgrading. Pending generations may fail after an upgrade. 🚨
Download the installer: InvokeAI-installer-v3.6.3.zip
💻 Developer Changes
There are a number of important changes for contributors to be aware of.
Model Manager
The Model Manager is partway through a redesign, to make it more capable and maintainable. The redesign will support a much better user experience for downloading, installing and managing models. The changes are in the repo, but implemented separately from the user-facing app.
⚙️ 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 refer to How to Contribute or reach out to imic on Discord!
New Contributors
- @codedealer made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5592
- @vvanglro made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5623
- @meonkeys made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5695
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v3.6.2…3.6.3
Invoke 3.7.0
Invoke is a leading creative engine built to empower professionals and enthusiasts alike. Generate and create stunning visual media using the latest AI-driven technologies. Invoke offers an industry-leading web interface and also serves as the foundation for multiple commercial products.
You can learn more Invoke and our mission by visiting https://www.invoke.com/about, or joining our Discord server!
🌟 What’s New in 3.7.0
Workflow Editor Improvements
- Workflow Linear View - Workflows are now able to be used in a sleek Linear View interface that hides the workflow and focuses on the image being generated! To enable this, from a workflow, click the “Use in Linear View” button next to the model name in the left sidebar.
- Workflow Linear View inputs are now able to be re-ordered by dragging and dropping.
Other Changes
- DWPose is now the default OpenPose processor in Invoke - see Things to Know
- Improved Seamless Tiling! Now even more seamless
- Update diffusers version to 0.26.3
- Various bug fixes
‼️ Things to Know:
Possible Update Issues
- When upgrading from 3.4 via the updater script, the UI will not render and will display an error:
{"detail":"Not Found"}. To fix this error, download the installer and re-run it in the same location as your existing installation.
Invoke might revert to CPU (NVIDIA GPU only)
- Some users have experienced torch reverting to the CPU rather than their GPU. To fix this follow these steps:
- Launch your invoke.bat / invoke.sh and select the option to open the developer console
- Run:
pip install --force-reinstall torch==2.1.2 --index-url https://download.pytorch.org/whl/cu121 - If you run into an error with typing_extensions, run:
pip install -U typing-extensions - If there is an error with fsspec, run
pip install -U fsspec==2023.5.0
Other
- In some cases, the OpenPose processor might not automatically switch to DWPose. To choose DWPose, use the “Show Advanced” caret to open the processor settings and choose DW Openpose as the processor.
- Currently known issues:
- Scan for Models is currently disabled due to the Model Manager refactor
💿 Installation and Upgrading:
To install version 3.7, 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 already have Invoke version 3.x installed, you can update by running invoke.sh / invoke.bat and selecting “Updated Invoke” to upgrade, or you can download and run the installer in your existing Invoke installation location.
🚨 Please ensure your generation queue has no pending items before upgrading. Pending generations may fail after an upgrade. 🚨
Download the installer: InvokeAI-installer-v3.7.0.zip
💻 Developer Changes
There are a number of important changes for contributors to be aware of.
Model Manager
The Model Manager is partway through a redesign, to make it more capable and maintainable. The redesign will support a much better user experience for downloading, installing and managing models. The changes are in the repo, but implemented separately from the user-facing app.
⚙️ 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 refer to How to Contribute or reach out to imic on Discord!
New Contributors
- @Cu3PO42 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/5714
What’s Changed
- fix(ui): enable lora when recalling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5699
- feat: DW Openpose Processor by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/5688
- exposed field loading state by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5704
- Update 020_INSTALL_MANUAL.md by @SoheilRezaei in https://github.com/invoke-ai/InvokeAI/pull/5700
- move upload button into workflow library modal by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5702
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5705
- chore: bump diffusers 0.26.2 -> 0.26.3 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5708
- Quick Seamless Fixes by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/5685
- feat(nodes): improve types in graph.py by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5656
- only refetch intermediates on modal open if that feature is enabled by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5712
- workflow tab by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5680
- revert to using fetch to download images to metadata is not stripped by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5720
- Update accelerate 0.26.1 -> 0.27.2 by @Malrama in https://github.com/invoke-ai/InvokeAI/pull/5718
- fix: Seamless Fixes for Linear UI by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/5715
- fix(images_default): correct get_metadata error message by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5717
- Reorder exposed fields in workflow tab by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/5711
- fix: repair Dockerfile for ROCm by @Cu3PO42 in https://github.com/invoke-ai/InvokeAI/pull/5714
- {release} 3.7.0 by @Millu in https://github.com/invoke-ai/InvokeAI/pull/5727
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/3.6.3…3.7.0
v4.0.0
🚨 4.0.0 has some major changes. Please read the patch notes. 🚨
🚨 🚨 🚨 Yes - Those patch notes 👇 🚨 🚨 🚨
🎉 What’s New in 4.0.0
💻 Simplified Installation, Updating and Configuration
We’ve simplified and streamlined installation, making it much faster and more reliable:
- No configuration script - all config is in
invokeai.yaml - No model installs during installation
- Internal “core” models are downloaded only when they are first requested
- Generation models are installed with the Model Manager UI
- 🚨 No updater - you’ll use the installer attached to these releases instead. Selecting the same location will perform an update and leave all your existing images, models, etc. intact.
💖 New Model Manager
The model manager is rewritten in v4.0.0, both frontend and backend. This builds a foundation for future model architectures and brings some exciting new user-facing features:
- All model installation happens via the UI (no configure script)
- Queued model downloads
- Per-model preview images
- Per-model default settings - choose a model’s default VAE, Scheduler, CFG Scale, etc
- User-defined trigger phrases for concepts/LoRAs and models - access by typing the
<key in any prompt box - API key support for model marketplaces
- 🚨 Autoimport removed - use
Scan Folderinstead
#️⃣ Model Hashing
When you first run v4.0.0, it may take a few minutes to start up as it does a one-time hash of all of your model files.
Do not panic.
Hashes provide a stable identifier for a model that is the same across every platform.
🚨 If you don’t care about this, you can press Ctrl+C to interrupt the process and disable hashing by setting hashing_algorithm: random setting in invokeai.yaml.
🎨 Canvas Improvements
The canvas uses a new method for compositing called gradient denoising. This eliminates the need for multiple “passes”, greatly reducing generation time on the canvas. This method also provides substantially improved visual coherence between the masked regions and the rest of the image.
The compositing settings on canvas allow for control over the gradient denoising process.
Major research & experimentation for this novel denoising implementation was led by @dunkeroni, and @blessedcoolant was responsible for managing integration into the canvas UI.
🐛 Known Issue
🚨 Inpainting models on Canvas sometimes kinda give up and output mush. We have a fix en-route, but it will need to wait for 4.1.0.
📈 Fixes and Enhancements
Many small bug fixes, resolved papercuts, and warm fuzzies. Shouting out just a few notable goodies from the community:
- Bulk downloads (download a selection of images or a whole board) @StefanTobler
- Canvas Brush Size Scroll can now be inverted @joshistoast
- Images in the Canvas Staging Area can now be discarded individually @joshistoast
- Numerous fixes and UI enhancements @joshistoast
- Numerous greybeard node things @dunkeroni
- Iterate nodes now iterate in order @cgi-joe
- Sane workflow sorting @clsn
- Image dimensions overlay in the gallery @rohinish404
- Localization fixes @rohinish404
- New translations B N, @Harvester62, @Pfannkuchensack, @Bethanielle, @Vasyanator, @GGSSKK, & @Sufi2425
- Updated
torchanddiffusersdeps @Malrama - Docs updates @skunkworxdark, @gogurtenjoyer
- LoRA probe fix @skunkworxdark
🎁 Bonus: Invoke Training (Beta)
As of v4.0.0, all references to training in the core invoke script now point to the Invoke Training Repo. Invoke Training offers a simple user interface for:
- Textual Inversion Training
- LoRA Training
- Dreambooth Training
- Pivotal Tuning Training
Learn more on the Invoke Training repo, as well as our YT video on getting started
💾 Installation and Upgrading
🚨 To install or upgrade to version 4.0, download the zip file from the release notes (“Assets” section), unzip it, and follow the installation instructions. For upgrades, select the same installation location.
🤓 Developer Changes
v4.0.0 is versioned as a major release due to breaking changes:
- The internal nodes API has been refactored to provide a stable public API. 🚨 Node authors should review the migration guide.
- The internal graph execution engine is drastically simplified, resulting in more efficient and performant processing. This carries on from the changes in v3.6.0 in which graphs are no longer stored in the database.
🤝 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 refer to How to Contribute or reach out in #dev-chat on Discord!
📝 What’s Changed
- fix(ui): do not provide auth headers for openapi.json by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5726
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5736
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5743
- add latent-upscale to communityNodes.md by @gogurtenjoyer in https://github.com/invoke-ai/InvokeAI/pull/5728
- updated tooltip popovers by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/5751
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5752
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5765
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5788
- Update communityNodes.md by @skunkworxdark in https://github.com/invoke-ai/InvokeAI/pull/5802
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5823
- chore: merge next by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5838
- feat: automated releases via github action by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5839
- Fix problem of all installed models being assigned "
" by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5841 - Tidy the attention code (in preparation for regional prompting) by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/5843
- ci: fix workflows by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5854
- Remove attention map saving by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/5845
- Make model key assignment deterministic by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5792
- fix(canvas): use a corrected gradient mask for canvas pasteback by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/5855
- Update Transformers 4.37.2 -> 4.38.2 by @Malrama in https://github.com/invoke-ai/InvokeAI/pull/5859
- consolidate tabs for main model and concepts in generation panel by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5848
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5832
- Log a stack trace for invocation errors by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/5853
- Allow in place local installs of models by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/5852
- Default model settings by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5850
- refactor(mm): update configs and schemas by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5846
- updates for
defaultModelby @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5866 - Remove references to the no longer existing invokeai.app.services.mod… by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/5871
- refactor: :pencil2: canvas mask compositor naming by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/5873
- fix(nodes): invocation cache clearing by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5880
- fix(ui): fix URL for get image workflow by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5882
- feat(ui): UI papercuts by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5881
- fix(ui): only show default settings on main models by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5884
- feat(scripts): typegen improvements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5878
- feat(ui): add config_path to model update form for ckpt models by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5883
- fix(nodes): load config before doing anything else by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5877
- invert canvas brush size hotkey setting by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/5875
- refactor: model identifiers improvements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5879
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5864
- Add cover images to model manager by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/5876
- discard current inpaint instance by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/5874
- feat(ui): model manager UI pass by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5886
- Remove civit install source by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/5887
- feat(ui): allow inplace installs by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5890
- fix: workflows backcompat by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5897
- feat: default processors for controlnet & t2i adapter by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5896
- migrate models on service start by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5889
- remove old data migration from previous schema version by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5901
- ui(model_manager): Remember Scan Path by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/5898
- fix(ui): only render convert button if ckpt model by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5902
- fix(ui): add ordering for model list by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5903
- Use absolute paths in model manager by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/5900
- docs: autogenerate app config docs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5892
- fix(app): include
config_pathin yaml -> DB migration by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5905 - fix(mm): only move model files if necessary by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5911
- fix(mm): yaml migration fixup by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5913
- docs: update docs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5909
- feat(nodes): enriched model identifiers by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5910
- fix: make Canvas compatible with inpainting models again by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/5895
- tidy(mm): ModelSearch cleanup by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5912
- fix(mm): do not erroneously rename files by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5914
- Remove dead code related to an old symmetry feature. by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/5899
- fix(nodes): ip adapter by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5919
- chore: bump app deps by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5915
- Allow lists of basemodel objects in omegaconf by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/5922
- Do not override log_memory_usage when debug logs are enabled by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/5921
- {release} 4.0.0rc1 by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/5908
- ci: add missing permission to release workflow by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5927
- feat(ui): Add image size badge to gallery images by @rohinish404 in https://github.com/invoke-ai/InvokeAI/pull/5632
- Update l2i invoke and seamless to support AutoencoderTiny, remove att… by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/5936
- updated model manager to display when import item is cancelled by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/5924
- fix(ui): disable trigger phrase form if empty by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5942
- ci: add
always_runinput to checks & tests, use this on release workflow by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5929 - added hf models import tab and route for getting available hf models by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/5891
- docs: misc updates by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5930
- chore: cleanup DepthAnything code by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/5945
- fix(ui): force CustomSelect’s to rerender when models load to update invalid state by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5949
- (ui): fetch TIs on socket connect by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5950
- fix(ui): control adapter errors by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5953
- chore(ui): cleanup translations by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5946
- feat: :pencil2: rename “Workflow Editor” tab label to “Workflows” by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/5955
- feat(mm): faster hashing for spinning disk HDDs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5952
- feat(nodes): defaults dimensions for main models by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5931
- Work around missing core conversion model issue by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5947
- Restore ability to install models from command line by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5948
- fix(nodes): depth anything processor (#5956) by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5961
- feat(ui): single getModelConfigs query by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5962
- fix: model load events by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5959
- docs: update CONFIGURATION.md by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5963
- fix(nodes,ui): metadata recall by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5957
- Run typegen, update version to 4.0.0rc2 by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/5965
- fix(ui): initial main model in dropdown by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5968
- Update diffusers 0.26.3 -> 0.27.0 and other HF packages by @Malrama in https://github.com/invoke-ai/InvokeAI/pull/5976
- Allow removal of models with legacy relative path addressing by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5979
- Remove core conversion models by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5981
- Stop registering and moving models which have symlinks in the models dir by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/5973
- Add sdxl controlnet models by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5980
- Install missing clip_vision encoders if required by an ip adapter by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5982
- refactor: simplified config system by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5920
- Revert “fix(mm): provide ckpt config as stream to diffusers” by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5990
- Allow users to specify model type and skip detection step of probe by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/5970
- feat(ui, worker): update processed image resolution based on base model type by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5986
- fix(ui): move created_by out of recall panel by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5987
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5904
- fix(ui): model list refreshes after changes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5993
- Record the model_variant in t2i and clip_vision configs by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5989
- Fix race condition causing hangs during model install unit tests by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5994
- fix(ui): fix refiner metadata by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5996
- gh: update pr template by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5958
- chore: bump nodes versions by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5992
- Fix(backend): Denoise Masks being applied at the wrong time by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/5985
- refactor: remove configure script by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5991
- Update pytorch and xFormers 2.1.2 -> 2.2.1 by @Malrama in https://github.com/invoke-ai/InvokeAI/pull/5977
- fix(ui): handle seamless with refiner by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5999
- Fix text labels not being localized by @rohinish404 in https://github.com/invoke-ai/InvokeAI/pull/5951
- tidy(installer): remove references to removed scripts from installer/launcher by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6002
- chore: v4.0.0rc3 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6003
- Remove no longer used pwinput dependency by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6004
- chore: v4.0.0rc4 by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6005
- fix(ui): set aspect ratio to free when using default model settings by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6017
- Wait for threads to exit after stopping model installer/downloader by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6014
- feat(mm): display progress when hashing files by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6019
- feat(nodes): better controlnet processors by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6021
- Fix running under Docker following 4.0.0rc4 config changes by @ebr in https://github.com/invoke-ai/InvokeAI/pull/6009
- [feature] Add probe for SDXL controlnet models by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5382
- pkg: pin version of
ruffby @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6012 - fix(ui): use the old combobox component for dropdowns by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6015
- fix(ui): runtime errors related to model types in ui by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6016
- gh: update pr template by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6018
- feat(mm): use blake3_single as default hashing algo by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6020
- Allow checkpoint config files to use root-relative paths by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6023
- fix(config): do not write env vars by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6013
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6006
- feat: Add Mask from ID Node + ColorField Component Improvements by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/6008
- Fix minor bugs involving model manager handling of model paths by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6024
- feat(mm): revised starter models by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6025
- Catch ^C at startup time while models are being registered by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6026
- chore(nodes): update default workflows for v4 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6027
- fix(mm): remove proteus model by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6028
- fix(nodes): esrgan model name typo by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6029
- chore: v4.0.0rc5 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6030
- fix:Update probe.py - Case-sensitive typo on
.LoRAby @skunkworxdark in https://github.com/invoke-ai/InvokeAI/pull/6031 - allow deletion of symlinked models in models dir by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6036
- fix(mm): default settings pydantic error by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6045
- fix(ui): load default workflows mutation error by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6050
- tidy: launcher by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6046
- fixes ui localization and settings typo by @rohinish404 in https://github.com/invoke-ai/InvokeAI/pull/6033
- Change GraphExecutionState’s _get_next_node method to prioritize Iterate Nodes by @cgi-joe in https://github.com/invoke-ai/InvokeAI/pull/6032
- Update transformers and diffusers by @Malrama in https://github.com/invoke-ai/InvokeAI/pull/6037
- feat(installer): remove updater & support installing from wheel by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6054
- docs: new installation docs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6056
- fix(mm): prevent installer softlock when an unhandled error occurs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6048
- feat(mm): remove
MALLOC_MMAP_THRESHOLD_env var by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6059 - fix(mm): handle integer state dict keys in probe by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6051
- fix(ui): image not getting selected when clicked on image-badge by @rohinish404 in https://github.com/invoke-ai/InvokeAI/pull/6057
- fix(mm): handle depth and inpaint ckpt conversion by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6064
- docs: remove handful of deprecated docs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6063
- feat: display torch device on startup by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6062
- feat(mm): remove hf token handling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6061
- Check cuDNN version compatibility on startup by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6052
- Flip default ordering of workflow library; #5477 by @clsn in https://github.com/invoke-ai/InvokeAI/pull/6066
- feat(ui): when using a control image’s dimensions, fit to the current model’s optimal dimensions by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6068
- chore(ui): bump deps, cleanup by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6070
- feat(mm): remove autoimport, revised startup model scanning by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6060
- chore: v4.0.0rc6 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6071
- fix(installer): restore install successful message by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6073
- chore: ruff by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6074
- ci: release process enhancements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6075
- Only cancel session processor if current generating queue item is can… by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6078
- fix(nodes): workaround seamless multi gpu error by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6076
- Use defaults for db_dir and outdir since config no longer writes defa… by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6079
- Drop model_config table during database version 7 migration. by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6083
- feat(mm): restore relative paths for invoke-managed models by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6087
- [mm] Do not write diffuser model to disk when convert_cache set to zero by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6072
- Remove debug statement by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6088
- fix(queue): pause & resume by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6091
- Fix 100% CPU load in
session_processor_default._process()by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6095 - fix(nodes): 100% cpu usage when paused by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6096
- fix(mm): vae conversion by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6097
- feat: db backup, v4.0.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6099
New Contributors
- @cgi-joe made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6032
- @clsn made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6066
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/3.7.0…v4.0.0
v4.0.1
🚨 4.0.0 has some major changes. Please read the patch notes. 🚨
🚨 🚨 🚨 Yes - Those patch notes 👇 🚨 🚨 🚨
🎉 What’s New in 4.0
💻 Simplified Installation, Updating and Configuration
We’ve simplified and streamlined installation, making it much faster and more reliable:
- No configuration script - all config is in
invokeai.yaml - No model installs during installation
- Internal “core” models are downloaded only when they are first requested
- Generation models are installed with the Model Manager UI
- 🚨 No updater - you’ll use the installer attached to these releases instead. Selecting the same location will perform an update and leave all your existing images, models, etc. intact.
💖 New Model Manager
The model manager is rewritten in v4.0.0, both frontend and backend. This builds a foundation for future model architectures and brings some exciting new user-facing features:
- All model installation happens via the UI (no configure script)
- Queued model downloads
- Per-model preview images
- Per-model default settings - choose a model’s default VAE, Scheduler, CFG Scale, etc
- User-defined trigger phrases for concepts/LoRAs and models - access by typing the
<key in any prompt box - API key support for model marketplaces
- 🚨 Autoimport removed - use
Scan Folderinstead
#️⃣ Model Hashing
When you first run v4.0.0, it may take a few minutes to start up as it does a one-time hash of all of your model files.
Do not panic.
Hashes provide a stable identifier for a model that is the same across every platform.
🚨 If you don’t care about this, you can press Ctrl+C to interrupt the process and disable hashing by setting hashing_algorithm: random setting in invokeai.yaml.
🎨 Canvas Improvements
The canvas uses a new method for compositing called gradient denoising. This eliminates the need for multiple “passes”, greatly reducing generation time on the canvas. This method also provides substantially improved visual coherence between the masked regions and the rest of the image.
The compositing settings on canvas allow for control over the gradient denoising process.
Major research & experimentation for this novel denoising implementation was led by @dunkeroni, and @blessedcoolant was responsible for managing integration into the canvas UI.
🐛 Known Issue
🚨 Inpainting models on Canvas sometimes kinda give up and output mush. We have a fix en-route, but it will need to wait for 4.1.0.
📈 Fixes and Enhancements
Many small bug fixes, resolved papercuts, and warm fuzzies. Shouting out just a few notable goodies from the community:
- Bulk downloads (download a selection of images or a whole board) @StefanTobler
- Canvas Brush Size Scroll can now be inverted @joshistoast
- Images in the Canvas Staging Area can now be discarded individually @joshistoast
- Numerous fixes and UI enhancements @joshistoast
- Numerous greybeard node things @dunkeroni
- Iterate nodes now iterate in order @cgi-joe
- Sane workflow sorting @clsn
- Image dimensions overlay in the gallery @rohinish404
- Localization fixes @rohinish404
- New translations B N, @Harvester62, @Pfannkuchensack, @Bethanielle, @Vasyanator, @GGSSKK, & @Sufi2425
- Updated
torchanddiffusersdeps @Malrama - Docs updates @skunkworxdark, @gogurtenjoyer
- LoRA probe fix @skunkworxdark
4.01 Fixes
- Minor updates that resolve performance issues on the canvas.
- Some installation/updating fixes to improve experience.
🎁 Bonus: Invoke Training (Beta)
As of v4.0.0, all references to training in the core invoke script now point to the Invoke Training Repo. Invoke Training offers a simple user interface for:
- Textual Inversion Training
- LoRA Training
- Dreambooth Training
- Pivotal Tuning Training
Learn more on the Invoke Training repo, as well as our YT video on getting started
💾 Installation and Upgrading
🚨 To install or upgrade to version 4.0, download the zip file from the release notes (“Assets” section), unzip it, and follow the installation instructions. For upgrades, select the same installation location.
Models don’t show up after upgrading
Follow these steps. If you are still missing some models, please create an issue on GitHub or ask for help on discord.
🤓 Developer Changes
v4.0.0 is versioned as a major release due to breaking changes:
- The internal nodes API has been refactored to provide a stable public API. 🚨 Node authors should review the migration guide.
- The internal graph execution engine is drastically simplified, resulting in more efficient and performant processing. This carries on from the changes in v3.6.0 in which graphs are no longer stored in the database.
🤝 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 refer to How to Contribute or reach out in #dev-chat on Discord!
What’s Changed
- fix(ui): do not provide auth headers for openapi.json by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5726
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5736
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5743
- add latent-upscale to communityNodes.md by @gogurtenjoyer in https://github.com/invoke-ai/InvokeAI/pull/5728
- updated tooltip popovers by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/5751
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5752
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5765
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5788
- Update communityNodes.md by @skunkworxdark in https://github.com/invoke-ai/InvokeAI/pull/5802
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5823
- chore: merge next by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5838
- feat: automated releases via github action by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5839
- Fix problem of all installed models being assigned "
" by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5841 - Tidy the attention code (in preparation for regional prompting) by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/5843
- ci: fix workflows by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5854
- Remove attention map saving by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/5845
- Make model key assignment deterministic by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5792
- fix(canvas): use a corrected gradient mask for canvas pasteback by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/5855
- Update Transformers 4.37.2 -> 4.38.2 by @Malrama in https://github.com/invoke-ai/InvokeAI/pull/5859
- consolidate tabs for main model and concepts in generation panel by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5848
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5832
- Log a stack trace for invocation errors by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/5853
- Allow in place local installs of models by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/5852
- Default model settings by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5850
- refactor(mm): update configs and schemas by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5846
- updates for
defaultModelby @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5866 - Remove references to the no longer existing invokeai.app.services.mod… by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/5871
- refactor: :pencil2: canvas mask compositor naming by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/5873
- fix(nodes): invocation cache clearing by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5880
- fix(ui): fix URL for get image workflow by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5882
- feat(ui): UI papercuts by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5881
- fix(ui): only show default settings on main models by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5884
- feat(scripts): typegen improvements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5878
- feat(ui): add config_path to model update form for ckpt models by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5883
- fix(nodes): load config before doing anything else by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5877
- invert canvas brush size hotkey setting by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/5875
- refactor: model identifiers improvements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5879
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5864
- Add cover images to model manager by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/5876
- discard current inpaint instance by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/5874
- feat(ui): model manager UI pass by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5886
- Remove civit install source by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/5887
- feat(ui): allow inplace installs by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5890
- fix: workflows backcompat by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5897
- feat: default processors for controlnet & t2i adapter by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5896
- migrate models on service start by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5889
- remove old data migration from previous schema version by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5901
- ui(model_manager): Remember Scan Path by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/5898
- fix(ui): only render convert button if ckpt model by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5902
- fix(ui): add ordering for model list by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5903
- Use absolute paths in model manager by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/5900
- docs: autogenerate app config docs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5892
- fix(app): include
config_pathin yaml -> DB migration by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5905 - fix(mm): only move model files if necessary by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5911
- fix(mm): yaml migration fixup by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5913
- docs: update docs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5909
- feat(nodes): enriched model identifiers by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5910
- fix: make Canvas compatible with inpainting models again by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/5895
- tidy(mm): ModelSearch cleanup by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5912
- fix(mm): do not erroneously rename files by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5914
- Remove dead code related to an old symmetry feature. by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/5899
- fix(nodes): ip adapter by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5919
- chore: bump app deps by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5915
- Allow lists of basemodel objects in omegaconf by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/5922
- Do not override log_memory_usage when debug logs are enabled by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/5921
- {release} 4.0.0rc1 by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/5908
- ci: add missing permission to release workflow by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5927
- feat(ui): Add image size badge to gallery images by @rohinish404 in https://github.com/invoke-ai/InvokeAI/pull/5632
- Update l2i invoke and seamless to support AutoencoderTiny, remove att… by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/5936
- updated model manager to display when import item is cancelled by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/5924
- fix(ui): disable trigger phrase form if empty by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5942
- ci: add
always_runinput to checks & tests, use this on release workflow by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5929 - added hf models import tab and route for getting available hf models by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/5891
- docs: misc updates by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5930
- chore: cleanup DepthAnything code by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/5945
- fix(ui): force CustomSelect’s to rerender when models load to update invalid state by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5949
- (ui): fetch TIs on socket connect by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5950
- fix(ui): control adapter errors by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5953
- chore(ui): cleanup translations by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5946
- feat: :pencil2: rename “Workflow Editor” tab label to “Workflows” by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/5955
- feat(mm): faster hashing for spinning disk HDDs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5952
- feat(nodes): defaults dimensions for main models by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5931
- Work around missing core conversion model issue by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5947
- Restore ability to install models from command line by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5948
- fix(nodes): depth anything processor (#5956) by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5961
- feat(ui): single getModelConfigs query by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5962
- fix: model load events by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5959
- docs: update CONFIGURATION.md by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5963
- fix(nodes,ui): metadata recall by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5957
- Run typegen, update version to 4.0.0rc2 by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/5965
- fix(ui): initial main model in dropdown by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5968
- Update diffusers 0.26.3 -> 0.27.0 and other HF packages by @Malrama in https://github.com/invoke-ai/InvokeAI/pull/5976
- Allow removal of models with legacy relative path addressing by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5979
- Remove core conversion models by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5981
- Stop registering and moving models which have symlinks in the models dir by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/5973
- Add sdxl controlnet models by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5980
- Install missing clip_vision encoders if required by an ip adapter by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5982
- refactor: simplified config system by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5920
- Revert “fix(mm): provide ckpt config as stream to diffusers” by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5990
- Allow users to specify model type and skip detection step of probe by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/5970
- feat(ui, worker): update processed image resolution based on base model type by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5986
- fix(ui): move created_by out of recall panel by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5987
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/5904
- fix(ui): model list refreshes after changes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5993
- Record the model_variant in t2i and clip_vision configs by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5989
- Fix race condition causing hangs during model install unit tests by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5994
- fix(ui): fix refiner metadata by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/5996
- gh: update pr template by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5958
- chore: bump nodes versions by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5992
- Fix(backend): Denoise Masks being applied at the wrong time by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/5985
- refactor: remove configure script by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5991
- Update pytorch and xFormers 2.1.2 -> 2.2.1 by @Malrama in https://github.com/invoke-ai/InvokeAI/pull/5977
- fix(ui): handle seamless with refiner by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5999
- Fix text labels not being localized by @rohinish404 in https://github.com/invoke-ai/InvokeAI/pull/5951
- tidy(installer): remove references to removed scripts from installer/launcher by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6002
- chore: v4.0.0rc3 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6003
- Remove no longer used pwinput dependency by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6004
- chore: v4.0.0rc4 by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6005
- fix(ui): set aspect ratio to free when using default model settings by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6017
- Wait for threads to exit after stopping model installer/downloader by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6014
- feat(mm): display progress when hashing files by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6019
- feat(nodes): better controlnet processors by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6021
- Fix running under Docker following 4.0.0rc4 config changes by @ebr in https://github.com/invoke-ai/InvokeAI/pull/6009
- [feature] Add probe for SDXL controlnet models by @lstein in https://github.com/invoke-ai/InvokeAI/pull/5382
- pkg: pin version of
ruffby @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6012 - fix(ui): use the old combobox component for dropdowns by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6015
- fix(ui): runtime errors related to model types in ui by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6016
- gh: update pr template by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6018
- feat(mm): use blake3_single as default hashing algo by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6020
- Allow checkpoint config files to use root-relative paths by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6023
- fix(config): do not write env vars by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6013
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6006
- feat: Add Mask from ID Node + ColorField Component Improvements by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/6008
- Fix minor bugs involving model manager handling of model paths by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6024
- feat(mm): revised starter models by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6025
- Catch ^C at startup time while models are being registered by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6026
- chore(nodes): update default workflows for v4 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6027
- fix(mm): remove proteus model by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6028
- fix(nodes): esrgan model name typo by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6029
- chore: v4.0.0rc5 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6030
- fix:Update probe.py - Case-sensitive typo on
.LoRAby @skunkworxdark in https://github.com/invoke-ai/InvokeAI/pull/6031 - allow deletion of symlinked models in models dir by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6036
- fix(mm): default settings pydantic error by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6045
- fix(ui): load default workflows mutation error by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6050
- tidy: launcher by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6046
- fixes ui localization and settings typo by @rohinish404 in https://github.com/invoke-ai/InvokeAI/pull/6033
- Change GraphExecutionState’s _get_next_node method to prioritize Iterate Nodes by @cgi-joe in https://github.com/invoke-ai/InvokeAI/pull/6032
- Update transformers and diffusers by @Malrama in https://github.com/invoke-ai/InvokeAI/pull/6037
- feat(installer): remove updater & support installing from wheel by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6054
- docs: new installation docs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6056
- fix(mm): prevent installer softlock when an unhandled error occurs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6048
- feat(mm): remove
MALLOC_MMAP_THRESHOLD_env var by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6059 - fix(mm): handle integer state dict keys in probe by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6051
- fix(ui): image not getting selected when clicked on image-badge by @rohinish404 in https://github.com/invoke-ai/InvokeAI/pull/6057
- fix(mm): handle depth and inpaint ckpt conversion by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6064
- docs: remove handful of deprecated docs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6063
- feat: display torch device on startup by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6062
- feat(mm): remove hf token handling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6061
- Check cuDNN version compatibility on startup by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6052
- Flip default ordering of workflow library; #5477 by @clsn in https://github.com/invoke-ai/InvokeAI/pull/6066
- feat(ui): when using a control image’s dimensions, fit to the current model’s optimal dimensions by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6068
- chore(ui): bump deps, cleanup by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6070
- feat(mm): remove autoimport, revised startup model scanning by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6060
- chore: v4.0.0rc6 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6071
- fix(installer): restore install successful message by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6073
- chore: ruff by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6074
- ci: release process enhancements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6075
- Only cancel session processor if current generating queue item is can… by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6078
- fix(nodes): workaround seamless multi gpu error by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6076
- Use defaults for db_dir and outdir since config no longer writes defa… by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6079
- Drop model_config table during database version 7 migration. by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6083
- feat(mm): restore relative paths for invoke-managed models by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6087
- [mm] Do not write diffuser model to disk when convert_cache set to zero by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6072
- Remove debug statement by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6088
- fix(queue): pause & resume by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6091
- Fix 100% CPU load in
session_processor_default._process()by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6095 - fix(nodes): 100% cpu usage when paused by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6096
- fix(mm): vae conversion by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6097
- feat: db backup, v4.0.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6099
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6039
- fix: handle custom node errors on startup, clear session queue via migration by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6100
- fix(config): handle windows paths in invokeai.yaml migration for legacy_conf_dir by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6101
- fix(ui): canvas stuttering, perf improvements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6102
- Run typegen, bump version by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6104
New Contributors
- @cgi-joe made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6032
- @clsn made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6066
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/3.7.0…v4.0.1
v4.0.2
🚨 v4 has some major changes. Please read the patch notes. 🚨
🚨 🚨 🚨 Yes - Those patch notes 👇 🚨 🚨 🚨
🎉 What’s New in 4.0.2
This is a patch release includes these changes:
- Fix errors related to character encodings during install and startup
- UI error on first launch of v4, requiring reset of UI
- Cancel batch button not working
- Improvements to
Scan Folder - FAQ to fix some models not migrating to v4
- Removed unused or wonky GPU options in installer
- Root dir detection via venv path
- Handful of cosmetic UI fixes
It also includes one notable feature:
- IP Adapter safetensor support
💻 Simplified Installation, Updating and Configuration
We’ve simplified and streamlined installation, making it much faster and more reliable:
- No configuration script - all config is in
invokeai.yaml - No model installs during installation
- Internal “core” models are downloaded only when they are first requested
- Generation models are installed with the Model Manager UI
- 🚨 No updater - you’ll use the installer attached to these releases instead. Select your existing install location to perform an update. All of your user data is retained during the update.
💖 New Model Manager
The model manager is rewritten in v4.0.0, both frontend and backend. This builds a foundation for future model architectures and brings some exciting new user-facing features:
- All model installation happens via the UI (no configure script)
- Queued model downloads
- Per-model preview images
- Per-model default settings - choose a model’s default VAE, Scheduler, CFG Scale, etc
- User-defined trigger phrases for concepts/LoRAs and models - access by typing the
<key in any prompt box - API key support for model marketplaces
- 🚨 Autoimport removed - use
Scan Folderinstead
#️⃣ Model Hashing
When you first run v4, it may take a few minutes to start up as it does a one-time hash of all of your model files.
Do not panic.
Hashes provide a stable identifier for a model that is the same across every platform.
🚨 If you don’t care about this, you can press Ctrl+C to interrupt the process and disable hashing by setting hashing_algorithm: random setting in invokeai.yaml.
🎨 Canvas Improvements
The canvas uses a new method for compositing called gradient denoising. This eliminates the need for multiple “passes”, greatly reducing generation time on the canvas. This method also provides substantially improved visual coherence between the masked regions and the rest of the image.
The compositing settings on canvas allow for control over the gradient denoising process.
Major research & experimentation for this novel denoising implementation was led by @dunkeroni, and @blessedcoolant was responsible for managing integration into the canvas UI.
🐛 Known Issue
🚨 Inpainting models on Canvas sometimes kinda give up and output mush. We have a fix en-route, but it will need to wait for 4.1.0.
📈 Fixes and Enhancements
4.0.2
Fixes
- Fix errors related to character encodings during install and startup
- UI error on first launch of v4, requiring reset of UI
- Cancel batch button not working
- Improvements to
Scan Folder - FAQ to fix some models not migrating to v4
- Removed unused or wonky GPU options in installer
- Root dir detection via venv path
- Handful of cosmetic UI fixes
Features
- IP Adapter safetensor support
4.0.1
Fixes
- Minor updates that resolve performance issues on the canvas.
- Some installation/updating fixes to improve experience.
4.0.0
Many small bug fixes, resolved papercuts, and warm fuzzies. Shouting out just a few notable goodies from the community:
- Bulk downloads (download a selection of images or a whole board) @StefanTobler
- Canvas Brush Size Scroll can now be inverted @joshistoast
- Images in the Canvas Staging Area can now be discarded individually @joshistoast
- Numerous fixes and UI enhancements @joshistoast
- Numerous greybeard node things @dunkeroni
- Iterate nodes now iterate in order @cgi-joe
- Sane workflow sorting @clsn
- Image dimensions overlay in the gallery @rohinish404
- Localization fixes @rohinish404
- New translations B N, @Harvester62, @Pfannkuchensack, @Bethanielle, @Vasyanator, @GGSSKK, & @Sufi2425
- Updated
torchanddiffusersdeps @Malrama - Docs updates @skunkworxdark, @gogurtenjoyer
- LoRA probe fix @skunkworxdark
🎁 Bonus: Invoke Training (Beta)
As of v4.0.0, all references to training in the core invoke script now point to the Invoke Training Repo. Invoke Training offers a simple user interface for:
- Textual Inversion Training
- LoRA Training
- Dreambooth Training
- Pivotal Tuning Training
Learn more on the Invoke Training repo, as well as our YT video on getting started
💾 Installation and Upgrading
🚨 To install or upgrade to version 4.0, download the zip file from the release notes (“Assets” section), unzip it, and follow the installation instructions. For upgrades, select the same installation location.
Models don’t show up after upgrading
Follow these steps. If you are still missing some models, please create an issue on GitHub or ask for help on discord.
🤓 Developer Changes
v4.0.0 is versioned as a major release due to breaking changes:
- The internal nodes API has been refactored to provide a stable public API. 🚨 Node authors should review the migration guide.
- The internal graph execution engine is drastically simplified, resulting in more efficient and performant processing. This carries on from the changes in v3.6.0 in which graphs are no longer stored in the database.
🤝 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 refer to How to Contribute or reach out in #dev-chat on Discord!
What’s Changed
- fix(ui): add default coherence mode to generation slice migration by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6109
- docs: fix broken link by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6116
- fix(ui): cancel batch status button greyed out by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6121
- IP-Adapter Safetensor Support by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/6041
- feat(mm): include needed vs free in OOM by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6111
- add some test IDs for accordion targeting by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6126
- fix(mm): do not rename model file when model record is renamed by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6113
- Update probe to always use cpu for loading models by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6128
- feat(mm): restore missing models by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6118
- fix(ui): fix model name overflow by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6114
- feat(installer): remove extra GPU options by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6119
- fix(config): fix find_root to use venv parent if no CLI arg or env var by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6115
- docs: update 020_INSTALL_MANUAL.md, remove conda section by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6131
- fix: unicode errors during install or app startup by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6133
- chore: v4.0.2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6134
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v4.0.1…v4.0.2
v4.0.4
🚨 v4 has some major changes. Please read the patch notes. 🚨
Patch Nodes for v4.0.4
This patch release includes the following changes:
- Add fit bounding box to image when sending image to canvas
- Small handful of canvas bugs fixed
- Refiner models displayed in model manager
- Fix OOM on Windows (see this FAQ entry for more detail)
- Restore initial image recall for img2img
💾 Installation and Updating
To install or update to v4.0.4, download the installer and follow the installation instructions. To update, select the same installation location.
🎉 What’s New in Invoke v4
💻 Simplified Installation, Updating and Configuration
We’ve simplified and streamlined installation, making it much faster and more reliable:
- No configuration script - all config is in
invokeai.yaml - No model installs during installation
- Internal “core” models are downloaded only when they are first requested
- Generation models are installed with the Model Manager UI
- 🚨 No updater - you’ll use the installer attached to these releases instead. Select your existing install location to perform an update. All of your user data is retained during the update.
💖 New Model Manager
The model manager is rewritten in v4.0.0, both frontend and backend. This builds a foundation for future model architectures and brings some exciting new user-facing features:
- All model installation happens via the UI (no configure script)
- Queued model downloads
- Per-model preview images
- Per-model default settings - choose a model’s default VAE, Scheduler, CFG Scale, etc
- User-defined trigger phrases for concepts/LoRAs and models - access by typing the
<key in any prompt box - API key support for model marketplaces
- 🚨 Autoimport removed - use
Scan Folderinstead
#️⃣ Model Hashing
When you first run v4, it may take a few minutes to start up as it does a one-time hash of all of your model files.
Do not panic.
Hashes provide a stable identifier for a model that is the same across every platform.
🚨 If you don’t care about this, you can press Ctrl+C to interrupt the process and disable hashing by setting hashing_algorithm: random setting in invokeai.yaml.
🎨 Canvas Improvements
The canvas uses a new method for compositing called gradient denoising. This eliminates the need for multiple “passes”, greatly reducing generation time on the canvas. This method also provides substantially improved visual coherence between the masked regions and the rest of the image.
The compositing settings on canvas allow for control over the gradient denoising process.
Major research & experimentation for this novel denoising implementation was led by @dunkeroni, and @blessedcoolant was responsible for managing integration into the canvas UI.
🐛 Known Issue
🚨 Inpainting models on Canvas sometimes kinda give up and output mush. We have a fix en-route, but it will need to wait for 4.1.0.
📈 Fixes and Enhancements
4.0.4
- Add fit bounding box to image when sending image to canvas
- Small handful of canvas bugs fixed
- Refiner models displayed in model manager
- Fix OOM on Windows (see this FAQ entry for more detail)
- Restore initial image recall for img2img
4.0.2
- Fix errors related to character encodings during install and startup
- UI error on first launch of v4, requiring reset of UI
- Cancel batch button not working
- Improvements to
Scan Folder - FAQ to fix some models not migrating to v4
- Removed unused or wonky GPU options in installer
- Root dir detection via venv path
- Handful of cosmetic UI fixes
- IP Adapter safetensor support
4.0.1
- Minor updates that resolve performance issues on the canvas.
- Some installation/updating fixes to improve experience.
4.0.0
Many small bug fixes, resolved papercuts, and warm fuzzies. Shouting out just a few notable goodies from the community:
- Bulk downloads (download a selection of images or a whole board) @StefanTobler
- Canvas Brush Size Scroll can now be inverted @joshistoast
- Images in the Canvas Staging Area can now be discarded individually @joshistoast
- Numerous fixes and UI enhancements @joshistoast
- Numerous greybeard node things @dunkeroni
- Iterate nodes now iterate in order @cgi-joe
- Sane workflow sorting @clsn
- Image dimensions overlay in the gallery @rohinish404
- Localization fixes @rohinish404
- New translations B N, @Harvester62, @Pfannkuchensack, @Bethanielle, @Vasyanator, @GGSSKK, & @Sufi2425
- Updated
torchanddiffusersdeps @Malrama - Docs updates @skunkworxdark, @gogurtenjoyer
- LoRA probe fix @skunkworxdark
🎁 Bonus: Invoke Training (Beta)
As of v4.0.0, all references to training in the core invoke script now point to the Invoke Training Repo. Invoke Training offers a simple user interface for:
- Textual Inversion Training
- LoRA Training
- Dreambooth Training
- Pivotal Tuning Training
Learn more on the Invoke Training repo, as well as our YT video on getting started
Models don’t show up after upgrading
Follow these steps. If you are still missing some models, please create an issue on GitHub or ask for help on discord.
🤓 Developer Changes
v4.0.0 is versioned as a major release due to breaking changes:
- The internal nodes API has been refactored to provide a stable public API. 🚨 Node authors should review the migration guide.
- The internal graph execution engine is drastically simplified, resulting in more efficient and performant processing. This carries on from the changes in v3.6.0 in which graphs are no longer stored in the database.
🤝 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 refer to How to Contribute or reach out in #dev-chat on Discord!
What’s Changed
- fix(ui): discarding last single canvas image breaks canvas by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6135
- fix: ip adapter clip selection being broken by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/6138
- Fix IdealSizeInvocation by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/6145
- [refactor] Infill Methods + Mosaic Infill by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/5998
- fix(ui): display refiner models in model manager by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6146
- Adjust free vram calculation for models that will be offloaded by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6150
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6142
- navigate to workflow tab when clicking load workflow by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/6149
- Fix misplaced lock call in VRAM management routines (minor) by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6153
- feat: Unified Canvas Fit Image Size on Drop by @symant233 in https://github.com/invoke-ai/InvokeAI/pull/6136
- chore: v4.0.3 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6154
- fix: Incorrect default clip vision opt in the node by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/6159
- fix(mm): premature insufficient VRAM reporting by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6156
- fix: “Use All” for linear image to image doesn’t recall source image by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/6141
- fix(nodes): add WithBoard to public API by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6162
- chore: v4.0.4 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6165
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6166
New Contributors
- @symant233 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6136
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v4.0.2…v4.0.4
v4.1.0
Invoke v4.1.0 brings a many fixes and enhancements. The big ticket is Style and Composition IP Adapter.
🧪 Style and Composition IP Adapter (beta)
IP Adapter uses an image as a prompt. Images have two major components - their style and their composition - and you can choose either or both when using IP Adapter.
Use the new IP Adapter Method dropdown to select Full, Style, or Composition. The setting is applied per IP Adapter. You may need to delete and re-add active IP Adapters to see the dropdown.
| No IP Adapter | IP Adapter Image | Full IP Adapter | Style Only | Composition Only |
|---|---|---|---|---|
“a fierce wolf in an alpine forest”, all using same seed - note how the Full method turns the wolf into a mouse-canine hybrid
Shout-out to @blessedcoolant for this feature!
📈 Patch Nodes for v4.1.0
Enhancements
- Backend and nodes implementation for regional prompting and regional IP Adapter (UI in v4.2.0)
- Secret option in Workflow Editor to convert a graph into a workflow. See #6181 for how to use it.
- Assortment of UI papercuts
- Favicon & page title indicate generation status @jungleBadger
- Delete hotkey and button work with gallery selection @jungleBadger
- Workflow editor perf improvements
- Edge labels in workflow editor
- Updated translations @Harvester62, @symant233, @Vasyanator
- Updated docs @sarashinai
- Improved torch device and precision handling
Fixes
multipleOffor invocations (for example, the Noise invocation’s width and height have a step of 8)- Poor quality “fried” refiner outputs
- Poor quality inpainting with gradient denoising and refiner
- Canvas images appearing in the wrong places
- The little eye defaulting to off in canvas staging toolbar
- Premature OOM on windows (see shared GPU memory FAQ)
- ~1s delay between queue items
- Wonky model manager forms navigating away from UI @clsn
Invocation API
- New method to get the filesystem path of an image:
context.images.get_path(image_name: str, thumbnail: bool)@fieldOfView
Internal
- Improved
knipconfig @webpro - Updated python deps @Malrama
💾 Installation and Updating
To install or update to v4.1.0, download the installer and follow the installation instructions.
To update, select the same installation location. Your user data will not be touched.
Missing models after updating from v3 to v4
See this FAQ.
🐛 Known Issues
- Inpainting models on Canvas sometimes kinda give up and output mush. The fix didn’t make it in to v4.1.0, we will aim to release a patch in by the weekend.
What’s Changed
- fix(ui): handle multipleOf on number fields by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6167
- feat(backend): clean up choose_precision by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6171
- (feat) add a method to get the path of an image from invocationcontext by @fieldOfView in https://github.com/invoke-ai/InvokeAI/pull/6176
- feat(ui): add graph-to-workflow debug helper by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6181
- fix: Update SDXL Refiner graphs to use Gradient Mask by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/6158
- Regional Prompting (Node only) by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/5916
- Remove Prompt-to-Prompt Cross-Attention Control by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6123
- Regional IP-Adapter (Backend Only) by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/5967
- Fix field ordering by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/6186
- Fix regional prompt mask padding by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6187
- fix(ui): always enqueue with fresh staging area bbox by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6184
- fix(nodes): refined fixes for refiner inpainting by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6197
- [mm] clear the cache entry for a model that got an OOM during loading by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6193
- fix(queue): poll queue on finished queue item by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6191
- Remove type=“submit” from all tsx files. by @clsn in https://github.com/invoke-ai/InvokeAI/pull/6200
- Add Toggle for showing Bounding Box, fix Main Model info popover, fix Control Model description on hover by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/6202
- Update INSTALL_DEVELOPMENT.md by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6201
- Correct stated location of Gallery panel in WEB.md by @sarashinai in https://github.com/invoke-ai/InvokeAI/pull/6203
- Fix “recall all” when loras, controls, or high res fix are not present by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/6211
- Modify title and favicon when item in progress (issue #2392) by @jungleBadger in https://github.com/invoke-ai/InvokeAI/pull/6204
- remove hires fix badge from settings when using sdxl by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/6218
- Enable multi deletion on keystroke by @jungleBadger in https://github.com/invoke-ai/InvokeAI/pull/6216
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6170
- Fix up Knip config & enable —production mode by @webpro in https://github.com/invoke-ai/InvokeAI/pull/6217
- Update deps to their lastest versions by @Malrama in https://github.com/invoke-ai/InvokeAI/pull/6178
- feat(ui): edge labels by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6224
- perf(ui): misc ui improvements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6225
- [util] Add generic torch device class by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6174
- [mm] Fix race condition when installing multi-file models by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6221
- Add IP Adapter Style & Composition Modes by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/6213
- update IP adapter method labels to be designated as Beta by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6232
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6223
- chore: v4.1.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6234
New Contributors
- @sarashinai made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6203
- @jungleBadger made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6204
- @webpro made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6217
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v4.0.4…v4.1.0
v4.2.0
Since the very beginning, Invoke has been innovating where it matters for creatives. Today, we’re excited to do it again with Control Layers.
Invoke 4.2 brings a number of enhancements and fixes, with the addition of a major new feature - Control Layers.
🧪 Control Layers
Integrating some of the latest in open-source research, creatives can use Control Adapters, Image Prompts, and regional guidance to articulate and control the generation process from a single panel. With regional guidance, you can compose specific regions to apply a positive prompt, negative prompt, or any number of IP Adapters to be applied to the masked region. Control Adapters (ControlNet & T2I Adapters) and an Initial Image are visualized on the new Control Layers canvas.
You can read more about how to use Control Layers here - Control Layers
📈 Patch Nodes for v4.2.0
Enhancements
- Control Layers
- Add TCD scheduler @l0stl0rd
- Image Viewer updates — You can easily switch to the Image Viewer on the Generations tab by tapping the Z hotkey, or double clicking on any image in the gallery.
Major Changes
Also known as the “who moved my 🧀?” section, this list details where certain features have moved.
- Image to Image: The Image to Image pipeline can be executed using Control Layers by adding an Initial Image layer.
- Control Adapters and IP Adapters: These have been moved to the Control Layers tab — with the added benefit of being able to visualize your control adapter’s processed images easily!
Fixes
- Fixed inpainting models on canvas @dunkeroni
- Fixed IP Adapter starter models
- Fixed bug where temp files (tensors, conditioning) aren’t cleaned up properly
- Fixed trigger phrase form submit @joshistoast
- Fixed SDXL checkpoint inpainting models not installing
- Fixed installing models on external SSDs on macOS
- Fixed Control Adapter processors’ image size constraints being overly restrictive
💾 Installation and Updating
To install or update to v4.2.0, download the installer and follow the installation instructions.
To update, select the same installation location. Your user data will not be touched.
Missing models after updating from v3 to v4
See this FAQ.
What’s Changed
- fix: IP Adapter Method having incorrect informational popover by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/6238
- Re-enable app shutdown actions by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6244
- feat(ui): regional prompting by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6182
- feat(ui): regional prompting followups by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6247
- feat(ui): regional prompting followups 2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6249
- feat(ui): regional prompting followups 3 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6256
- chore: v4.2.0a1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6254
- feat(ui): regional prompting followups 4 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6257
- fix(ui): disabled ip adapters applied to regional control by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6258
- fix: :bug: handle trigger phrase form submit events by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/6253
- Remove dangling temporary directories from
outputs/tensorsat startup time by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6246 - Fix Gradient Mask (Canvas) Inpaint Model Support by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/6205
- fix: update ip adapter starter models path by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/6262
- fix: update SDXL IP Adpater starter model to be ViT-H by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/6263
- feat(ui): regional control canvas feedback by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6266
- chore: v4.2.0a3 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6269
- feat: controlnet util refresh by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6271
- Update README.md by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/6270
- docs: remove references to config script in CONFIGURATION.md by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6275
- feat(mm): support sdxl ckpt inpainting models by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6281
- fix(nodes): denoise latents accepts and validates CFG lists as input by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/6283
- feat(mm): handle PC_PATH_MAX on external drives on macOS by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6292
- feat: control adapters in control layers canvas by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6287
- chore: v4.2.0a4 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6295
- Add TCD scheduler by @l0stl0rd in https://github.com/invoke-ai/InvokeAI/pull/6086
- feat(ui): refactor Control Adapters in Control Layers by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6298
- fix(nodes): fix constraints in cnet processors by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6299
- feat(ui): CL metadata, viewer, img2img by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6300
- chore: v4.2.0b1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6303
- Update TRAINING.md by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/6294
- Update Installation Docs by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/6296
- feat(ui): cache mask images, fix viewer getting stuck bug by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6304
- feat: improve the switch states of the control layers / viewer area by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/6305
- feat(ui): control layers fixes/enhancements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6307
- feat(ui): more control layers enhancements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6311
- feat(ui): control layers styling, floating image viewer by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6316
- fix(ui): stuck viewer, remover floating viewer, viewer switching logic, layer count by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6320
- chore: v4.2.0b2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6317
- feat(ui): move img2img strength out of advanced on canvas by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6321
- feat(ui): layers metadata recall by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6322
- switch to generation tab when someone sends to img2img by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6323
- feat(ui): add
data-testids, fix canvas toolbar align, add invert scroll checkbox to CL settings by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6324 - fix(ui): last-minute CL fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6326
- chore: v4.2.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6328
New Contributors
- @l0stl0rd made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6086
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v4.1.0…v4.2.0
v4.2.1
This patch release brings a handful of fixes, plus docs and translation updates.
If you missed v4.2.0, please review its release notes to get up to speed on Control Layers.
📈 Patch Nodes for v4.2.1
- Fixed seamless not being perfectly seamless sometimes
- Fixed Control Adapter processor cancellation jank
- Fixed Depth Anything processor drop-down jank
- Fixed Control Adapter layers preventing interactions with layers below them (e.g. cannot move a Regional Guidance layer)
- Fixed two issues with model cover images
- When editing a model, the cover image disappeared, but reappeared on refresh
- When converting a model to diffusers, the cover image was lost forever
- Fixed NSFW checker for new installs
- Prevent errors when using T2I adapter
- May not invoke when image dimensions are not a multiple of 64
- Control Adapter model select differentiates between ControlNet and T2I Adapter models
- Reworked Invoke button tooltip describing why you may not Invoke when there is a configuration issue
- Fixed translations for canvas layer select
- Fixed Invoke button not showing loading state while queuing
- Docs update @gogurtenjoyer
- Translation updates @Harvester62 @Vasyanator @Pfannkuchensack @flower-elf @gallegonovato
💾 Installation and Updating
To install or update to v4.2.1, download the installer and follow the installation instructions.
To update, select the same installation location. Your user data (images, models, etc) will be retained.
Missing models after updating from v3 to v4
See this FAQ.
What’s Changed
- Update INSTALL_REQUIREMENTS.md - ‘linux only’ under AMD for SDXL. by @gogurtenjoyer in https://github.com/invoke-ai/InvokeAI/pull/6329
- fix: fix seamless by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/6344
- fix(ui): CA processor cancellation by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6336
- feat(ui): protect against t2i adapters with incompatible image dimensions by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6342
- fix(ui): jank in depthanything model size select by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6335
- fix(ui): use translations for canvas layer select by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6357
- fix(ui): disable listening on CA and II layers by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6332
- fix(api): model cover image lost by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6337
- fix(ui): invoke button shows loading while queueing by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6359
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6245
- feat(backend): fix nsfw checker catch-22 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6360
- chore: v4.2.1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6362
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v4.2.0…v4.2.1
v4.2.2
This release brings many fixes and enhancements, including two long-awaited features: undo/redo in workflows and load workflow from any image.
If you missed v4.2.0, please review its release notes to get up to speed on Control Layers.
📈 Patch Nodes for v4.2.2
✨ Undo/redo in Workflows
Undo/redo redo now available in the workflow editor. There’s some amount of tuning to be done with how actions are grouped.
For example, when you move a node around, do we allow you to undo each pixel of movement, or do we group the position changes as one action? When you are typing a prompt, do we undo each letter, word, or the whole change at once?
Currently, we group like changes together. It’s possible some things are grouped when they shouldn’t be, or should be grouped but are not. Your feedback will be very useful in tuning the behaviour so it un-does the right changes.
✨ Load Workflow from Any Image
Starting with v4.2.2, graphs are embedded in all images generated by Invoke. Images generated in the workflow editor also have the enriched workflow embedded separately. The Load Workflow button will load the enriched workflow if it exists, else it will load the graph.
You’ll see a new Graph tab in the metadata viewer showing the embedded graph.
Graph vs Workflow
Graphs are used by the backend and contain minimal data. Workflows are an enrich data format that includes a representation of the graph plus extra information, including things like:
- Title, description, author, etc
- Node positions
- Custom node and field labels
This new feature embeds the graph in every image - including images generated on the Generation or Canvas tabs.
Canvas Caveat
This functionality is available only for individual canvas generations - not the full composition. Why is that?
Consider what goes into a full canvas composition. It’s the product of any number of graphs, with any amount of drawing and erasing between each graph execution. It’s not possible to consolidate this into a single graph.
When you generate on canvas, your images for the given bounding box are added to a staging area, which allows you to cycle through images and commit or discard the image. The staging area also allows you to save a candidate generation. It is these images that can be loaded as a workflow, because they are the product of a single graph execution.
👷 Other Fixes and Enhancements
- Min/max LoRA weight values extended (-10 to +10) @H0onnn
- Denoising strength and layer opacity are retained when sending image to initial image @steffy-lo
- SDXL T2I Adapter only blocks invoking when dimensions aren’t multiple of 32 (was erroneously 64)
- Improved UX when manipulating edges in workflows
- Connected inputs on nodes collapse, hiding the nonfunctional UI component
- Use
ctrl/cmd-shift-vto paste copied nodes with input edges - Docs updates @hsm207
- Fix: visible seams when outpainting
- Fix: edge case that could prevent workflows from loading if user hadn’t opened the workflows tab yet
- Fix: minor jank/inefficiency with control adapter auto-process (control layers only)
- Internal: utility to create graph objects without going crazy
- Internal: rewritten connection validation logic for workflows with full test coverage
- Internal: rewritten edge connection interactions
- Internal: revised field type format
💾 Installation and Updating
To install or update to v4.2.2, download the installer and follow the installation instructions.
To update, select the same installation location. Your user data (images, models, etc) will be retained.
Missing models after updating from v3 to v4
See this FAQ.
What’s Changed
- fix: Fix Outpaint not applying the expanded mask correctly by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/6370
- feat(ui): graph builder by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6361
- docs: fix install reqs link by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6374
- feat(ui): SDXL clip skip by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6378
- [Refactor] Update min and max values for LoRACard weight input by @H0onnn in https://github.com/invoke-ai/InvokeAI/pull/6383
- feat(ui): workflows undo/redo by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6379
- feat(ui): prevent connections to direct-only inputs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6387
- feat(ui): copy/paste input edges when copying node by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6385
- fix(ui): allow image dims multiple of 32 with SDXL and T2I adapter by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6366
- revert(ui): SDXL clip skip by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6389
- fix(ui): field ordering & display by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6390
- feat(ui): store workflow in generation tab images by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6384
- feat(worker): add nullable user_id and project_id to invocation error events by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6388
- docs: fix link to. install reqs by @hsm207 in https://github.com/invoke-ai/InvokeAI/pull/6392
- fix(ui): control adapter auto-process jank by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6393
- feat(ui): connection validation rework by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6386
- fix(ui): edge case resulting in no node templates when loading workfl… by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6397
- feat: write-only canvas metadata by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6404
- fix(ui): fix t2i adapter dimensions error message by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6391
- feat(ui): better field types by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6396
- fix(ui): workflow edges not saved by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6403
- [#6351] ui: retain denoise strength and opacity when changing image by @steffy-lo in https://github.com/invoke-ai/InvokeAI/pull/6407
- chore: v4.2.2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6410
New Contributors
- @H0onnn made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6383
- @hsm207 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6392
- @steffy-lo made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6407
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v4.2.1…v4.2.2
v4.2.2post1
This release brings many fixes and enhancements, including two long-awaited features: undo/redo in workflows and load workflow from any image.
If you missed v4.2.0, please review its release notes to get up to speed on Control Layers.
📈 Patch Nodes for v4.2.2post1
v4.2.2 had a critical bug related to notes nodes & missing templates in workflows. That is fixed in v4.2.2post1.
✨ Undo/redo in Workflows
Undo/redo redo now available in the workflow editor. There’s some amount of tuning to be done with how actions are grouped.
For example, when you move a node around, do we allow you to undo each pixel of movement, or do we group the position changes as one action? When you are typing a prompt, do we undo each letter, word, or the whole change at once?
Currently, we group like changes together. It’s possible some things are grouped when they shouldn’t be, or should be grouped but are not. Your feedback will be very useful in tuning the behaviour so it un-does the right changes.
✨ Load Workflow from Any Image
Starting with v4.2.2, graphs are embedded in all images generated by Invoke. Images generated in the workflow editor also have the enriched workflow embedded separately. The Load Workflow button will load the enriched workflow if it exists, else it will load the graph.
You’ll see a new Graph tab in the metadata viewer showing the embedded graph.
Graph vs Workflow
Graphs are used by the backend and contain minimal data. Workflows are an enrich data format that includes a representation of the graph plus extra information, including things like:
- Title, description, author, etc
- Node positions
- Custom node and field labels
This new feature embeds the graph in every image - including images generated on the Generation or Canvas tabs.
Canvas Caveat
This functionality is available only for individual canvas generations - not the full composition. Why is that?
Consider what goes into a full canvas composition. It’s the product of any number of graphs, with any amount of drawing and erasing between each graph execution. It’s not possible to consolidate this into a single graph.
When you generate on canvas, your images for the given bounding box are added to a staging area, which allows you to cycle through images and commit or discard the image. The staging area also allows you to save a candidate generation. It is these images that can be loaded as a workflow, because they are the product of a single graph execution.
👷 Other Fixes and Enhancements
- Min/max LoRA weight values extended (-10 to +10) @H0onnn
- Denoising strength and layer opacity are retained when sending image to initial image @steffy-lo
- SDXL T2I Adapter only blocks invoking when dimensions aren’t multiple of 32 (was erroneously 64)
- Improved UX when manipulating edges in workflows
- Connected inputs on nodes collapse, hiding the nonfunctional UI component
- Use
ctrl/cmd-shift-vto paste copied nodes with input edges - Docs updates @hsm207
- Fix: visible seams when outpainting
- Fix: edge case that could prevent workflows from loading if user hadn’t opened the workflows tab yet
- Fix: minor jank/inefficiency with control adapter auto-process (control layers only)
- Internal: utility to create graph objects without going crazy
- Internal: rewritten connection validation logic for workflows with full test coverage
- Internal: rewritten edge connection interactions
- Internal: revised field type format
💾 Installation and Updating
To install or update to v4.2.2post1, download the installer and follow the installation instructions.
To update, select the same installation location. Your user data (images, models, etc) will be retained.
Missing models after updating from v3 to v4
See this FAQ.
What’s Changed
- fix: Fix Outpaint not applying the expanded mask correctly by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/6370
- feat(ui): graph builder by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6361
- docs: fix install reqs link by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6374
- feat(ui): SDXL clip skip by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6378
- [Refactor] Update min and max values for LoRACard weight input by @H0onnn in https://github.com/invoke-ai/InvokeAI/pull/6383
- feat(ui): workflows undo/redo by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6379
- feat(ui): prevent connections to direct-only inputs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6387
- feat(ui): copy/paste input edges when copying node by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6385
- fix(ui): allow image dims multiple of 32 with SDXL and T2I adapter by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6366
- revert(ui): SDXL clip skip by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6389
- fix(ui): field ordering & display by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6390
- feat(ui): store workflow in generation tab images by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6384
- feat(worker): add nullable user_id and project_id to invocation error events by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6388
- docs: fix link to. install reqs by @hsm207 in https://github.com/invoke-ai/InvokeAI/pull/6392
- fix(ui): control adapter auto-process jank by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6393
- feat(ui): connection validation rework by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6386
- fix(ui): edge case resulting in no node templates when loading workfl… by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6397
- feat: write-only canvas metadata by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6404
- fix(ui): fix t2i adapter dimensions error message by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6391
- feat(ui): better field types by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6396
- fix(ui): workflow edges not saved by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6403
- [#6351] ui: retain denoise strength and opacity when changing image by @steffy-lo in https://github.com/invoke-ai/InvokeAI/pull/6407
- chore: v4.2.2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6410
- fix(ui): crash when using notes nodes or missing node/field templates by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6412
New Contributors
- @H0onnn made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6383
- @hsm207 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6392
- @steffy-lo made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6407
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v4.2.1…v4.2.2post1
v4.2.3
If you missed v4.2.0, please review its release notes to get up to speed on Control Layers.
📈 Patch Nodes for v4.2.3
-
Spellcheck is re-enabled on prompt boxes
-
DB maintenance script removed from launcher (it currently does not work)
-
Reworked toasts. When a toast of a given type is triggered, if another toast of that type is already being displayed, it is updated instead of creating another toast. The old behaviour was painful in situations where you queue up many generations that all immediately fail, or install a lot of models at once. In these situations, you’d get a wall of toasts. Now you get only 1.
-
Fixed: Control layer checkbox correctly indicates that it enables or disables the layer
-
Fixed: Disabling Regional Guidance layers didn’t work
-
Fixed: Excessive warnings in terminal when uploading images
-
Fixed: When loading a workflow, if an image, board or model for an input for that workflow no longer exists, the workflow will execute but error.
For example, say you save a workflow that has a certain model set for a node, then delete the model. When you load that workflow, the model is missing but the workflow doesn’t detect this. You can run the workflow, and it will fail when it attempts to use the nonexistent model.
With this fix, when a workflow is loaded, we check for the existence of all images, boards and models referenced by the workflow. If something is missing, that input is reset.
-
Docs updates @hsm207
-
Translations updates @gallegonovato @Harvester62 @dvanzoerlandt
💾 Installation and Updating
To install or update to v4.2.3, download the installer and follow the installation instructions.
To update, select the same installation location. Your user data (images, models, etc) will be retained.
Missing models after updating from v3 to v4
See this FAQ.
What’s Changed
- docs: fix link to Invoke AI’s models site by @hsm207 in https://github.com/invoke-ai/InvokeAI/pull/6413
- feat(ui): workflow resource check by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6417
- feat(ui): restore spellcheck on prompt boxes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6418
- feat(ui): toasts rework by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6415
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6372
- Update error boundary to link to support ticket for non-local by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6422
- fix(ui): regional guidance layers not disabling correctly by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6427
- fix: remove db maintenance script from launcher by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6431
- feat(api): downgrade metadata parse warnings to debug by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6426
- fix(ui):
'undefined'being used for metadata on uploaded images by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6433 - fix(ui): initial image layers always ignored by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6434
- chore: v4.2.3 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6432
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6428
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v4.2.2post1…v4.2.3
v4.2.4
v4.2.4 brings one frequently requested feature and a host of fixes and improvements, mostly focused on performance and internal code quality.
If you missed v4.2.0, please review its release notes to get up to speed on Control Layers.
Image Comparison
The image viewer now supports comparing two images using a Slider, Side-by-Side or Hover UI.
To enter the comparison UI, select a compare image using one of these methods:
- Right click an image and click
Select for Compare. - Hold
alt(optionon mac) while clicking a gallery image to select it as the compare image. - Hold
alt(optionon mac) and use the arrow keys to select the comparison image.
Press C to swap the images and M to cycle through the comparison modes. Press Escape or Z to exit the comparison UI and return to the single image viewer.
When comparing images of different aspect ratios or sizes, the compare image will be stretched to fit the viewer image. Disable the toggle button at the top-left to instead contain the compare image within the viewer image.
https://github.com/invoke-ai/InvokeAI/assets/4822129/4bcfb9c4-c31c-4e62-bfa4-510ab34b15c9
📈 Patch Nodes for v4.2.4
Enhancements
- The queue item detail view now updates when it finishes. The finished (completed, failed or canceled) session is displayed.
- Updated translations. @Harvester62 @Vasyanator @BrunoCdot @gallegonovato @Atalanttore @hugoalh
- Docs updates. @hsm207 @cdpath
Fixes
- Fixed problem when using a latents from the blend latents node for denoising with certain schedulers which made images drastically different, even with an alpha of 0.
- Fixed unnecessarily strict constraints for ControlNet and IP Adapter weights in the Control Layers UI. This prevented layers with weights outside the range of 0-1 from recalling.
- Fixed error when editing non-main models (e.g. LoRAs).
- Fixed the SDXL prompt concat flag from not being set when recalling prompts.
- Fixed model metadata recall not working when a model has a different key. This can happen if the model was uninstalled and reinstalled. When recalling, we fall back on the model’s name, base and type, if the key doesn’t match an existing model.
Performance improvements
Big thanks to @lstein for these very impactful improvements!
- Substantially improved performance when moving models between RAM and VRAM. For example, an SDXL model RAM -> VRAM -> RAM roundtrip tested at ~0.8s, down from ~3s. That’s about 75% faster!
- Fixed bug with VRAM lazy offloading which caused inefficient VRAM cache usage.
- Reduced VRAM requirements when using IP Adapter.
Internal changes
- Modularize the queue processor.
- Use pydantic models for events instead of plain dicts.
- Improved handling of pydantic invocation unions.
- Updated ML dependencies. @Malrama
💾 Installation and Updating
To install or update to v4.2.4, download the installer and follow the installation instructions.
To update, select the same installation location. Your user data (images, models, etc) will be retained.
Missing models after updating from v3 to v4
See this FAQ.
Error during installation ModuleNotFoundError: No module named 'controlnet_aux'
See this FAQ
What’s Changed
- feat: update queue items session on complete by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6419
- Break apart session processor and the running of each session into se… by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6382
- fix(ui): isLocal erroneously hardcoded in error toast by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6436
- fix typo by @cdpath in https://github.com/invoke-ai/InvokeAI/pull/6255
- Optimize RAM to VRAM transfer by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6312
- docs: fix a typo by @hsm207 in https://github.com/invoke-ai/InvokeAI/pull/6395
- Update deps to their lastest versions by @Malrama in https://github.com/invoke-ai/InvokeAI/pull/6327
- fix(ui): parameter not set translation by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6441
- refactor(events): use pydantic schemas for events by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/5748
- feat(events): restore full invocation in event payloads by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6447
- fix(ui): edit variant for main models only by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6446
- feat(events): register event schemas by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6448
- feat(events): add missing classvar to events, add validators for deserialization of events by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6451
- Update TI handling for compatibility with transformers 4.40.0 by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6449
- [MM]Fix bug in offload_unlocked_models() call by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6450
- docs: add FAQ for fixing controlnet_aux by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6459
- fix(ui): remove overly strict constraints on control adapter weight by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6460
- fix: openapi stuff by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6454
- feat(ui): image compare by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6464
- [feat] Reduce peak VRAM memory usage of IP adapter by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6453
- fix(ui): metadata recall fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6480
- fix(nodes): blend latents with weight=0 with DPMSolverSDEScheduler by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6482
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6440
- chore: v4.2.4 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6485
New Contributors
- @cdpath made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6255
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v4.2.3…v4.2.4
v4.2.6
v4.2.6 includes a handful of fixes and improvements, plus three major changes:
- Gallery updates
- Tiled upscaling via
MultiDiffusion - Checkpoint models work without conversion to diffusers
Gallery Updates
We’ve made some changes to the gallery, adding features, improving the performance of the app and reducing memory usage. The changes also fix a number of bugs relating to stale data - for example, a board not updating as expected after moving an image to it.
Thanks to @chainchompa and @maryhipp for working on this major effort.
Pagination & Selection
Infinite scroll is dead, long live infinite scroll!
The gallery is now paginated. Selection logic has been updated to work with pagination. An indicator shows how many images are selected and allows you to clear the selection entirely. Arrow keys still navigate.
https://github.com/invoke-ai/InvokeAI/assets/4822129/128c998a-efac-41e5-8639-b346da78ca5b
The number of images per page is dynamically calculated as the panel is resized, ensuring the panel is always filled with images.
Boards UI Refresh
The bulky tiled boards grid has been replaced by a scrollable list. The boards list panel is now a resizable, collapsible panel.
https://github.com/invoke-ai/InvokeAI/assets/4822129/2dd7c316-36e3-4f8d-9d0c-d38d7de1d423
Boards and Image Search
Search for boards by name and images by metadata. The search term is matched against the image’s metadata as a string. We landed on full-text search as a flexible yet simple implementation after considering a few methods for search.
https://github.com/invoke-ai/InvokeAI/assets/4822129/ebe2ecfe-edb4-4e09-aef8-212495b32d65
Archived Boards
Archive a board to hide it from the main boards list. This is purely an organizational enhancement. You can still interact with archived boards as you would any other board.
https://github.com/invoke-ai/InvokeAI/assets/4822129/7033b7a1-1cb7-4fa0-ae30-5e1037ba3261
Image Sorting
You can now change the sort for images to show oldest first. A switch allows starred images to be placed in the list according to their age, instead of always showing them first.
https://github.com/invoke-ai/InvokeAI/assets/4822129/f1ec68d0-3ba5-4ed0-b1e8-8e8bc9ceb957
Tiled Upscaling via MultiDiffusion
MultiDiffusion is a fairly straightforward technique for tiled denoising. The gist is similar to other tiled upscaling methods - split the input image up in to tiles, process each independently, and stitch them back together. The main innovation for MultiDiffusion is to do this in latent space, blending the tensors together continuously. This results in excellent consistency across the output image, with no seams.
This feature is exposed as a Tiled MultiDiffusion Denoise Latents node, currently classified as a beta version. It works much the same as the OG Denoise Latents node. You can find an example workflow in the workflow library’s default workflows.
We are still thinking about to expose this in the linear UI. Most likely, we expose this with very minimal settings. If you want to tweak it, use the workflow.
Thanks to @RyanJDick for designing and implementing MultiDiffusion.
How to use it
This technique is fundamentally the same as normal img2img. Appropriate use of conditioning and control will greatly improve the output. The one hard requirement is to use the Tile ControlNet model.
Besides that, here are some tips from our initial testing:
- Use a detail-adding or style LoRAs.
- Use a base model best suited for the desired output style.
- Prompts make a difference.
- The initial upscaling method makes a difference.
- Scheduler makes a difference. Some produce softer outputs.
VRAM Usage
This technique can upscale images to very large sizes without substantially increasing VRAM usage beyond what you’d see for a “normal” sized generation. The VRAM bottlenecks then become the first VAE encode (Image to Latents) and final VAE decode (Latents to Image) steps.
You may run into OOM errors during these steps. The solution is to enable tiling using the toggle on the Image to Latents and Latents to Image nodes. This allows the VAE operations to be done piecewise, similar to the tiled denoising process, without using gobs of VRAM.
There’s one caveat - VAE tiling often introduces inconsistency across tiles. Textures and colors may differ from tile to tile. This is a function of diffusers’ handling of VAE tiling, not the new tiled denoising process. We are investigating ways to improve this.
Takeaway: If your GPU can handle non-tiled VAE encode and decode for a given output size, use that for best results.
Checkpoint models work without conversion to diffusers
The required conversion of checkpoint format models to diffusers format has long been a pain point. The diffusers library now supports loading single-file (checkpoint) models directly, and we have removed the mandatory checkpoint-to-diffusers conversion step.
The main user-facing change is that there is no longer a conversion cache directory.
Major thanks to @lstein for getting this working.
📈 Patch Nodes for v4.2.6
Enhancements
- When downloading image metadata, graphs or workflows, the JSON file includes the image name and type of data. Thanks @jstnlowe!
- Add
clear_queue_on_startupconfig setting to clear problematic queues. This is useful for a rare edge case where your queue is full of items that somehow crash the app. Set this to true, and the queue will clear before it has time to attempt to execute the problematic item. Thanks @steffy-lo! - Performance and memory efficiency improvements for LoRA patching and model offloading.
- Addition of a simplified model installation methods to the Invocation API:
download_and_cache_model,load_local_modelandload_remote_model. These methods allow models to be used without needing them to be added to the model manager. For example, we are now using these methods to load ESRGAN models. - Support for probing and loading SDXL VAE checkpoint.
- Updated gallery UI.
- Checkpoint models work without conversion to diffusers.
- When using a VAE in tiled mode, you may now select the tile size.
Fixes
- Fix handling handling of 0-step denoising process.
- If a control image’s processed version is missing when the app loads, it is now re-processed.
- Fixed an issue where a model’s size could be misreported as 0, possibly causing memory issues.
- Fixed an issue where images - especially large images - may fail to delete.
Performance improvements
- Improved LoRA patching.
- Improved RAM <-> VRAM model transfer performance.
Internal changes
- The
DenoiseLatentsInvocationhas had its internal methods split up to support tiled upscaling viaMultiDiffusion. This included some amount of file shuffling and renaming. Theinvokeaipackage’s exported classes should still be the same. Please let us know if this has broken an import for you. - Internal cleanup, intending to eliminate circular import issues. There’s a lot left to do for this issue, but we are making progress.
💾 Installation and Updating
To install or update to v4.2.6, download the installer and follow the installation instructions.
To update, select the same installation location. Your user data (images, models, etc) will be retained.
Missing models after updating from v3 to v4
See this FAQ.
Error during installation ModuleNotFoundError: No module named 'controlnet_aux'
See this FAQ
What’s Changed
- Prefixed JSON filenames with the image UUID by @jstnlowe in https://github.com/invoke-ai/InvokeAI/pull/6486
- feat(ui): control layers internals cleanup by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6487
- LoRA patching optimization by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6439
- fix(ui): re-process control image if processed image is missing on page load by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6494
- Split up latent.py (code reorganization, no functional changes) by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6491
- Add simplified model manager install API to InvocationContext by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6132
- fix: Some imports from previous PR’s by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/6501
- Improve RAM<->VRAM memory copy performance in LoRA patching and elsewhere by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6490
- Fix
DEFAULT_PRECISIONhandling by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6492 - added route to install huggingface models from model marketplace by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/6515
- Model hash validator by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6520
- Tidy
SilenceWarningscontext manager by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6493 - [#6333] Add clear_queue_on_startup config to clear problematic queues by @steffy-lo in https://github.com/invoke-ai/InvokeAI/pull/6502
- [MM] Add support for probing and loading SDXL VAE checkpoint files by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6524
- Add
TiledMultiDiffusionDenoiseLatentsinvocation (for upscaling workflows) by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6522 - Update prevention exception message by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/6543
- Fix handling handling of 0-step denoising process by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6544
- chore: bump version v4.2.5 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6547
- feat(ui): gallery pagination by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6527
- fix(backend): mps should not use
non_blockingby @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6549 - Load single-file checkpoints directly without conversion by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6510
- feat(ui, api): archive boards by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6546
- Update controlnet starters by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/6537
- feat(ui, api): gallery sort by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6551
- fix(app): fix SQL query w/ enum for python 3.11 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6557
- feat(ui, api): gallery search by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6561
- Update README.md by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/6519
- fix(ui): don’t mess up redux actions if 403 gets thrown by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6567
- (ui) clarify auto-add logic by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6566
- feat(ui): gallery ux by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6568
- Make the VAE tile size configurable for tiled VAE by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6555
- fix(ui): reset page when search term changes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6569
- Fix access token lookup for model downloads by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6570
- fix sort order by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6573
- Update pnpm github action by @ebr in https://github.com/invoke-ai/InvokeAI/pull/6574
- [MM bugfix] Put model install errors on the event bus by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6578
- Fix some models treated as having size 0 in the model cache by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6571
- Enforce absolute imports with ruff by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6576
- Delete unused duplicate libc_util.py file by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6579
- Update the PR template QA instructions by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6580
- Fix circular imports related to SCHEDULER_NAME_VALUES by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6582
- Fixed 404 error on latest release link (line 16): by @ddm21 in https://github.com/invoke-ai/InvokeAI/pull/6583
- Demote error log to warning for models treated as having size 0 by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6589
- Overhaul docker documentation and fix minor bugs by @ebr in https://github.com/invoke-ai/InvokeAI/pull/6540
- Boards UI update and add support for private boards by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/6588
- More Styling Updates for Boards and Gallery UI by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/6592
- chore: bump version to 4.2.6a1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6595
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6498
- Do not crash if there are invalid model configs in the DB by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6593
- fix(ui): gallery followups by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6601
- fix(app): vae tile size field description by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6600
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6604
- fix(api): delete image race condition by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6607
- chore: bump version to 4.2.6rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6608
- fix(ui): clear selection when deleting last image in board by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6612
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6616
- chore: update default workflows by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6621
- fix(ui): boards cut off when search open by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6619
- chore: bump version to v4.2.6 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6620
New Contributors
- @jstnlowe made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6486
- @ddm21 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6583
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v4.2.4…v4.2.6
v4.2.6post1
v4.2.6post1 fixes issues some users may experience with memory management and sporadic black image outputs.
Please see the v4.2.6 release for full release notes.
💾 Installation and Updating
To install or update to v4.2.6post1, download the installer and follow the installation instructions.
To update, select the same installation location. Your user data (images, models, etc) will be retained.
Missing models after updating from v3 to v4
See this FAQ.
Error during installation ModuleNotFoundError: No module named 'controlnet_aux'
See this FAQ
What’s Changed
- fix(backend): revert non-blocking device transfer by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6624
- chore: bump version to 4.2.6post1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6625
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v4.2.6…v4.2.6post1
v4.2.7
v4.2.7 includes gallery improvements and some major features focused on upscaling.
Upscaling
We’ve added a dedicated upscaling tab, support for custom upscaling models, and some new nodes.
Thanks to @RyanJDick (backend implementation), @chainchompa (frontend) and @maryhipp (frontend) for working on this!
Dedicated Upscaling Tab
The new upscaling tab provides a simple and powerful UI to Invoke’s MultiDiffusion implementation. This builds on the workflow released in v4.2.6, allowing for memory-efficient upscaling to huge output image sizes.
We’re pretty happy with the results!
4x scale,
4x_NMKD-Siax_200kupscale model,Deliberate_v5SD1.5 model,KDPM 2 scheduler @ 30 steps, all other settings default
Requirements
You need 3 models installed to use this feature:
- An upscale model for the first pass upscale
- A main SD model (SD1.5 or SDXL) for the image-to-image
- A tile ControlNet model of the same model architecture as your main SD model
If you are missing any of these, you’ll see a warning directing you to the model manager to install them. You can search the starter models for upscale, main, and tile to get you started.
Tips
- The main SD model architecture has the biggest impact on VRAM usage. For example, SD1.5 @ 2k needs just under 4GB, while SDXL @ 2k needs just under 9GB. VRAM usage increases a small amount as output size increases - SD1.5 @ 8k needs ~4.5GB while SDXL @ 8k needs ~10.5GB.
- The upscale and main SD model choices matter. Choose models best suited to your input image or desired output characteristics.
- Some schedulers work better than others.
KDPM 2is a good choice. - LoRAs - like a detail-adding LoRA - can make a big impact.
- Higher
Creativityvalues give the SD model more leeway in creating new details. This parameter controls denoising start and end percentages. - Higher
Structurevalues tell the SD model to stick closer to the input image’s structure. This parameter controls the tile ControlNet.
Custom Upscaling Models
You can now install and use custom upscaling models in Invoke. The excellent spandrel library handles loading and running the models.
spandrel can do a lot more than upscaling - it supports a wide range of “image to image” models. This includes single-image super resolution like ESRGAN (upscalers) but also things like GFPGAN (face restoration) and DeJPEG (cleans up JPEG compression artifacts).
A complete list of supported architectures can be found here.
Note: We have not enabled the restrictively-licensed architectures, which are denoted with a
+symbol in the list.
Installing Models
We’ve added a few popular upscaling models to the Starter Models tab in the Model Manager - search for “upscale” to find them.
You can install models found online via the Model Manager, just like any other model. OpenModelDB is a popular place to get these models. For most of them, you can copy the model’s download link and paste in into the Model Manager to install.
Nodes
Two nodes have been added to support processing images with spandrel - be that upscaling or any of the other tasks these models support.
Image-to-Image- Runs the selected model without any extra processing.Image-to-Image (Autoscale)- Runs the selected model repeatedly until the desired scale is reached. This node is intended for upscaling models specifically, providing some useful extra functionality:- If the model overshoots the target scale, the final image will be downscaled to the target scale with Lanczos resampling.
- As a convenience, the output image width and height can be fit to a multiple of 8, as is required for SD. This will only resize down, and may change the aspect ratio slightly.
- If the model doesn’t actually upscale the image, the
scaleparameter will be ignored.
Gallery Improvements
Thanks to @maryhipp and @chainchompa for continued iteration on the gallery!
- Cleaner boards UI.
- Improved boards and image search UI.
- Fixed issues where board counts don’t update when images are moved between boards.
- Added a “Jump” button to allow you to skip pages of the gallery
<video src=https://github.com/user-attachments/assets/b834cc36-995a-464e-af3f-68cf3b38818f>
Other Changes
- Enhancement: When installing starter models, the description is carried over. Thanks @lstein!
- Enhancement: Updated translations.
- Fix: Model unpatching when running on CPU, causing bad/no outputs.
- Fix: Occasional visible seams on images with smooth textures, like skies.
MultiDiffusiontiling now uses gradient blending to mitigate this issue. - Fix: Model names overflow the model selection drop-downs.
- Internal: Backend SD pipeline refactor (WIP). This will allow contributors to add functionality to Invoke more easily. This will be behind a feature flag until the refactor is complete and tested. Thanks to @StAlKeR7779 for leading the effort, with major contributions from @dunkeroni and @RyanJDick.
Installation and Updating
To install or update to v4.2.7, download the installer and follow the installation instructions.
To update, select the same installation location. Your user data (images, models, etc) will be retained.
Missing models after updating from v3 to v4
See this FAQ.
Error during installation ModuleNotFoundError: No module named 'controlnet_aux'
See this FAQ
What’s Changed
- Add support for Spandrel Image-to-Image models (e.g. ESRGAN, Real-ESRGAN, Swin-IR, DAT, etc.) by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6556
- Add tiling to SpandrelImageToImageInvocation by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6594
- Add Spandrel upscale starter models by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6605
- Fix model unpatching process when running on CPU by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6631
- Add gradient blending to tile seams in MultiDiffusion by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6635
- Base of modular backend by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/6606
- add sdxl tile to starter models by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6634
- Fix function call that we forgot to update in #6606 by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6636
- Bump fastapi-events dependency by @ebr in https://github.com/invoke-ai/InvokeAI/pull/6644
- fix: update uncategorized board totals when deleting and moving images by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/6646
- feat(ui): upscaling tab by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6633
- Math Updates by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/6648
- Modular backend - add rescale cfg by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/6640
- Modular backend - add FreeU by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/6641
- Modular backend - add ControlNet by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/6642
- feat(ui): add upsells for pro edition to settings menu by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6650
- Update Simple Upscale Button to work with spandrel models by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/6649
- Simple upscale bugfixes by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/6655
- fix(ui): settings menu layout by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6654
- [MM2] Use typed ModelRecordChanges for model_install() rather than untyped dict by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6645
- fix(ui): restore pnpm-lock.yaml by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6659
- feat(ui): upscaling & ad-hoc post-processing misc by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6658
- fix(ui): model select overflowing when model names are too long by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6660
- feat(ui): more gallery UX updates by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6652
- fix(ui): few cases where board totals don’t updated when moving by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6665
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6653
- chore: bump version v4.2.7rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6670
- feat(ui): add jump to option for gallery pagination by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6668
- feat(ui): info popovers on by default by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6673
- fix(ui): copied edges must have new ids set by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6676
- fix(backend): add refiner to single-file
load_classesby @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6675 - fix(ui): model manager goes blank by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6679
- feat(ui): upscale folllow-ups by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6671
- feat(ui): update qr code cnet starter model by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6680
- feat(app): update default workflows by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6681
- bump version to 4.2.7 by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6687
- Update docker image to use pnpm version 8 by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6689
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v4.2.6post1…v4.2.7
v4.2.7post1
🚨 v4.2.7post1 resolves an issue with Windows installs. 🚨
v4.2.7 includes gallery improvements and some major features focused on upscaling.
Upscaling
We’ve added a dedicated upscaling tab, support for custom upscaling models, and some new nodes.
Thanks to @RyanJDick (backend implementation), @chainchompa (frontend) and @maryhipp (frontend) for working on this!
Dedicated Upscaling Tab
The new upscaling tab provides a simple and powerful UI to Invoke’s MultiDiffusion implementation. This builds on the workflow released in v4.2.6, allowing for memory-efficient upscaling to huge output image sizes.
We’re pretty happy with the results!
4x scale,
4x_NMKD-Siax_200kupscale model,Deliberate_v5SD1.5 model,KDPM 2 scheduler @ 30 steps, all other settings default
Requirements
You need 3 models installed to use this feature:
- An upscale model for the first pass upscale
- A main SD model (SD1.5 or SDXL) for the image-to-image
- A tile ControlNet model of the same model architecture as your main SD model
If you are missing any of these, you’ll see a warning directing you to the model manager to install them. You can search the starter models for upscale, main, and tile to get you started.
Tips
- The main SD model architecture has the biggest impact on VRAM usage. For example, SD1.5 @ 2k needs just under 4GB, while SDXL @ 2k needs just under 9GB. VRAM usage increases a small amount as output size increases - SD1.5 @ 8k needs ~4.5GB while SDXL @ 8k needs ~10.5GB.
- The upscale and main SD model choices matter. Choose models best suited to your input image or desired output characteristics.
- Some schedulers work better than others.
KDPM 2is a good choice. - LoRAs - like a detail-adding LoRA - can make a big impact.
- Higher
Creativityvalues give the SD model more leeway in creating new details. This parameter controls denoising start and end percentages. - Higher
Structurevalues tell the SD model to stick closer to the input image’s structure. This parameter controls the tile ControlNet.
Custom Upscaling Models
You can now install and use custom upscaling models in Invoke. The excellent spandrel library handles loading and running the models.
spandrel can do a lot more than upscaling - it supports a wide range of “image to image” models. This includes single-image super resolution like ESRGAN (upscalers) but also things like GFPGAN (face restoration) and DeJPEG (cleans up JPEG compression artifacts).
A complete list of supported architectures can be found here.
Note: We have not enabled the restrictively-licensed architectures, which are denoted with a
+symbol in the list.
Installing Models
We’ve added a few popular upscaling models to the Starter Models tab in the Model Manager - search for “upscale” to find them.
You can install models found online via the Model Manager, just like any other model. OpenModelDB is a popular place to get these models. For most of them, you can copy the model’s download link and paste in into the Model Manager to install.
Nodes
Two nodes have been added to support processing images with spandrel - be that upscaling or any of the other tasks these models support.
Image-to-Image- Runs the selected model without any extra processing.Image-to-Image (Autoscale)- Runs the selected model repeatedly until the desired scale is reached. This node is intended for upscaling models specifically, providing some useful extra functionality:- If the model overshoots the target scale, the final image will be downscaled to the target scale with Lanczos resampling.
- As a convenience, the output image width and height can be fit to a multiple of 8, as is required for SD. This will only resize down, and may change the aspect ratio slightly.
- If the model doesn’t actually upscale the image, the
scaleparameter will be ignored.
Gallery Improvements
Thanks to @maryhipp and @chainchompa for continued iteration on the gallery!
- Cleaner boards UI.
- Improved boards and image search UI.
- Fixed issues where board counts don’t update when images are moved between boards.
- Added a “Jump” button to allow you to skip pages of the gallery
<video src=https://github.com/user-attachments/assets/b834cc36-995a-464e-af3f-68cf3b38818f>
Other Changes
- Enhancement: When installing starter models, the description is carried over. Thanks @lstein!
- Enhancement: Updated translations.
- Fix: Model unpatching when running on CPU, causing bad/no outputs.
- Fix: Occasional visible seams on images with smooth textures, like skies.
MultiDiffusiontiling now uses gradient blending to mitigate this issue. - Fix: Model names overflow the model selection drop-downs.
- Internal: Backend SD pipeline refactor (WIP). This will allow contributors to add functionality to Invoke more easily. This will be behind a feature flag until the refactor is complete and tested. Thanks to @StAlKeR7779 for leading the effort, with major contributions from @dunkeroni and @RyanJDick.
Installation and Updating
To install or update to v4.2.7post1, download the installer and follow the installation instructions.
To update, select the same installation location. Your user data (images, models, etc) will be retained.
Missing models after updating from v3 to v4
See this FAQ.
Error during installation ModuleNotFoundError: No module named 'controlnet_aux'
See this FAQ
What’s Changed
- fix(backend): revert non-blocking device transfer by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6624
- chore: bump version to 4.2.6post1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6625
- Add support for Spandrel Image-to-Image models (e.g. ESRGAN, Real-ESRGAN, Swin-IR, DAT, etc.) by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6556
- Add tiling to SpandrelImageToImageInvocation by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6594
- Add Spandrel upscale starter models by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6605
- Fix model unpatching process when running on CPU by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6631
- Add gradient blending to tile seams in MultiDiffusion by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6635
- Base of modular backend by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/6606
- add sdxl tile to starter models by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6634
- Fix function call that we forgot to update in #6606 by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6636
- Bump fastapi-events dependency by @ebr in https://github.com/invoke-ai/InvokeAI/pull/6644
- fix: update uncategorized board totals when deleting and moving images by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/6646
- feat(ui): upscaling tab by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6633
- Math Updates by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/6648
- Modular backend - add rescale cfg by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/6640
- Modular backend - add FreeU by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/6641
- Modular backend - add ControlNet by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/6642
- feat(ui): add upsells for pro edition to settings menu by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6650
- Update Simple Upscale Button to work with spandrel models by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/6649
- Simple upscale bugfixes by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/6655
- fix(ui): settings menu layout by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6654
- [MM2] Use typed ModelRecordChanges for model_install() rather than untyped dict by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6645
- fix(ui): restore pnpm-lock.yaml by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6659
- feat(ui): upscaling & ad-hoc post-processing misc by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6658
- fix(ui): model select overflowing when model names are too long by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6660
- feat(ui): more gallery UX updates by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6652
- fix(ui): few cases where board totals don’t updated when moving by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6665
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6653
- chore: bump version v4.2.7rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6670
- feat(ui): add jump to option for gallery pagination by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6668
- feat(ui): info popovers on by default by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6673
- fix(ui): copied edges must have new ids set by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6676
- fix(backend): add refiner to single-file
load_classesby @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6675 - fix(ui): model manager goes blank by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6679
- feat(ui): upscale folllow-ups by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6671
- feat(ui): update qr code cnet starter model by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6680
- feat(app): update default workflows by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6681
- bump version to 4.2.7 by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6687
- Update docker image to use pnpm version 8 by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6689
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v4.2.6…v4.2.7post1
v4.2.8
v4.2.8 brings Prompt Templates to Invoke, new schedulers and a number of minor fixes and enhancements.
Prompt Templates
Prompt templates are often used for commonly-used style keywords, letting you focus on subject and composition in your prompts - but you can use them in other creative ways.
Thanks to @maryhipp for implementing Prompt Templates!
Creating a Prompt Template
Create a prompt template from an existing image generated with Invoke. We’ll add the positive and negative prompts from the image’s metadata as the template, and the image will be used as a cover image for the template.
You can also create a prompt template from scratch, uploading a cover image.
How it Works
Add a positive and/or negative prompt to your template. Use the {prompt} placeholder in the template to indicate where your prompt should be inserted into the template:
- Template:
highly detailed photo of {prompt}, award-winning, nikon dslr - Prompt:
a super cute fennec fox cub - Result:
highly detailed photo of a super cute fennec fox cub, award-winning, nikon dslr
If you omit the placeholder, the template will be appended to the end of your prompt:
- Template:
turtles - Prompt:
i like - Result:
i like turtles
Default Prompt Templates
We’re shipping a number of templates with the app, many of which were contributed by community members (thanks y’all!). We’ll update these as we continue developing Invoke with improvements and new templates.
Import and Export
You can import templates from other SD apps. We support CSV and JSON files with these columns/keys:
namepromptorpositive_promptnegative_prompt
Export your prompt templates to share with others. When you export prompt templates, only your own templates are exported.
Preview and Flatten
Use the Preview button to see the prompt that will be used for generation. Flatten the prompt template to bake it into your prompts.
Compatible with Dynamic Prompts
You can use dynamic prompt in prompt templates, and they will work with dynamic prompts in your positive prompt box.
Other Changes
- Enhancement: Added
DPM++ 3M,DPM++ 3M Karras,DEIS Karras,KDPM 2 Karras,KDPM 2 Ancestral KarrasandUniPC Karrasschedulers @StAlKeR7779 - Enhancement: Updated translations - Italian is 100%! Thanks @Harvester62!
- Enhancement: Grounded SAM node (text prompt image segmentation) @RyanJDick
- Enhancement: Update DepthAnything to V2 (small variant only) @blessedcoolant
- Fix: Image downloads with correct filename
- Fix: Delays with events (progress images will be smoother)
- Fix: Jank with board selection when hiding or deleting boards
- Fix: Error deleting images on systems without a “trash bin”
- Fix: Upscale metadata included in SDXL Multidiffusion upscales @maryhipp
- Fix:
invoke.shworks with symlinks @max-maag - Internal: Continued work on the modular backend refactor @StAlKeR7779
Installation and Updating
To install or update to v4.2.8, download the installer and follow the installation instructions.
To update, select the same installation location. Your user data (images, models, etc) will be retained.
Missing models after updating from v3 to v4
See this FAQ.
Error during installation ModuleNotFoundError: No module named 'controlnet_aux'
See this FAQ
What’s Changed
- Modular backend - Seamless by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/6651
- Modular backend - T2I Adapter by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/6662
- fix(ui): deleting a board or hiding archived should reset selected & auto-add boards by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6694
- Modular backend - inpaint by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/6643
- update delete board modal to be more descriptive by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/6690
- Add more karras schedulers by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/6695
- Fix gradient mask values range by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/6688
- Modular backend - LoRA/LyCORIS by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/6667
- add base prop for destination to direct users to different tabs on initial load by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/6706
- Add Grounded SAM support (text prompt image segmentation) by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6701
- fix(ui): include upscale metadata for SDXL multidiffusion by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6704
- feat(app): delete images without send2trash by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6713
- build: exclude matplotlib 3.9.1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6718
- feat(ui): restore optional upper limit on upscale resolution size by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6721
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6684
- Depth Anything V2 by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/6674
- LyCORIS - LoKR and Norm layers by @StAlKeR7779 in https://github.com/invoke-ai/InvokeAI/pull/6724
- fix(ui): show warning for maxUpscaleDimension if model tab is disabled by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6733
- chore(ui): bump deps by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6734
- fix(api): image downloads with correct filename by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6735
- fix(app): delays in events by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6716
- fix(ui): combobox scroll by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6738
- feat(ui, api): prompt templates by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6729
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6727
- feat(api,ui): import prompt template CSV by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6743
- feat: add base prop for selectedWorkflow to allow loading a workflow on launch by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/6742
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6746
- feat(ui, api): prompt template export by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6745
- Fix invoke.sh not detecting symlinks by @max-maag in https://github.com/invoke-ai/InvokeAI/pull/6731
- chore: bump version to v4.2.8rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6748
- fix: bundle style preset defaults, bump version to v4.2.8rc2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6750
- fix(ui): use translations for style preset strings by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6752
- fix(ui): prompt template preset preview out of order by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6754
- some style preset follow-ups by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6761
- fix(ui): clear prompt template when prompts are recalled by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6763
- fix(ui): more prompt template follow-ups by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6762
- fix(ui): translation fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6758
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6747
- chore: bump version to v4.2.8 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6767
New Contributors
- @max-maag made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6731
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v4.2.7post1…v4.2.8
v4.2.9
FLUX
Please note these nodes are still in the prototype stage and are subject to change. This Node API is not stable!
We are supporting both FLUX dev and FLUX schnell at this time in workflows only. These will be incorporated into the rest of the UI in future updates. At this time, this is an initial and developing implementation - we’re bringing this in with the intent of long-term stable support for FLUX.
Default workflows can be found in your workflow tab: FLUX Text to Image and FLUX Image to Image. Please note that we have not added FLUX to the linear UI yet, LoRAs and Img2Img are not yet supported, but will be added soon.
Required Dependencies
In order to run FLUX on Invoke, you will need to download and install several models. We have provided options in the Starter Models (found in your Model Manager tab) for quantized and unquantized versions of both FLUX dev and FLUX schnell. Selecting these will automatically download the dependencies you need, listed below. These dependencies are also available for adhoc download in Starter Models list. Currently invoke only supports unquantized models, and bitsandbytes nf4 quantized models.
- T5 encoder
- CLIP-L encoder
- FLUX transformer/unet
- FLUX VAE
Considerations
FLUX is a large model, and has significant VRAM requirements. The full models require 24gb of VRAM on Linux — Windows PCs are less efficient, and thus need slightly more, making it difficult to run the full models.
To compensate for this, the community has begun to develop quantized versions of the DEV model - These are models with a slightly lower quality, but significant reductions in VRAM requirements.
Currently, Invoke is only supporting NVidia GPUs. You may be able to work out a way to get an AMD GPU to generate, however we’ve not been able to test this, and so can’t provide committed support for it. FLUX on MPS is not supported at this time.
Please note that the FLUX Dev model is a non-commercial license. You will need a commercial license to use the model for any commercial work.
Below are additional details on which model to use based on your system:
- FLUX dev quantized starter model: non-commercial, >16GB RAM, ≥12GB VRAM
- FLUX schnell quantized starter model: commercial, faster inference than dev, >16GB RAM, ≥ 12GB VRAM
- FLUX dev starter model: non-commercial, >32GB RAM, ≥24GB VRAM, linux OS
- FLUX schnell starter model: commercial, >32GB RAM, ≥24GB VRAM, linux OS
Running the Workflow
You can find a new default workflow in your workflows tab called FLUX Text to Image. This can be run with both FLUX dev and FLUX schnell models, but note that the default step count of 30 is the recommendation for FLUX dev. If running FLUX schnell, we recommend you lower your step count to 4. You will not be able to successfully run this workflow without the models listed above as required dependencies installed.
- Navigate to the Workflows tab.
- Press the Workflow Library button at the top left of your screen.
- Select Default Workflows and choose the FLUX workflow you’d like to use.
The exposed fields will require you to select a FLUX model ,T5 encoder, CLIP Embed model, VAE, prompt, and your step count. If you are missing any models, use the “Starter Models” tab in the model manager to download and install FLUX Dev or Schnell.
We’ve also added a new default workflow named Flux Image to Image. This can be run vary similarly to the workflow described above with the additional ability to provide a base image.
Other Changes
- Enhancement: add fields for CLIPEmbedModel and FluxVAEModel by @maryhipp
- Enhancement: FLUX memory management improvements by @RyanJDick
- Feature: Add FLUX image-to-image and inpainting by @RyanJDick
- Feature: flux preview images by @brandonrising
- Enhancement: Add install probes for T5_encoder and ClipTextModel by @lstein
- Fix: support checkpoint bundles containing more than the transformer by @brandonrising
Installation and Updating
To install or update to v4.2.9, download the installer and follow the [installation instructions](https://invoke-ai.github.io/InvokeAI/installation/010_INSTALL_AUTOMATED/).
To update, select the same installation location. Your user data (images, models, etc) will be retained.
What’s Changed
- Follow-up docker readme fixes by @ebr in https://github.com/invoke-ai/InvokeAI/pull/6661
- fix(ui): use empty string fallback if unable to parse prompts when creating style preset from existing image by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6769
- Added support for bounding boxes in the Invocation API by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/6781
- fix(ui): disable export button if no non-default presets by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6773
- Brandon/flux model loading by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6739
- build: remove broken scripts by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6783
- fix(ui): fix translations of model types in MM by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6784
- Add selectedStylePreset to app parameters by @chainchompa in https://github.com/invoke-ai/InvokeAI/pull/6787
- feat(ui, nodes): add fields for CLIPEmbedModel and FluxVAEModel by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6794
- FLUX memory management improvements by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6791
- Fix source string in hugging face installs with subfolders by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6797
- Add a new FAQ for converting checkpoints to diffusers by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6736
- scripts: add allocate_vram script by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6617
- Add FLUX image-to-image and inpainting by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6798
- [MM] add API routes for getting & setting MM cache sizes by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6523
- feat: flux preview images by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6804
- Add install probes for T5_encoder and ClipTextModel by @lstein in https://github.com/invoke-ai/InvokeAI/pull/6800
- Build container image on-demand by @ebr in https://github.com/invoke-ai/InvokeAI/pull/6806
- feat: support checkpoint bundles containing more than the transformer by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6808
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6772
- Brandon/cast unquantized flux to bfloat16 by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6815
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v4.2.8…v4.2.9
v5.0.0
Invoke 5.0 Release: Our Biggest Update Yet — A new canvas with Layer & Flux support
Today, we’re thrilled to launch the most significant update to Invoke this year: Invoke 5.0. This release introduces Control Canvas, a new tool to generate, iterate, and refine images with unprecedented control and flexibility. We’re also announcing integration with the hugely popular Flux models.
You may notice that some things have moved around. We’ve created a few resources for you to get to know the new Control Canvas and everything new in Invoke 5.0:
- (8 minutes) A short overview of how to complete common tasks in the new Control Canvas
- (23 minutes) A longer workflow demonstration of what is possible in the New Control Canvas and Invoke 5.0
- (~25 minutes) A self-guided tutorial playlist for Getting Started in Invoke
Control Canvas
Building on our Unified Canvas, the new Control Canvas integrates generation, iteration, and refinement into a single workspace. Highlights include:
- Raster Layers: Easily draw, paint, and manipulate shapes or guides that can be moved and resized independently, giving you more flexibility in editing.
- Editable Control Layers: Directly edit Control Layers (e.g., ControlNets) on the canvas, offering precise control over generation tasks without needing to re-upload images.
- Canvas Layer Recall: Save and recall the canvas state of your creation, ensuring that works can be regenerated and saved with the proper metadata.
Flux.1 Model Integration
We’ve partnered with Black Forest Labs to integrate the highly popular Flux.1 models into Invoke. You can now:
- Use Flux’s schnell model for commercial or non-commercial projects and dev models for non-commercial projects in your studio.
- Generate with text-to-image, image-to-image, inpainting, and LoRA support, with more features coming soon.
If you are looking to use Flux [dev] for commercial purposes, you’ll need to obtain a commercial license from Black Forest Labs. This is included as an add-on option in our Professional Edition. If you are interested in learning more, you can get in touch with us.
- Note: Flux Model support is currently only available for local inference on Windows and Linux systems.
Installation and Updating
To install or update to v5.0.0, download the installer and follow the installation instructions To update, select the same installation location. Your user data (images, models, etc) will be retained.
What’s Changed
- feat: canvas v2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6771
- feat, fix: canvas v2 followups 1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6819
- fix, feat: canvas followups 2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6821
- fix,feat: canvas followups 3 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6824
- fix,feat: canvas followups 4 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6826
- chore: 5.0.0.a1 version bump by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6827
- feat,fix,chore: canvas followups 5, release v5.0.0.a2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6832
- fix,feat: canvas followups 6 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6834
- feat(nodes): migrate cnet nodes away from
controlnet_auxby @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6831 - chore: release v5.0.0.a3 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6838
- feat(ui): viewer UX by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6842
- chore: release v5.0.0.a4 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6843
- Split LoRA layer implementations into separate files. by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6845
- fix(ui): spandrel filter by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6844
- chore: release v5.0.0.a5 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6850
- fix,feat: canvas followups 7 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6849
- Invert the expected
denoise_maskparameter to the FLUX Denoise node by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6853 - fix,feat: canvas followups 8 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6858
- chore: v5.0.0.a6 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6859
- fix,feat: canvas followups 9 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6860
- chore: v5.0.0.a7 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6861
- fix(ui): remove accidentally added staging button by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6862
- fix(ui): map order of layer types to the menu order by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6863
- feat(ui): change upscaling icon by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6867
- fix(ui): restore Settings Modal functionality to render using children by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6864
- fix(nodes): add thresholding to lineart & lineart anime nodes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6869
- fix(worker): fix progress image for FLUX inpainting by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6868
- feat(ui): FLUX in linear UI by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6846
- fix(ui): canvas followups 10 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6872
- feat(ui): update image usage check for canvas v2 layers and upscaling by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6874
- feat(ui): copy layers to clipboard and save layers as assets by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6875
- fix: staging status & queue insanity by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6871
- export hotkeys modal by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6879
- FLUX LoRA Support by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6847
- fix,feat: canvas followups 11 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6878
- chore: v5.0.0.a8 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6882
- Fix typos by @omahs in https://github.com/invoke-ai/InvokeAI/pull/6877
- fix,feat: canvas followups 12 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6884
- fix(ui): update studio destinations by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6880
- feat(ui, worker): FLUX LoRAs in linear UI by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6886
- fix(ui): revert change to grid calc algorithm by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6887
- fix(ui): gallery grid calculation by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6889
- feat(ui): “What’s New” in side nav with indicator badge by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6888
- fix,feat: canvas followups 13 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6893
- UI fixes followup by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/6895
- fix(ui): set crossOrigin on every image load by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6891
- feat(ui): new user experience by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6892
- feat(ui): canvas error handling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6896
- fix(ui): bbox stuff by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6897
- feat: canvas node cleanup by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6898
- Fix flaky FLUX LoRA unit test by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6899
- fix(ui): align project name with gallery header by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6901
- tweak(ui): open notification by default, get rid of indicator by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6903
- fix(ui): track whether studio destination hook fn has already fired by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6904
- feat(ui): adds notice for FLUX dev’s commercial license by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6902
- Improve FLUX image-to-image (Trajectory Guidance) by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6900
- chore: update version for 5.0.0.rc1 by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6905
- docs: cleanup by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6913
- fix, feat: canvas followups 14 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6914
- feat: generic progress events by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6908
- (fix) fixed bbox size reset to optimals on ‘Use All’ (Asterisk) button press by @FloeHetling in https://github.com/invoke-ai/InvokeAI/pull/6915
- fix(ui): mark optimized inpainting as beta by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6917
- fix, feat: canvas followups 15 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6919
- update links by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6918
- change order of infill methods by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6920
- chore: 5.0.0.rc2 version bump by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6921
- Maryhipp/release notes link by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6922
- fix(ui): race condition when filtering causing errors/stuck filter by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6923
- fix(ui): prefer ‘lama’ infill when handling infill fallback by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6924
- Update README.md by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6926
- fix,feat: canvas followups 16 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6927
- fix: filter event listeners by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6928
- chore: 5.0.0 version bump by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6935
New Contributors
- @omahs made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6877
- @FloeHetling made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6915
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v4.2.9…v5.0.0
v5.0.1
This minor release includes support for Kohya FLUX LoRAs and a handful of fixes and enhancements.
Be sure to review the v5 release notes if you haven’t already upgraded to v5.
Enhancements
- Support for Kohya FLUX LoRAs with
lora_te1layers (i.e. CLIP LoRA layers) - Default scheduler is now dpmpp_3m_k
- First round of v5 translations @Harvester62 @Vasyanator @Atalanttore @Ery4z @rikublock
- Improved FLUX img2img/inpainting
- ❗ This is a breaking change. The
trajectory_guidance_strengthfield onFluxDenoiseInvocationwas removed in favor of a simpler solution that doesn’t need the extra field. More details in #6938.
- ❗ This is a breaking change. The
- Revised hotkeys focus tracking
- Recall hotkeys work when viewer is closed and gallery is open
- Added
enterandeschotkeys to apply and cancel filters and transforms - Model default settings support for FLUX guidance parameter
Fixes
- Hide brush preview while staging
- Prevent error toasts from being so large they cannot be closed
- UI crash with
TypeError: i.map is not a function - Canvas erroneously interactable after refresh while staging
Internal
- More efficient image selection handling
- More efficient newly-generated image handling
- Revised resizable panels logic
Installation and Updating
To install or update to v5.0.1, download the installer and follow the installation instructions
To update, select the same installation location. Your user data (images, models, etc) will be retained.
What’s Changed
- fix(ui): reduce extraneous image selection by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6930
- feat(ui): cleanup resizable panels by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6932
- fix(ui): incorrect translations for flux bbox constraints by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6933
- fix,feat: canvas followups 18 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6941
- fix(ui): restore send-to functionality by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6937
- update default scheduler to dpmpp_3m_k by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6943
- fix workflow tab translations by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6944
- fix(ui): gallery nav hotkeys not working by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6949
- fix(ui): handle resizable panels not rendered in DOM by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6948
- fix(ui): truncate error description so toast is always close-able by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6946
- fix(ui): new image selection logic by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6951
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6818
- fix(ui): resizable panels collapsed on first app startup by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6953
- fix(ui): canvas interactable after refresh while staging by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6956
- Further improvements to FLUX image-to-image by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6938
- (ui): add button to learn more about supported models by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6958
- fix(api): UI crash with
TypeError: i.map is not a functionby @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6985 - Support FLUX LoRA models in kohya format with
lora_te1layers (i.e. CLIP LoRA layers) by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6967 - refactor(ui): hotkey/focus handling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6987
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/6963
- chore: bump version to v5.0.1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6993
- Update communityNodes.md add OBP by @AIrjen in https://github.com/invoke-ai/InvokeAI/pull/6990
- feat(ui,api): add guidance as a default setting option for FLUX models by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/6959
New Contributors
- @AIrjen made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6990
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.0.0…v5.0.1
v5.0.2
This minor release fixes a regression with FLUX LoRAs introduced in v5.0.1.
Be sure to review the v5 release notes if you haven’t already upgraded to v5.
Fixes
- Fix regression with FLUX LoRAs introduced in v5.0.1.
Enhancements
- Show CLIP Vision models in the model manager UI, allowing for them to be deleted in case of corruption.
Installation and Updating
To install or update to v5.0.2, download the installer and follow the installation instructions
To update, select the same installation location. Your user data (images, models, etc) will be retained.
What’s Changed
- feat(ui): show CLIP Vision models in model manager UI by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6994
- Fix regression with FLUX diffusers LoRA models by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/6997
- chore: bump version to v5.0.2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7003
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.0.1…v5.0.2
v5.1.0
This release includes drawing tablet support and middle-mouse panning for Canvas, support for GGUF FLUX models, and an assortment of other fixes and enhancements.
❗ We are investigating an issue with Apple Silicon devices and SDXL. Users with Apple Silicon devices may wish to hold off on updating until we resolve this. See the Known Issues section below for more information.
Be sure to review the v5 release notes if you haven’t already upgraded to v5.
Enhancements
- Canvas tablet support for both touch and pen input devices (e.g. drawing tablets).
- Pressure sensitivity for pen input devices. This can be disabled in the Canvas settings.
- Revised Canvas layout to better fit on smaller screens.
- Improved image context menu layout. Thanks @joshistoast!
- Improved Apple Pencil support.
- Added long-press trigger for context menus. The canvas itself does not have a long-press trigger, but the same actions are accessible via menu button at the top-right corner of the canvas.
- Middle-mouse button panning on Canvas. Thanks to @FloeHetling for getting this moving!
- Support for GGUF FLUX models.
- Create a new “session”, resetting all settings and Canvas to their defaults (except for model selection). These functions are in the menu next to the cancel button.
- Crop to bbox on Canvas. You can crop an individual layer, or the whole canvas. Accessed via right-click menus.
- Allow for a broader range of guidance values for flux models. Thanks @rikublock!
- Updated translations. Thanks @rikublock @Ery4z @Vasyanator @Harvester62 @Phrixus2023!
Fixes
- Duplicating a regional guidance layer with a reference image causes an error during graph building, preventing generation from working.
- Recalling LoRAs can create duplicate LoRAs.
- Fixed color picker tool edge case where wrong color could be detected while moving the cursor quickly.
Perf
- Throttled color picker sampling to improve performance.
Internal
- Bump all UI deps to latest.
- Bump
torchandxformersversions to latest. - Gracefully handle promise rejections in the UI’s metadata handlers.
- Updated
docker-compose.ymlto use GHCRlatestimage. Thanks @jkbdco!
Docs
- Added Ollama node to community nodes. Thanks @Jonseed!
- Added FLUX support to docs. Thanks @aakropotkin!
Known Issues
Apple Silicon devices will output mushy noise on SDXL unless Regional Guidance or an IP Adapter is used.
The issue appears to be related to us bumping torch to v2.4.1, which was needed for GGUF FLUX support. The SDXL generation code wasn’t changed in this release. We are investigating the issue.
As a workaround, users can set their attention type to torch-sdp in their invoke.yaml configuration file. This will result in some increased memory utilization, but allow for generations to proceed as normal.
Installation and Updating
To install or update to v5.1.0, download the latest installer and follow the installation instructions
To update, select the same installation location. Your user data (images, models, etc) will be retained.
What’s Changed
- feat(context menu): :sparkles: condense top row of image context menu by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/7001
- feat(ui): tablet support by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7008
- Initial GGUF support for flux models by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/6890
- fix(ui): show color picker when using pen by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7013
- feat(ui): mmb panning (another approach) by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7014
- feat(ui): add new session functionality by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7017
- feat(ui): layer/canvas crop by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7020
- fix(ui): duplicating regional guidance layer breaks graph generation by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7015
- fix(ui): recall LoRAs may create duplicates by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7016
- chore(ui): bump deps by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7021
- Bump xformers for compatibility with torch by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7022
- fix(ui): prevent unhandled promise rejections by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7019
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7010
- chore: bump version to v5.1.0rc2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7024
- Update communityNodes.md add Ollama node by @Jonseed in https://github.com/invoke-ai/InvokeAI/pull/7002
- Update docker-compose.yml by @jkbdco in https://github.com/invoke-ai/InvokeAI/pull/7023
- fix: install issues w/ torch by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7026
- fix(ui): incorrect hotkeys on floating button tooltips by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7029
- feat(ui): canvas ipad improvements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7027
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7030
- chore: bump version to v5.1.0rc4 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7031
- fix(ui): board title editable by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7036
- fix(ui): funky drop targets by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7035
- fix(ui): image context menu buttons don’t close menu by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7038
- chore: bump version to v5.1.0rc5 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7039
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7040
- fix(ui): board drop targets by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7041
- feat(ui): canvas tool cleanup & perf by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7044
- fix(ui): alternate Apple Pencil interaction fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7048
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7046
- fix(ui): missing translations for canvas drop area by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7055
- docs: list FLUX as supported by @aakropotkin in https://github.com/invoke-ai/InvokeAI/pull/7053
- feat(ui): allow for a broader range of guidance values for flux models by @rikublock in https://github.com/invoke-ai/InvokeAI/pull/7051
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7054
- fix(ui): duplicate translation string for “layer” by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7056
- chore: bump version to v5.1.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7057
New Contributors
- @Jonseed made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/7002
- @jkbdco made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/7023
- @aakropotkin made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/7053
- @rikublock made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/7051
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.0.2…v5.1.0
v5.1.1
This release fixes a number of issues and updates the workflows list to function like the style presets list.
❗ We are investigating an issue with Apple Silicon devices and SDXL. Users with Apple Silicon devices may wish to hold off on updating until we resolve this. See the Known Issues section below for more information and a workaround.
Be sure to review the v5 release notes if you haven’t already upgraded to v5.
Enhancements
- New workflow list UI. Thanks @maryhipp!
- Added explanatory tooltips to images and assets tabs in gallery. Thanks @maryhipp!
- Added prompt template message to first-run blurb. Thanks @maryhipp!
- Add button to rename board (in addition to double-click). Thanks @maryhipp!
- Updated translations. Thanks @Harvester62 @Ery4z!
- Updated example config file comment to prevent footguns.
Fixes
- Updates to get FLUX working on MPS on
torch2.5.0 / nightlies. Thanks @Vargol! - Fixed incorrect events being tracked for some buttons. Notably, this prevents accidental deletion of layers when the Canvas is busy.
- Fixed UI jank with Canvas number input components.
- Fixed issue where invalid edges could be pasted.
- Fixed issue preventing touch and Apple Pencil from being able to interact with the Canvas.
Internal
- Fixed Nix flake. Thanks @aakropotkin!
Docs
- Add Enhance Detail community node. Thanks @skunkworxdark!
- Fixed typos. Thanks @nnsW3!
- Added FLUX support to docs. Thanks @aakropotkin!
Known Issues
Apple Silicon devices will output mushy noise on SDXL unless Regional Guidance or an IP Adapter is used.
The issue appears to be related to us bumping torch to v2.4.1, which was needed for GGUF FLUX support. The SDXL generation code wasn’t changed in this release. We are investigating the issue.
As a workaround, users can set their attention type to torch-sdp in their invoke.yaml configuration file:
attention_type: torch-sdpThis will result in some increased memory utilization, but allow for generations to proceed as normal.
Installation and Updating
To install or update to v5.1.1, download the latest installer and follow the installation instructions
To update, select the same installation location. Your user data (images, models, etc) will be retained.
What’s Changed
- Add Enhance Detail to communityNodes.md by @skunkworxdark in https://github.com/invoke-ai/InvokeAI/pull/7043
- Docs fix spelling issues by @nnsW3 in https://github.com/invoke-ai/InvokeAI/pull/7047
- update flake by @aakropotkin in https://github.com/invoke-ai/InvokeAI/pull/7032
- Get Flux working on MPS when torch 2.5.0 test or nightlies are installed by @Vargol in https://github.com/invoke-ai/InvokeAI/pull/7063
- feat(ui,api): alternate workflow list UX by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7059
- misc(ui): image/asset tab tooltips, icon to rename board, getting started text by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7067
- feat(ui): restore sorting and date displays for workflow library list items by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7068
- feat(ui): board edit tweaks by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7069
- add missing translations by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7073
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7062
- fix(ui): remove straggling onPointerUp handlers by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7074
- fix(ui): canvas sliders misc by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7075
- fix(ui): validate edges on paste by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7072
- fix(ui): sync pointer position on pointerdown by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7076
- feat(app): update example config file comment by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7071
- chore: bump version to v5.1.1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7077
New Contributors
- @nnsW3 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/7047
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.1.0…v5.1.1
v5.2.0
This release includes a number of enhancements and fixes. Standouts include:
- Support for FLUX ControlNets.
- Improved UX for common
img2imgflows in Canvas. - Boards may be sorted by name or date.
- Starter model bundles in Model Manager.
- Support for bulk image uploads.
** 🚨 Important Update Note: **
During update, you’ll now be selecting between different configurations of the Invoke environment that are optimized and dependent on your hardware (specifically, torch-sdp vs. xformers) — If you have previously used xformers, and update to the version for 3xxx and 4xxx NVidia cards, you’ll often experience an error after the update.
You can uninstall xformers before running the update by -
- Running the Invoke batch script from your existing installation
- Selecting the “developer console” option
- Typing
pip uninstall xformers
We’ve also added a fix for Apple Silicon users for the mushy noise issue and updated the installer to skip xformers for GPUs where it causes a performance hit.
Be sure to review the v5 release notes if you haven’t already upgraded to v5.
FLUX ControlNets
We now support both XLabs and InstantX ControlNets for FLUX. We’ve found the Union Pro model substantially outperforms the other models and added it to the starter models. Other models work, but outputs are not as good.
You can use FLUX ControlNets in both Workflows and the Linear UI. We will be adding a union mode control to the Linear UI in a a future release. You can select the union mode in Workflows today.
Canvas img2img Flow
We’ve made a number of changes to support the common img2img flow in the Canvas:
- Transform now supports 3 modes:
fill(old behaviour): The layer is stretched to fit the generation bbox exactly. Its aspect ratio is not maintained.contain(new default): The layer is stretched to fit the generation bbox, retaining its aspect ratio.cover: The layer is scaled up so that its smallest dimension fits the bbox exactly, retaining its aspect ratio.
- Add a layer context menu item to fit the layer to the bbox using the
containmode. - Update the
New Canvas from Imageimage context menu item to streamline theimg2imgflow. It now resizes the bbox to match the image’s aspect ratio, respecting the currently-selected models’ optimal size. The image will fit exactly in the box. You can click this and then immediately Invoke to doimg2img.
Installer Updates
The performance of torch-sdp attention is substantially faster than xformers on 30xx and 40xx series GPUs. We’ve made two changes to ensure you generate with the best settings:
- Add an installer option for 30xx & 40xx series GPUs, which does not install
xformers. - When the attention type is set to
auto(the default), and you do havexformersinstalled, we choose the best option oftorch-sdpandxformers, based on your GPU.
Apple Silicon Fix
The mushy noise issue on Apple Silicon is related to sliced attention. We’ve temporarily forced all MPS devices to use torch-sdp. Memory usage is a bit higher, but you won’t get mushy noise (unless, of course, you prompt for it 😅).
This appears to be a torch bug, and we’ll revert this change once it is resolved.
All Changes
Enhancements
- Support for FLUX ControlNets.
- Improved UX for common
img2imgflows in Canvas. - Installer option to select best packages based on GPU model, and internal logic to select the best attention type based on GPU model.
- Updated workflow list menu UI, restoring
New Workflowconfirmation dialog. - Support for bulk image uploads, button in gallery to upload images.
- Boards maybe sorted by name or date.
- Recall FLUX guidance parameter. Thanks @rikublock!
- Add starter model bundle for each supported architecture to model manager.
- The
LayersandGallerytabs now remember which one you last selected. - Added an indicator to the
LayersandGallerytabs when dragging an image to indicate you that you can hover over the tabs to change them. - Updated translations. French is now 100%! Thanks gallegonovato, @Harvester62, @Ery4z!
Fixes
- Workaround for Apple Silicon SDXL noisy mush issue.
- Fixed misc UI jank in workflow list menu UI.
- Fixed longstanding issue where workflows were marked as unsaved immediately after loading.
- Fixed canvas layer preview not updating if layer is disabled.
- Fixed an edge case where entity isn’t visible until interacting with canvas.
Perf
- Reworked gallery rendering and context menu for a ~100% perf boost when rendering the gallery.
- Rendering optimizations for canvas.
Installation and Updating
To install or update to v5.2.0, download the latest installer and follow the installation instructions
To update, select the same installation location. Your user data (images, models, etc) will be retained.
What’s Changed
- feat(ui): img2img UX by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7081
- feat(ui): add option to copy share link for workflows by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7082
- Allow explicitly selecting xFormers at install time by @ebr in https://github.com/invoke-ai/InvokeAI/pull/7065
- refactor(ui): modals state, workflow list modal misc by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7087
- perf(ui): rendering optimizations by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7061
- feat(ui): img2img UX 2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7090
- Add support for FLUX ControlNet models (XLabs and InstantX) by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7070
- feat(ui): consolidate img2img canvas flow by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7093
- fix(ui): use non-icon version of delete menu item on canvas context menu by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7094
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7086
- chore: bump version to v5.2.0rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7096
- Add a workaround for broken sliced attention on MPS with torch 2.4.1 by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7066
- fix(ui): edge case where controladapters added counts could be off by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7095
- fix(ui): edge case where entity isn’t visible until interacting with canvas by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7099
- build(ui): set package mode target to ES2015 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7100
- perf(ui): gallery / image perf by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7101
- feat(ui,api): board sorting by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7106
- fix(ui): prefix share link with window location by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7104
- fix(api): undo changes that made workflow category optional in list query by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7105
- fix(api): update enum usage to work for python 3.11 by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7110
- fix: Pin onnx versions to builds that don’t require rare dlls by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/7107
- fix(ui): properly recall guidance value for flux images by @rikublock in https://github.com/invoke-ai/InvokeAI/pull/7108
- Update workflow_records_sqlite.py by @skunkworxdark in https://github.com/invoke-ai/InvokeAI/pull/7109
- feat(ui,api): add starter bundles to model manager by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7097
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7103
- fix(ui): fit to bbox just flashes transform handles by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7122
- chore: bump version to v5.2.0rc2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7121
- Maryhipp/bulk upload by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7123
- feat(ui): updates to Layers and Gallery tabs by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7119
- fix(ui): add error handling to upload button by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7125
- fix(ui): upload tooltip should only show plural if multiple upload is enabled by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7126
- fix(ui): remove extra slash in workflow share link by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7128
- feat(ui): make debug logger middleware configurable by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7124
- chore: bump version to v5.2.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7136
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.1.1…v5.2.0
v5.3.0
This release includes a number of enhancements and fixes. Standouts include:
- Object selection in Canvas (via Segment Anything).
- Support for XLabs FLUX IP Adapters.
- Installer improvements, which should resolve all
xformers-related issues. - Improved FLUX support for MPS (Apple Silicon) devices.
- Reworked context menus, now with sub-menus.
Be sure to review the v5 release notes if you haven’t already upgraded to v5.
Canvas Select Object
Click the Canvas to add Include and Exclude points to select an object in a layer, then use the selection as an Inpaint Mask.
In the next example, we want to select the fox and the ground, but the model has a hard time with this, as it is trained to select single objects. We are able to work around this by selecting the background and inverting the selection.
https://github.com/user-attachments/assets/29fd08a3-10f0-4cb6-bc7b-699ff0a0094d
As demonstrated, applying the selection masks the layer with the selection. You can also save the selection as a Raster Layer, Control Layer or Regional Guidance. This enables some useful workflows.
Internally, this uses Segment Anything v1. We’ll upgrade to SAM v2, which substantially improves object selection, once support for it lands in transformers.
FLUX IP Adapters
We now support XLabs FLUX IP Adapters. There’s only the one model right now, which we’ve added to the starter models.
| Workflow & Input Image | Output |
|---|---|
Internally, IP Adapter requires CFG to work. For now, this is only exposed via workflows. Negative conditioning is also now available in workflows. We’re exploring a sane way to expose this in the linear UI.
Negative conditioning requires a CFG value >1. Leave CFG at 1 to disable it and ignore negative conditioning.
Note: CFG doubles denoising time, and negative conditioning requires a good additional chunk of VRAM.
All Changes
Enhancements
- Object selection in Canvas (via Segment Anything).
- Support for XLabs FLUX IP Adapters.
- Support for CFG and Negative Conditioning for FLUX in workflows only.
- Added
RealVisXL5to SDXL Starter Model Bundle. - Model manager
in-placecheckbox remembers your choice. Thanks @rikublock! - Better tooltips in the model manager, including a starter bundle contents.
- Support for sub-menus, which are now used in the Image context menu and various Canvas context menus.
- Support more conversions between Canvas layers. Both in-place and copy conversions are supported. For example, convert between Inpaint Masks and Regional Guidance, or copy a Raster Layer into a new Inpaint Mask.
- Model descriptions are now displayed in model selection drop-downs. You can disable this in settings.
- We now track whether or not enabled model default settings are currently set. When they are not, we list the defaults that differ in a tooltip on the little button next to the main model drop-down.
- Always show staging images when staging starts, even if user hid them last staging session.
- Canvas alerts (e.g. the
Sending to Galleryalert overlaid on the canvas) are moved to the top-left corner of the center panel. - Updated translations. Thanks @rikublock, @Vasyanator, @Harvester62, @Ery4z!
Fixes
- Improved FLUX support for MPS devices. Thanks @Vargol!
- FLUX denoise node erroneously required
controlnet_vaefield. - Uninstall
xformersbefore installation, fixing issues w/xformersversion mismatch. - Fixed installer text output. Thanks @max-maag!
- Fixed ROCm PyPI indices. Thanks @max-maag!
- Normalize solid infill alpha values from 0-1 to 0-255 when building canvas graphs. This issue didn’t cause any problems, because VAE ignores the alpha channel, but it should be fixed regardless.
- View/Hide Boards button cut off with certain translations.
- Fix a longstanding issue where nodes could mutate the objects (images, tensors, conditioning data) in disk-backed in-memory caches. For example, node 1 might retrieve image X and do some in-place operation on it to create image Y. Node 2 retrieves image X but gets image Y instead. This issue only affected the in-memory caches; mutations were not pushed to disk. The invocation API now returns clones of all objects, so nodes can safely mutate their inputs in-place.
Internal
- Reworked logging implementation.
- Directory traversal issue when deleting images.
Documentation
- Updated dev install docs. Thanks @hippalectryon-0!
Installation and Updating
To install or update, download the latest installer and follow the installation instructions
To update, select the same installation location. Your user data (images, models, etc) will be retained.
What’s Changed
- fix(app): directory traversal when deleting images by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7145
- Small improvements for the installer text output by @max-maag in https://github.com/invoke-ai/InvokeAI/pull/7150
- refactor(ui): logging config handling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7143
- add starter model Architecture (RealVisXL5) by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7151
- fix(nodes):
FluxDenoiseInvocation.controlnet_vaemissingdefault=Noneby @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7156 - Remove xformers before installation by @ebr in https://github.com/invoke-ai/InvokeAI/pull/7161
- FLUX CFG support by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7152
- FLUX XLabs IP-Adapter Support by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7157
- Fix AMD GPUs not being detected by @max-maag in https://github.com/invoke-ai/InvokeAI/pull/7147
- Load non quantized t5encoder using same dtype the model is saved in/ by @Vargol in https://github.com/invoke-ai/InvokeAI/pull/7140
- Get flux working with MPS on torch 2.4.1, with GGUF support by @Vargol in https://github.com/invoke-ai/InvokeAI/pull/7113
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7135
- feat(ui): canvas auto-mask by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7163
- chore: bump version to v5.3.0rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7164
- feat(ui): move model manager in-place install state to redux by @rikublock in https://github.com/invoke-ai/InvokeAI/pull/7167
- feat(ui): canvas auto mask followups 1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7168
- fix(ui): normalize infill alpha to 0-255 when building infill nodes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7172
- tweak(ui): prevent show/hide boards button cutoff by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7184
- feat(ui,api): misc model QoL by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7173
- feat(ui): canvas auto mask followups 2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7180
- feat(ui): canvas auto mask followups 3 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7189
- chore: bump version to v5.3.0rc2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7190
- feat(ui): canvas auto-mask followups 4 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7193
- feat(ui): add setting for showing model descriptions in dropdown by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7187
- feat(ui): add out of sync details to default settings button by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7188
- feat: canvas auto mask followups 5 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7196
- fix(nodes): return copies of objects in invocation ctx by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7195
- Improve dev install docs by @hippalectryon-0 in https://github.com/invoke-ai/InvokeAI/pull/7199
- feat(ui): canvas auto mask followups 6 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7203
- chore: bump version to v5.3.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7204
New Contributors
- @hippalectryon-0 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/7199
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.2.0…v5.3.0
v5.3.1
This release expands layer merging capabilities in the Canvas and makes a number of other fixes and enhancements.
Layer Merging
We’ve expanded layer merging capabilities to all layer types and made one change to the existing Merge Visible operation.
Merge Down (new)
The selected layer and the one immediately below it are merged into a single layer. The two input layers are deleted as part of this process.
Merge Visible (changed)
Previously, in Invoke, Merge Visible deleted all the layers that were merged together.
This has been changed to match image editors like Affinity Photo and PS, where the merged layer is added as a new layer, leaving all other layers untouched.
Merging Regional Guidance
When merging Regional Guidance, the resultant merged Regional Guidance has no prompt or reference image. It’s not possible to merge those settings. Keep this in mind when doing a Merge Down, which will delete the two input Regional Guidance layers.
Merging Control Layers
When merging Control Layers, the resultant merged Control Layer has no model or control settings. Like Regional Guidance, it’s not possible to merge the settings, and Merge Down will delete the two input layers.
Control Layers require some special handling. For example, we display them with a “transparency effect” to help you visualize how they stack up. When merging them, we first apply a similar effect to the layer. Specifically, we use the “lighter” blend mode, optimizing for control images with black backgrounds.
All Changes
Enhancements
- Layer merging improvements.
- Updated “What’s New” popover.
Inpaint MaskandRegional Guidancemay be saved to assets.- Support for HF tokens in the model manager UI. This prepares Invoke’s MM for SD3.5, which requires you to authenticate with HF to download the model. You can paste your token into the MM to allow the the model to download, instead of needing to configure it with the HF CLI.
- Add a safeguard for invocation classes, requiring they implement the
invokemethod and have a correct output annotation.
Fixes
- Canvas alerts prevent clicks on the metadata viewer tabs.
Save as-ing a Filtered layer may result in the wrong image data being used during generation.- More resilient Filter handling.
- SDXL T2I OpenPose model gets input images with the correct channel order, which makes this model work correctly. Thanks @dunkeroni!
- T2I Adapters now work with any output size supported by the main model. Previously, they required output sizes to be in multiples of 32 or 64. Thanks @dunkeroni!
- Recall of seamless metadata settings. Thanks @rikublock!
- Fixed broken link in installer. Thanks @hippalectryon-0!
- Fixed (another) broken link in installer. Thanks @ventureOptimism!
Internal
- Bump
diffusers,accelerateandhuggingface-hubdependencies to latest versions. - Refactored
CanvasCompositorModuleto support new merge capabilities. - Remove version pins for several packages including torch and numpy. This is in preparation for an updated installer and also makes it easier for advanced users to customize the versions of various packages.
- Canvas inpaint and outpaint graphs output one less intermediate image, saving one expensive PNG encode (and your disk space).
- Added caches for generation mode calculations in Canvas, providing a substantial reduction in intermediate images created and faster Invoke-to-Queue times.
Docs
- Updated
patchmatchdocs. Thanks @nirmal0001! - Updated FAQ. Thanks @JPPhoto!
- Updated dev docs. Thanks @hippalectryon-0!
Translations
- Updated German. Thanks @rikublock & @Atalanttore!
- Updated Chinese (Simplified). Thanks @qyouqme & @youo0o0!
- Updated Italian. Thanks @Harvester62 & @dakota2472!
- Updated French. Thanks @Ery4z!
Installation and Updating
To install or update, download the latest installer and follow the installation instructions
To update, select the same installation location. Your user data (images, models, etc) will be retained.
What’s Changed
- fix(ui): canvas alerts blocking metadata panel by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7210
- Bump
diffusersversion (andaccelerate,hugginface-hub) by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7174 - feat(ui): canvas graph improvements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7218
- Fix SDXL t2i adapters expect BGR instead of RGB by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/7205
- fix(ui): recall seamless settings by @rikublock in https://github.com/invoke-ai/InvokeAI/pull/7217
- feat(ui): update announcements for v5.3.0 by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7221
- fix(ui): canvas filter and SAM module fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7224
- feat(ui): canvas entity merging by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7219
- chore: bump version to v5.3.1rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7225
- fix(ui): compositor not setting processing flag when cleaning up by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7227
- fix(nodes): nodes denylist handling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7235
- feat(ui,api): support for HF tokens in UI, handle Unauthorized and Forbidden responses from HF by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7201
- Update patchmatch.md by @nirmal0001 in https://github.com/invoke-ai/InvokeAI/pull/7165
- Update FAQ.md by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/6801
- Fix link in dev docs by @hippalectryon-0 in https://github.com/invoke-ai/InvokeAI/pull/7200
- feat(nodes): add validation for invoke method return types by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/6279
- refactor(ui): layer interaction locking by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7234
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7166
- feat(ui): filter/select-object do not exit on save-as by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7238
- fix broken link in installer by @hippalectryon-0 in https://github.com/invoke-ai/InvokeAI/pull/7211
- Adjust pins for torch, numpy, other dependencies by @ebr in https://github.com/invoke-ai/InvokeAI/pull/7232
- fix(ui): add missing translations by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7237
- removing periods from update link to prevent page not found error by @ventureOptimism in https://github.com/invoke-ai/InvokeAI/pull/6526
- fix(ui): canvas misc bugs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7244
- Make T2I Adapters work with any resolution supported by the models by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/7215
- chore: bump version to v5.3.1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7245
New Contributors
- @nirmal0001 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/7165
- @ventureOptimism made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/6526
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.3.0…v5.3.1
v5.4.1
This release includes support for SD 3.5, plus a number of fixes and improvements.
We pulled v5.4.0 due to issues with model installation and loading. This release (v5.4.1) resolves those issues and includes all changes from v5.4.0.
Enhancements
- Support for SD 3.5 Medium and Large. You can download them in the starter models.
- Moved
Denoising Strengthslider to top of Layers panel with updated UI and info popover. - Update viewer styling to have a menubar-ish header. Also used for image comparison.
- Layer preview tooltip with larger sized preview.
- Empty state for Control Layers, guiding user to upload an image, drag an image from gallery or start drawing.
- “Simple” mode for control layers filtering, triggered when you select a control model. This automatically selects and processes the default filter for that model, if a default exists. If the user clicks
Advanced, they get the full filter settings UI. Control Layers now start with no model selected, implicitly directing users into this flow. - Updated default control weight to 0.75 and end step % to 0.75. Updated label for the
Balancedcontrol mode, indicating it is the recommended setting. - The FLUX Denoise node now has a flag to skip adding noise to input latents. This is useful for switching models mid-generation and other fancy denoising techniques. Thanks @JPPhoto!
- Migrated the UI’s drag-and-drop functionality to a new library, improving the overall performance of dnd. It also allows us to support external dnd. For example, dragging images from the OS directly into the canvas is now possible (not implemented in this release).
- Canvas layers may be sorted via drag-and-drop.
- When graph building fails, you will see an error toast. Previously, it only logged a message to the browser’s JS console.
- Updated model warnings on Upscaling tab to not be misleading.
- More FLUX LoRA format support.
- Show alert over canvas/viewer with invocation progress event messages.
- Tweak gallery image selection styles to better differentiate between hovered and selected.
Output Only Masked Regionsrenamed toOutput only Generated Regionsand now enabled by default.
Fixes
- Canvas progress images do not clear when canceling generation after at least one image has been staged.
- Tooltips on boards list stay open when scrolling, potentially causing the whole app to scroll.
- Saving canvas to gallery does not create a new image in gallery.
- Applying a filter could erase or otherwise change a layer’s data unexpectedly, causing a range of user-facing generation issues.
- Unable to queue graphs with the Segment Anything node when its inputs were provided by connection.
- Unable to load a workflow from file when using the three-dots menu.
pipdownloadstorchtwice. This didn’t cause any application issues - just a waste of time and bandwidth. We pinnedtorchto<2.5.0to preventpip’s dependency resolver from getting confused.mediapipeinstall issue on Windows, related to its latest release. We pinnedmediapipeto a known working version.- CLIP Vision error when using FLUX IP Adapter.
- Fit bbox to layers math could result in a slightly-too-large bbox.
- Outdated link to FLUX IP Adapter. Thanks @RadTechDad!
- Force a compatible precision for FLUX VAEs to prevent black outputs.
Translations
We have had some issues communicating with “walk-in” translators on Weblate, resulting in translations being changed when they are already correct. To mitigate this, we are trying a more restricted Weblate translation setup. Access to contribute translations must be granted by @Harvester62. Please @ them in the #translators channel on discord to get access.
We apologize for any inconvenience this change may cause. Thanks to all our translators for their continued efforts!
- Updated German. Thanks @rikublock!
- Updated Chinese (Simplified). Thanks @youo0o0!
- Updated Italian. Thanks @Harvester62 & @dakota2472!
- Updated Spanish. Thanks gallegonovato (weblate user)!
- Updated Vietnamese. Thanks Linos (weblate user)!
- Updated Japanese. Thanks @GGSSKK!
Internal
- Simplified parameter schema declarations. Thanks @rikublock!
- Simplified dnd image and gallery rendering, resulting in improved performance.
Installation and Updating
To install or update, download the latest installer and follow the installation instructions
To update, select the same installation location. Your user data (images, models, etc) will be retained.
What’s Changed
- Pin torch to <2.5.0 to prevent unnecessary downloads by @ebr in https://github.com/invoke-ai/InvokeAI/pull/7247
- fix(ui): misc fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7252
- fix(nodes): relaxed validation for segment anything by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7253
- fix(ui): load workflow from file by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7254
- fix(deps): pin mediapipe strictly to a known working version by @ebr in https://github.com/invoke-ai/InvokeAI/pull/7258
- Ryan/sd3 diffusers by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7222
- chore: bump version to v5.4.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7259
- fix: Never throw an exception when finding the clip variant type by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/7263
- fix(ui): add some feedback while layers are merging by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7265
- feat(api,ui): allow Whats New module to get content from back-end by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7268
- fix(ui): fix link for infill method popover by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7269
- update Whats New for 5.3.1 by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7272
- fix(ui): bad merge conflict by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7273
- fix: get_clip_variant_type should never return None by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/7275
- feat(ui): denoising strength UI by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7262
- chore(gh): update pr template w/ reminder for what’s new copy by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7274
- feat(ui): simplify parameter schema declaration by @rikublock in https://github.com/invoke-ai/InvokeAI/pull/7281
- feat(ui): new user ux improvements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7279
- fix: Avoid downloading unsafe .bin files if a safetensors file is ava… by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/7282
- fix: Look in known subfolders for configs for clip variants by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/7283
- chore: release v5.4.1rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7285
- Update flux_denoise.py by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/7270
- fix(app): silence pydantic protected namespace warning by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7291
- chore(ui): migrate dnd library by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7288
- chore: bump version to v5.4.1rc2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7293
- fix(ui): FLUX IP adapter clip vision model error by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7292
- fix(ui): excessive toasts when generating on canvas by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7294
- fix(ui): fit bbox to layers math by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7297
- fix(ui): restore missing image paste handler by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7298
- feat(ui): update warnings on upscaling tab based on model arch by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7299
- feat(ui): clarify denoising strength badge text by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7304
- Updated link to flux ip adapter model by @RadTechDad in https://github.com/invoke-ai/InvokeAI/pull/7309
- Flux Vae broke for float16, force bfloat16 or float32 were compatible by @Vargol in https://github.com/invoke-ai/InvokeAI/pull/7213
- Fix FLUX diffusers LoRA models with no
.proj_mlplayers by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7313 - SD3 Image-to-Image and Inpainting by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7295
- (ui): update en string for full IP adapter by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7312
- feat(ui, worker): add invocation progress events to model loading by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7286
- feat(ui): tweak image selection/hover styling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7302
- feat(ui): update output only masked regions by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7303
- fix(ui): image uploading handling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7315
- fix(ui): unable to use text inputs within draggable by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7316
- fix(ui): multiple selection dnd sometimes doesn’t get full selection by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7317
- fix(ui): remove progress message condition for canvas destinations by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7319
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7242
New Contributors
- @RadTechDad made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/7309
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.3.1…v5.4.1
v5.4.2
This release includes support for FLUX IP Adapter v2 and image “batching” for Workflows.
Image Batching for Workflows
The Workflow Editor now supports running a given workflow for each image in a collection of images.
Add an Image Batch node, drag some images into its image collection, and connect its output to any other node(s). Invoke will run the workflow once for each image in the collection.
Here are a few examples to help build intuition for the feature. Click the arrow to expand each example.
Example 1 - Single Batch -> Single Node
The simplest case is using a batch image output with a single node. Here’s a workflow that resizes 5 images to 200x200 thumbnails.
Workflow
Results
This batch queues 5 graphs, each containing a single resize node with one of the 5 images in the batch list. Note the images are 200x200 pixels.
Example 2 - Single Batch -> Multiple Nodes
You can also use a batch image output with multiple nodes. This contrived workflow resizes the image to a 200x200 thumbnail, like the previous example, the pastes the thumbnail on the full size image.
Workflow
Results
This batch also queues 5 graphs, each of which contains one resize and one paste node. In each graph, the nodes get the image of the 5 images in the batch collection. The batch node can connect to any number of other nodes. For each queued graph, all connected nodes will get the same image.
Example 3 - Multiple Batches (Product Batching)
When multiple batches are used, they are combined such that all permutations are queued (e.g. the product of batches is taken).
Workflow
Results
In this case, the product of the two batches is 15 graphs. Each image of the 3-image batch is used as the base image, and a thumbnail of each tiger is pasted on top of it. We’ll call this “product” batching.
Zipped Batching
The batching API supports “zipped” batches, where the batch collections are merged into a single batch.
For example, imagine two batches of 5 images. As described in the “product” example above, you’d get 5 images * 5 images = 25 graphs. Zipped batching would instead take the first image from each of the two batches and use them together in the first graph, then take the second two images for the second graph, and so on.
Zipped batching is not supported in the UI at this time.
Versus Iterate Nodes
We support similar functionality to batching with Iterate nodes, so why add batching? In short, Iterate nodes have some technical issues which are addressed by batching.
Why `Iterate` Nodes are Scary
They result in unbounded graph complexity and size. If you don’t know what these words mean, but they sound kinda scary, congrats! You are on the right track. They are indeed scary words.
- When using
Iteratenodes, the graph is expanded with new nodes and edges during execution. Pretty scary. - We cannot know ahead of time how much the graph will expand, because iterate nodes’ collections are dynamic. Terrifying.
- Multiple iterate nodes combine via Cartesian product, resulting in combinatorial explosion. Your graph could be running at the heat death of the universe. Existential dread.
Batch collections are defined up front and don’t expand the graph. We know exactly the complexity we are getting into before the graph executes. Sanity restored!
Batching also more intuitive - we run exactly this graph, once for each image.
Unlike Iterate nodes, Image Batch nodes’ collections cannot be provided by other nodes in the graph. The collection must be defined up-front, so you cannot replace Iterate with Image Batch for all use-cases.
Nevertheless, we suggest using batching where possible.
Other Notes
- We’ve added
Image Batchnodes first because it images are the highest-impact field type, but the batching API supports arbitrary field types. In fact, the Canvas uses bothintandstrfields internally. We’ll save nodes for other field types for a future enhancement. - If you want to batch over a board, you’ll need to drag all images from the board into the batch collection. We’ll explore a simpler way to use a board’s images for a batch in a future enhancement.
- It is not possible to combine all outputs from a batch within the same workflow.
Other Changes
Enhancements
- Support for FLUX IP Adapter v2. We’ve optimized internal handling for v2, and you may find FLUX IP Adapter v1 results are degraded. Update to v2 to fix this.
- Updated image collection inputs for nodes. You may now drag images into collections directly.
- Brought some of @dwringer’s often-requested composition nodes into Invoke’s core nodes. They have been renamed to not conflict with your existing install of the node pack. Thanks for your work on these very useful nodes @dwringer!
- Show tab-specific info in the Invoke button’s tooltip.
- Update the
New from Imagecontext menu actions. The actions that resize the image after creating a new Canvas are clearly named. - Change the
Reset Canvasbutton, which was too similar to theDelete Imagebutton, into a menu with more options:- New Canvas Session: Resets all generation settings, resets all layers, and enables Send to Canvas.
- New Gallery Session: Resets all generation settings, resets all layers, and enables Send to Gallery.
- Reset Generation Settings: Resets all generation settings, leaving layers alone.
- Reset Canvas Layers: Resets all layers, leaving generation settings alone.
- New Support Videos button in the bottom-left corner of the app, which lists and links to videos on our YouTube channel.
Fixes
- Added padding to the metadata recall buttons in the metadata viewer, so they aren’t cut off by other UI elements.
- The progress bar stopped throbbing in the last release. We apologize for this oversight. Throbbing has been restored.
- Addressed some edge cases that could cause the UI to crash with an error about an entity not found.
- Updated grid size for SD3.5 models to 16px. Thanks for the heads up @dunkeroni.
Internal
- Removed a node with a GPL-3 dependency (
easing-functions), which had been contributed in thestep_param_easingnode that used it. While this node has been deprecated, please let us know if you were using this node, and the use-cases, so that we can better design inputs where these are found helpful.
Translations
We have had some issues communicating with “walk-in” translators on Weblate, resulting in translations being changed when they are already correct. To mitigate this, we are trying a more restricted Weblate translation setup. Access to contribute translations must be granted by @Harvester62. Please @ them in the #translators channel on discord to get access.
Our Weblate also has an account issue and is currently locked. This is unrelated to the access restriction changes.
We apologize for any inconvenience this change may cause. Thanks to all our translators for their continued efforts!
- Updated Chinese (Simplified). Thanks @youo0o0!
- Updated Italian. Thanks @Harvester62!
- Updated Spanish. Thanks gallegonovato (weblate user)!
Installation and Updating
To install or update, download the latest installer and follow the installation instructions
To update, select the same installation location. Your user data (images, models, etc) will be retained.
What’s Changed
- feat(ui): deferred invocation progress details for model loading by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7320
- fix(ui): add padding to the metadata recall section so buttons are not blocked by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7326
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7323
- remove GPL-3 licensed package easing-functions by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7337
- fix(ui): progress bar not throbbing when it should by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7332
- fix(ui): prevent entity not found errors by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7340
- XLabs FLUX IP-Adapter v2 by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7338
- feat(ui): image batching in workflows by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7343
- fix(ui): add sd-3 grid size of 16px to grid util by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7346
- chore: bump version to v5.4.2rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7344
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7331
- feat: ingest composition nodes into core by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/7341
- fix(ui): simplify logic for non-local invocation progress alerts by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7353
- feat(ui): update invoke button tooltip for batching by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7350
- feat(ui): change reset canvas icon to “empty” by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7351
- feat(ui): clarified new from image menu items by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7352
- feat(ui): change reset canvas button to new session menu by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7356
- feat(ui): support videos modal by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7300
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7355
- chore: bump version to v5.4.2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7354
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.4.1…v5.4.2
v5.4.3
This minor release adds initial support for FLUX Regional Guidance, arrow key nudge on Canvas, plus an assortment of fixes and enhancements.
Changes
Enhancements
- Add 1-pixel
nudgeto the move tool on Canvas. Use the arrow keys to make fine adjustments to a layer’s position. Thanks @hippalectryon-0! - Change the default infill method from
patchmatchtolama. You can usepatchmatch. - Add empty state for Global Reference Images and Regional Guidance Reference Images, similar to the empty state for Control Layers. A blurb directs users to upload an image or drag an image from gallery to set the image.
- FLUX performance improvements (~10% speed-up).
- Added
ImagePanelLayoutInvocationto facilitate FLUX IC-LoRA workflows. - FLUX Regional Guidance support (beta). Only positive prompts are supported; negative prompts, reference images and auto-negative are not supported for FLUX Regional Guidance.
- Canvas layers now have a warning indicator that indicates issues with the layer that could prevent invoking or cause a problem.
New Layer from Imagefunctions added to Canvas Staging Area Toolbar. These create a new layer without dismissing the rest of the staged images.- Improved empty state for Regional Guidance Reference Images.
- Added missing
New from...image context menu actions:Reference Image (Regional)andReference Image (Global) - Added Vietnamese to language picker in Settings.
Fixes
- Soft Edge (Lineart, Lineart Anime) Control Layers default to the Soft Edge filter correctly.
- Remove the nonfunctional
widthandheightoutputs from theImage Batchnode. If you want to usewidthandheightin a batch, route theimagefromImage Batchto anImage Primitivenode, which outputswidthandheight. - Ensure invocation templates have fully parsed before running studio init actions.
- Bumped
transformersto get a fix for Depth Anything artifacts. - False negative edge case with
picklescan. - Invoke queue actions menu’s Cancel Current action erroneously cleared the entire queue. Thanks @rikublock!
- New Reference Images could inadvertently have the last-used Reference Image populated on creation.
- Error when importing GGUF models. Thanks @JPPhoto!
- Canceling any queue item from the Queue tab also erroneously canceled the currently-executing queue item.
Internal
- Add redux actions for support video modal.
- Tidied various things related to the queue. Thanks @rikublock!
Docs
- General tidy across many docs pages. Thanks @magnusviri!
- Fixed a few broken links. Thanks @emmanuel-ferdman!
Translations
- Updated Italian translations. Thanks @Harvester62!
- Updated Vietnamese translations. Thanks @Linos1391!
Installation and Updating
To install or update, download the latest installer and follow the installation instructions
To update, select the same installation location. Your user data (images, models, etc) will be retained.
What’s Changed
- fix(api): make sure Soft Edge Detection has preprocessor applied by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7360
- fix(ui): disable width and height output on image batch output by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7361
- feat(ui): set default infill method to lama by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7362
- fix(ui): make sure schema has loaded before trying to load any workflows by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7364
- feat(ui): add actions for video modal clicks by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7365
- feat(ui): add empty state for regional guidance ref image by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7363
- feat(ui): nudge on canvas by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7368
- chore: bump version to v5.4.3rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7369
- fix(ui): use token for download if its in store by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7373
- Create SECURITY.md by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/7376
- misc(ui): various copy updates by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7382
- fix: Fail scan on InvalidMagicError in picklescan, update default for… by @brandonrising in https://github.com/invoke-ai/InvokeAI/pull/7381
- Add
ImagePanelLayoutInvocationutility to facilitate In-Context LoRA workflows by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7374 - Bump transformers to ingest a DepthAnything post-processing fix by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7386
- docs: update code of conduct reference by @emmanuel-ferdman in https://github.com/invoke-ai/InvokeAI/pull/7380
- FLUX Regional Prompting by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7388
- FLUX Speed Improvements (~10% speedup) by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7399
- Update node vers by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/7403
- feat(ui): add
New Layer from Imagemenu to staging area toolbar by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7389 - refactor(ui): move clear queue hook to separate file by @rikublock in https://github.com/invoke-ai/InvokeAI/pull/7391
- fix(ui): call cancel instead of clear queue by @rikublock in https://github.com/invoke-ai/InvokeAI/pull/7392
- chore(ui): update typegen schema by @rikublock in https://github.com/invoke-ai/InvokeAI/pull/7394
- fix(app): adjust session queue api type by @rikublock in https://github.com/invoke-ai/InvokeAI/pull/7393
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7397
- feat(ui): less confusing empty state for rg ref images by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7407
- fix(ui): ref image defaults to prev ref image’s image selection by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7408
- feat(ui): add gallery image ctx menu items to create ref image from image by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7409
- fix(ui): allow invoke when inpaint/raster layers are empty by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7410
- fix(ui): remove “adding to” text on Invoke tooltip on Workflows/Upscaling tabs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7411
- feat(ui): add vietnamese to language picker by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7412
- fix(worker): only apply processor cancel logic if cancel event is for current item by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7416
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7415
- Fix gguf importing by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/7405
- [docs] Fix documentation broken links and remove whitespace at end of lines by @magnusviri in https://github.com/invoke-ai/InvokeAI/pull/7402
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7418
- chore: bump version to v5.4.3rc2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7413
- fix(app): processor cancelation weirdness by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7421
- fix(ui): skip disabled global reference image by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7420
- Revert FLUX performance improvement that fails on MacOS by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7423
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7419
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7425
- chore: bump version to v5.4.3 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7424
- fix(ui): capitalization for vietnamese language by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7427
New Contributors
- @emmanuel-ferdman made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/7380
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.4.2…v5.4.3
v5.5.0
This release brings support for FLUX Control LoRAs to Invoke, plus a few other fixes and enhancements.
It’s also the first stable release alongside the new Invoke Launcher!
Invoke Launcher ✨
The Invoke Launcher is a desktop application that can install, update and run Invoke on Windows, macOS and Linux.
It can manage your existing Invoke installation - even if you previously installed with our legacy scripts.
Download the launcher to get started
Refer to the new Quick Start guide for more details. There’s a workaround for macOS, which may not let you run the launcher.
FLUX Control LoRAs
Despite having “LoRA” in the name, these models are used in Invoke via Control Layers - like ControlNets. The only difference is that they do not support begin and end step percentages.
So far, BFL has released Canny and Depth models. You can install them from the Model Manager.
Other Changes
Enhancements
-
Support for FLUX Control LoRAs.
-
Improved error handling and recovery for Canvas, preventing Canvas from getting stuck if there is a network issue during some operations.
-
Reduced logging verbosity when default logging settings are used.
Previously, all Uvicorn logging occurred at the same level as the app’s logging. This logging was very verbose and frequent, and made the app’s terminal output difficult to parse, with lots of extra noise.
The Uvicorn log level is now set independently from the other log namespaces. To control it, set the
log_level_networkproperty ininvokeai.yaml. The default iswarning. To restore the previous log levels, set it toinfo(e.g.log_level_network: info).
Fixes
- Image context menu actions to create a Regional and Global Reference Image layers were reversed.
- Missing translation strings.
- Canvas filters could execute twice. Besides being inefficient, on slow network connections, this could cause an error toast to appear even when the filter was successful. They now only execute once.
- Model install error when the path contains quotes. Thanks @Quadiumm!
Internal
- Upgrade docker image to Ubuntu 24.04 and use
uvfor package management. - Fix dynamic invocation values causing non-deterministic OpenAPI schema. This allows us to add a CI check to ensure the OpenAPI schema and TypeScript types are always in sync. Thanks @rikublock!
Translations
- Updated Italian. Thanks @Harvester62!
- Updated German. Thanks @rikublock!
- Updated Vietnamese. Thanks @Linos1391!
- Updated French. Thanks @Ery4z!
Installing and Updating
As mentioned above, the new Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Follow the Quick Start guide to get started with the launcher.
Legacy Scripts (not recommended!)
We recommend using the launcher, as described in the previous section!
To install or update with the outdated legacy scripts 😱, download the latest legacy scripts and follow the legacy scripts instructions.
What’s Changed
- [docker] upgrade to ubuntu 24.04 + use uv for package management by @ebr in https://github.com/invoke-ai/InvokeAI/pull/7401
- fix(ui): image context menu -> create layer from -> swap regional/global actions by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7441
- docs: add redirect for patchmatch docs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7443
- fix(ui): missing translation string by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7442
- feat(ui): improved canvas/queue error handling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7451
- Support FLUX structural control LoRA models by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7450
- LoRA refactor to enable FLUX control LoRAs w/ quantized tranformers by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7446
- Add FLUX Control LoRA weight param by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7452
- add FLUX control loras to starter models by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7453
- Add diffusers config object for control loras by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7454
- chore: bump version to v5.4.4rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7456
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7432
- fix(ui): fix double filter on slow networks by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7457
- raise error if control lora used with schnell by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7458
- update whats new copy for Control LoRAs by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7459
- Fix error message when adding a local path with quotes (issue #6517) by @Quadiumm in https://github.com/invoke-ai/InvokeAI/pull/7426
- feat(api): less verbose uvicorn logs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7466
- fix(app): fixed InputField default values by @rikublock in https://github.com/invoke-ai/InvokeAI/pull/7464
- chore(ui): update typegen schema by @rikublock in https://github.com/invoke-ai/InvokeAI/pull/7462
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7465
- chore: bump version to v5.5.0rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7461
- chore: bump version to v5.5.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7469
New Contributors
- @Quadiumm made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/7426
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.4.3…v5.5.0
v5.6.0
This release brings major improvements to Invoke’s memory management, new Blur and Noise Canvas filters, and expanded batch capabilities in Workflows.
Memory Management Improvements (aka Low-VRAM mode)
The goal of these changes is to allow users with low-VRAM GPUs to run even the beefiest models, like the 24GB unquantised FLUX dev model.
Despite the focus on low-VRAM GPUs and the colloquial name “Low-VRAM mode”, most users benefit from these improvements to Invoke’s memory management.
Low-VRAM mode works on systems with dedicated GPUs (Nvidia GPUs on Windows/Linux and AMD GPUs on Linux). It allows you to generate even if your GPU doesn’t have enough VRAM to hold full models.
Low-VRAM mode involves 4 features, each of which can be configured or fine-tuned:
- Partial model loading
- Dynamic RAM and VRAM cache sizes
- Working memory
- Keeping a copy of models in RAM
Most users should only need to enable partial loading by adding this line to their invokeai.yaml:
enable_partial_loading: true🚨 Windows users should also disable the Nvidia sysmem fallback.
For more details and instructions for fine-tuning, see the Low-VRAM mode docs.
Thanks to @RyanJDick for designing and implementing these improvements!
Workflow Batches
We’ve expanded the capabilities for Batches in Workflows:
- Float, integer and string batch data types
- Batch collection generators
- Grouped (aka zipped) batches
Float, integer and string batch data types
There’s a new batch node for each of the new data types. They work the same as the existing image batch node.
You can add a list of values directly in the node, but you’ll probably find generators to be a nicer way to set up your batch.
Batch collection generators
These are essentially nodes that run in the frontend and generate a list of values to use in a batch node. Included in the release are these generators:
- Arithmetic Sequence (float, integer): Generate a sequence of
countnumbers, starting fromstart, that increase or decrease bystep. - Linear Distribution (float, integer): Generate a distribution of
countnumbers, starting withstartand ending withend. - Uniform Random Distribution (float, integer): Generation a random distribution of
countnumbers frommintomax. You can set a seed for reproducible sequences. - Parse String (float, integer, string): Split the
inputon the specified string, parsing each value as a float, integer or string. You can load the input from a.txtfile. Use\nas the split string to split on new lines.
You’ll notice the different handle icon for batch generators. These nodes cannot connect to non-batch nodes, which run in the backend.
Grouped (aka zipped) batches
When you use multiple batches, we run the graph once for every possible combination of values in the batch collections. In mathematical terms, we “take the Cartesian product” of all batch collections.
Consider this simple workflow that joins two strings:
We have two batch collections, each with two strings. This results in 2 * 2 = 4 runs, one for each possible combination of the strings. We get these outputs:
- “a cute cat”
- “a cute dog”
- “a ferocious cat”
- “a ferocious dog”
But what if we wanted to group or “zip” up the two string collections into a single collection, executing the graph once for each pair of strings? This is now possible - we can set both nodes to the same batch group:
This results in 2 runs, one for each “pair” of strings. We get these outputs:
- “a cute cat”
- “a ferocious dog”
You can use grouped and ungrouped batches arbitrarily - go wild! The Invoke button tooltip lets you know how many executions you’ll end up with for the given batch nodes.
Keep in mind that grouped batch collections must have the same size, else we cannot zip them up into one collection. The Invoke button grey out and let you know there is a mismatch.
Details and technical explanation
On the backend, we first zip each group’s batch collections into a single collection. Ungrouped batch collections remain as-is.
Then, we take the product of all batch collections. If there is only a single collection (i.e. a single ungrouped batch node, or multiple batch nodes all with the same group), the product operation outputs the single collection as-is.
There are 5 slots for groups, plus a 6th ungrouped option:
- None: Batch nodes will always be used as separate collections for the Cartesian product operation.
- Groups 1 - 5: Batch nodes within a given group will first be zipped into a single collection, before the the Cartesian product operation.
All Changes
Fixes
- Fix issue where excessively long board names could cause performance issues.
- Fix error when using DPM++ schedulers with certain models. Thanks @Vargol!
- Fix (maybe, hopefully) the app scrolling off screen when run via launcher.
- Fix link to
Scalesetting’s support docs. - Fix image quality degradation when inpainting an image repeatedly.
- Fix issue with transparent Canvas filter previews blend with unfiltered parent layer.
Enhancements
- Support float, integer and string batch data types.
- Add batch data generators.
- Support grouped (aka zipped) batches.
- Reduce peak memory during FLUX model load.
- Add Noise and Blur filters to Canvas. Adding noise or blurring before generation can add a lot detail, especially when generating from a rough sketch. Thanks @dunkeroni!
- Reworked error handling when installing models from a URL.
- Updated first run screen and OOM error toast with links to Low-VRAM mode docs.
- Add a small handful of nodes designed to support inpainting in workflows. See #7583 for more details and an example workflow.
Internal
- Tidied some unused variables. Thanks @rikublock!
- Added typegen check to CI pipeline. Thanks @rikublock!
Docs
- Added stereogram nodes to Community Nodes docs. Thanks @simonfuhrmann!
- Updated installation-related docs (quick start, manual install, dev install).
- Add Low-VRAM mode docs.
Installing and Updating
The new Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Follow the Quick Start guide to get started with the launcher.
If you already have the launcher, you can use it to update your existing install.
We’ve just updated the launcher to v1.3.2. Review the launcher releases for a changelog. To update the launcher itself, download the latest version from the quick start guide - the download links there are kept up to date.
Legacy Scripts (not recommended!)
We recommend using the launcher, as described in the previous section!
To install or update with the outdated legacy scripts 😱, download the latest legacy scripts and follow the legacy scripts instructions.
What’s Changed
- Update Readme with new Installer Instructions by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/7455
- docs: fix installation docs home by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7470
- docs: fix installation docs home again by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7471
- feat(ci): add typegen check workflow by @rikublock in https://github.com/invoke-ai/InvokeAI/pull/7463
- docs: update download links for launcher by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7489
- Add Stereogram Nodes to communityNodes.md by @simonfuhrmann in https://github.com/invoke-ai/InvokeAI/pull/7493
- Partial Loading PR1: Tidy ModelCache by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7492
- Partial Loading PR2: Add utils to support partial loading of models from CPU to GPU by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7494
- Partial Loading PR3: Integrate 1) partial loading, 2) quantized models, 3) model patching by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7500
- Correct Scale Informational Popover by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/7499
- docs: install guides by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7508
- docs: no need to specify version for dev env setup by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7510
- feat(ui): reset canvas layers only resets the layers by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7511
- refactor(ui): mm model install error handling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7512
- fix(api): limit board_name length to 300 characters by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7515
- fix(app): remove obsolete DEFAULT_PRECISION variable by @rikublock in https://github.com/invoke-ai/InvokeAI/pull/7473
- Partial Loading PR 3.5: Fix pre-mature model drops from the RAM cache by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7522
- Partial Loading PR4: Enable partial loading (behind config flag) by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7505
- Partial Loading PR5: Dynamic cache ram/vram limits by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7509
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7480
- chore: bump version to v5.6.0rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7521
- Bugfix: Offload of GGML-quantized model in
torch.inference_mode()cm by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7525 - Deprecate
ram/vramconfigs for smoother migration path to dynamic limits by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7526 - docs: fix pypi indices for manual install for AMD by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7528
- Bugfix: Do not rely on
model.deviceif model could be partially loaded by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7529 - Fix for DEIS / DPM++ config clash by setting algorithm type - fixes #6368 by @Vargol in https://github.com/invoke-ai/InvokeAI/pull/7440
- Whats new 5.6 by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7527
- fix(ui): prevent canvas & main panel content from scrolling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7532
- docs,ui: low vram guide & first run blurb by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7533
- docs: fix incorrect macOS launcher fix command by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7536
- chore: bump version to v5.6.0rc2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7538
- Update communityNodes.md - Fix broken image by @simonfuhrmann in https://github.com/invoke-ai/InvokeAI/pull/7537
- fix(ui): image quality degradation on canvas after repeated generations by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7539
- fix(ui): use window instead of document for image pasting by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7558
- Support v-prediction checkpoint models when set in the model manager by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/7504
- fix(ui): sticky preset image tooltip by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7542
- fix(ui): round rects when applying transform by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7540
- Make T5 models interchangeable between FLUX/SD3 workflows by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7544
- Feat: Noise and Blur filters for Canvas by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/7551
- fix(ui): remove AbortController logic from paste to upload by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7560
- Reduce peak memory during FLUX model load by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7564
- Add
keep_ram_copy_of_weightsconfig option by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7565 - Revise the default logic for the model cache RAM limit by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7566
- feat(ui): more batch data types by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7545
- feat: support batch node groups (aka zipped/pairwise batch nodes) by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7553
- refactor(ui): batch generator nodes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7562
- chore: bump version to v5.6.0rc3 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7557
- fix(ui): string field textarea accidentally readonly by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7567
- chore: bump version to v5.6.0rc4 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7568
- feat(ui): seeded random generators by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7570
- feat: string batch generators by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7572
- Add troubleshooting docs for the Windows page file issue by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7569
- fix: string batch input fields by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7578
- fix(ui): disable dynamic prompts generators pending resolution of infinite recursion issue by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7580
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7534
- fix(ui): field handle positioning for non-batch fields by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7581
- feat(nodes): inpainting workflow support nodes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7583
- chore: bump version to v5.6.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7582
New Contributors
- @simonfuhrmann made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/7493
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.5.0…v5.6.0
v5.6.1
This release includes a handful of minor improvements and fixes.
- Improvements to memory management defaults, resulting in fewer OOMs.
- Expanded FLUX LoRA compatibility.
- On-demand model cache clearing via button on the Queue tab.
- Canvas Adjust Image filter (i.e. levels, hue, etc). Thanks @dunkeroni!
- Button to cancel all queue items except current. Thanks @rikublock!
- Copy Canvas/Bbox as image via Canvas right-click menu.
- Paste image into Canvas/Bbox via normal paste hotkey. You will be prompted for where the image should be placed.
- Allow
Collectnodes to be connected directly toIteratenodes. - Allow
Anytype node inputs to accept collections. For example, theMetadata Itemnode’s value field now accepts collections. - Improved error messages when invalid graphs are queued.
- LoRA Loader node LoRA collection input is now optional, supporting @skunkworxdark’s metadata nodes. Thanks @skunkworxdark!
- Fixed issues where staging area got stuck if one image failed to load (e.g. if it was deleted).
- Updated translations. Thanks @Harvester62, @Linos1391, @rikublock, @Ery4z!
Installing and Updating
The new Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- Fix bug with some LoRA variants when applied to bitsandbytes NF4 quantized models by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7577
- docs: typo in manual docs install command by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7586
- Improve MaskOutput dimension consistency by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7591
- Support FLUX OneTrainer LoRA formats (incl. DoRA) by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7590
- Fix T5EncoderField initialization in SD3 model loader by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7604
- Make the default max RAM cache size more conservative by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7603
- Add endpoint for emptying the model cache by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7602
- Feature: Adjust Image filter by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/7594
- feat(ui): add cancel all except current queue item functionality by @rikublock in https://github.com/invoke-ai/InvokeAI/pull/7395
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7600
- LoRA Collection Loader make optional LoRA Collection input by @skunkworxdark in https://github.com/invoke-ai/InvokeAI/pull/7579
- feat(ui): support copy of canvas by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7617
- feat: better graph validation errors by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7614
- feat(ui): support pasting directly to canvas by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7619
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7621
- chore: bump version to v5.6.1rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7618
- fix(ui): restore missing translation by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7625
- feat(ui): safe clipboard handling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7626
- docs: cleanup faq by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7627
- docs: install troubleshooting by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7628
- fix(ui): [object object] in OOM toast by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7630
- feat(ui): canvas image error handling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7632
- chore: bump version to v5.6.1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7631
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.6.0…v5.6.1
v5.6.2
This minor release includes the following enhancements and fixes:
- Make the Upscaling tab’s Scheduler and CFG Scale settings independent from the Canvas tab. We’ve found that the best Scheduler and CFG Scale settings for Canvas rarely work well for Upscaling, and vice-versa. Separating the settings prevents your Canvas settings from causing bad upscale results.
- Fixed issue with Multiply Image Channel node loading images with different channel counts. Thanks @dunkeroni!
- Fixed typos in docs. Thanks @maximevtush!
- Fixed issue where the app scrolls out of view, especially when using the launcher. Again. Hopefully.
- Update internal build toolchain dependencies.
- Updated translations. Thanks @Harvester62, @Linos1391, @Ery4z!
Installing and Updating
The new Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- Fix: Multiply Image Channel allows RGB inputs again by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/7633
- fix: typos in documentation files by @maximevtush in https://github.com/invoke-ai/InvokeAI/pull/7629
- feat(ui): separate upscaling settings so that tab does not inherit from main generation settings by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7635
- fix(ui): prevent overflow on document root by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7636
- Add metadata field extractor node by @jazzhaiku in https://github.com/invoke-ai/InvokeAI/pull/7638
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7622
- Upgrade vite, vitest, and related plugins to latest versions by @ebr in https://github.com/invoke-ai/InvokeAI/pull/7640
- chore: bump version to v5.6.2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7641
New Contributors
- @maximevtush made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/7629
- @jazzhaiku made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/7638
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.6.1…v5.6.2
v5.7.0
This release upgrades the Workflow Editor’s Linear View to a more fully-featured Form Builder. It also includes many other fixes and enhancements, including the adoption of @skunkworxdark’s excellent metadata nodes into Invoke’s core nodes.
The launcher has recently been updated to v1.4.1, fixing a minor memory leak.
Form Builder
Nodeologists may now create more sophisticated UIs for their workflows using the Form Builder. This replaces the older Linear View feature.
In addition to Node Fields, you may add Heading, Text, Container and Divider elements to the form. Some form elements are configurable. For example, Containers support row or column layouts, and certain Node Field types can render different UI components.
Here’s a brief demo of the Form Builder, touching on the core functionality:
Your existing workflows with the Linear View fields will automatically be migrated to the new format.
We’ll be iterating on the Form Builder and extending its capabilities in future updates.
Other Changes
@skunkworxdark’s Metadata Nodes ship with Invoke
We are pleased to bring this popular node pack into the core Invoke repo! Thanks to @skunkworxdark for allowing us to adopt these nodes, and for their continued support of the project.
After you update to v5.7.0, if you have the node pack installed as custom nodes, you will see an error when on start up. It’s saying that you already have these nodes installed. Everything should work fine - but you’ll need to delete the node pack to get rid of the error.
Enhancements
- Increase default VAE tile size to 1024, reducing “grid” artifacts in images generated on the Upscaling tab.
- Failed or canceled queue items may be retried via the queue tab.
- Canvas color picker now supports transparency.
- Canvas color picker shows RGBA values next to it.
- Minor redesign/improved styles throughout the Workflow Editor.
- When attempting to load a workflow while you have unsaved changes, a dialog will appear asking to you confirm. Previously it would just load the workflow and you’d lose any unsaved work.
- When a node has an invalid field, its title will be error-colored.
- Less ginormous image field component in nodes.
- Node fields now have editable descriptions.
- Double-click a node to zoom to it.
- Click the bullseye icon in a Form Builder node field to zoom to the node.
- ❗Minor Breaking Change: Board fields now have an
Autooption in the drop-down. When set toAuto, the auto-add board will be used for that board field.Autois the new default. Workflows that previously hadNone (Uncategorized)selected will now haveAutoselected. - Add
Dynamic Prompts (Random)andDynamic Prompts (Combinatorial)modes to theString Generatornode. - Add
Image Generatornode withImages from Boardmode. Select a board and category to run a batch over its images.
Fixes
- Canvas mouse cursor disappears when certain layer types and tools are selected.
- Canvas color picker doesn’t work when certain layer types are selected.
- Sometimes mask layers don’t render until you zoom or pan.
- When using shift-click to draw a straight line, if the canvas was moved too much between the clicks, the line got cut off.
- Incorrect node suggestions when dropping an edge into empty space.
- When loading a workflow with fields that reference unavailable models, the fields were not always reset correctly.
- If an image collection field referenced images that were deleted, it was impossible to delete them without emptying the whole collection.
- Lag/stutters in the Add Node popover.
- When deleting a board and its images, we didn’t check if any of the deleted images were used in an image collection field, potentially leading to errors when attempting to use a nonexistent image.
Internal
- Upgraded
reactflowto v12. This major release provides no new user-facing features, but does feature improved performance. - Upgraded
@reduxjs/toolkitto latest. A new utility allows for more efficient cache management and yields a minor perf improvement to gallery load times. - Numerous performance improvements throughout the workflow editor. Many code paths were revised and components restructured to improve performance. Some CSS transitions were disabled for performance reasons.
- Substantial performance improvement for batch queuing logic (i.e. the stuff that happens between clicking Invoke and the progress bar starts moving).
- Improved custom node loading. For each node pack, if an error occurs while loading it, importing of that pack’s nodes will stop and Invoke will skip to the next node pack. This may result in only some nodes from a pack loading, but the app will still run. Previously, any error prevented Invoke from starting up.
Installing and Updating
The new Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
The launcher has recently been updated to v1.4.1, fixing a minor memory leak.
What’s Changed
- Increase default VAE tile size in upscaling tab by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7644
- feat: workflow builder by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7608
- chore: bump version to v5.7.0a1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7642
- Fix container build (frontend) by @ebr in https://github.com/invoke-ai/InvokeAI/pull/7647
- perf(ui): workflow editor misc by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7645
- feat: retry queue items by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7649
- fix,feat(ui): canvas improvements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7651
- fix(ui): omnipresent pencil on board name by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7655
- ui: workflow builder iteration by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7654
- workflow builder iteration 2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7657
- workflow builder iteration 3 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7658
- chore: bump version to v5.7.0rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7663
- workflow builder iteration 4 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7664
- fix(ui): star button not working on Chrome by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7669
- fix: weblate merge conflict issue by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7670
- fix(ui): do not render studio until destination is loaded by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7672
- fix(ui): reset form initial values when workflow is saved by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7678
- feat(ui): use auto-add board as default in workflow editor by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7677
- (ui): add actions for copying image and opening image in new tab by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7681
- fix(ui): make sure notes node exists like we do for invocation nodes by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7684
- refactor(ui): form layout styling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7680
- feat(ui): async batch generators & board -> image generator by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7685
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7679
- chore: bump version to v5.7.0rc2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7687
- fix(api): fix args in other places that use get_all_board_image_names_for_board by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7690
- fix(backend): ValuesToInsertTuple.retried_from_item_id should be an int by @ebr in https://github.com/invoke-ai/InvokeAI/pull/7689
- revert: images from board requires a board (does not work on uncategorized) by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7694
- fix(ui): image usage checks collection fields by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7695
- feat(app): do not pull PIL image from disk in image primitive by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7696
- feat(app): adopt metadata linked nodes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7697
- feat(app): improved custom node loading by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7698
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7692
- chore: bump version to v5.7.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7699
- fix(ui): form element settings obscured by container by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7701
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.6.2…v5.7.0
v5.7.1
Enhancements
Improved workflow usability
- Fixed an issue where descriptions were cut off and increasing spacing between node fields in the form builder.
- Auto-linking was added to headings, text elements, workflow descriptions, and node field descriptions.
- The workflow menu was restructured by replacing the “New Workflow” button on the left panel with a workflow menu, while the old menu location now serves as a button to open workflow settings.
- “New Workflow” button was added to the workflow library list for easier access.
Updated Translations Big thanks to @hironow @Ery4z
Fixes
- Fixed an issue where the Invoke button on the Canvas tab did not display a loading spinner due to the request being reset too early, preventing RTKQ from tracking the loading state.
- The enqueue request is now awaited before resetting tracking, ensuring proper feedback.
- Additional logging messages were added to provide consistent JS console logs across tabs.
Installing and Updating
The new Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- fix:(app): Fix input type of default_value on MetadataToFloatInvocation by @skunkworxdark in https://github.com/invoke-ai/InvokeAI/pull/7702
- fix(ui): invoke button not showing loading indicator on canvas tab by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7704
- feat(ui): workflow tweaks by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7705
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7700
- chore: bump version to v5.7.1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7706
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.7.0…v5.7.1
v5.7.2
This release adds a setting to reduce peak VRAM usage and improve performance, plus a few other fixes and enhancements.
Memory Management Improvements
By default, Invoke uses pytorch’s own memory allocator to load and manage models in VRAM. CUDA also provides a memory allocator, and on many systems, the CUDA allocator outperforms the pytorch allocator, reducing peak VRAM usage. On some systems, this may improve generation speeds.
You can use the new pytorch_cuda_alloc_conf setting in invokeai.yaml to opt-in to CUDA’s memory allocator:
pytorch_cuda_alloc_conf: "backend:cudaMallocAsync"If you do not add this setting, Invoke will continue to use the pytorch allocator (same as it always has).
There are other possible configurations you can use for this setting, dictated by pytorch. Refer to the new section in the Low-VRAM mode docs for more information.
Other Changes
- You may now upload WEBP images to Invoke. They will be converted to PNGs for use within the application. Thanks @keturn!
- Added “pull bbox” button to the Regional and Global Reference Image layer’s empty state.
- More conservative estimates for VAE VRAM usage. This aims to reduce the slowdowns and OOMs on the VAE decode step.
- Fixed “single or collection” field type rendering in the Workflow Editor. This was causing fields like IP Adapter’s images and ControlNet’s control weights from displaying a widget.
- Fixed the download button in the Workflow Library list, which was downloading the active workflow instead of the workflow for which the button was clicked.
- Loosened validation for ControlNet begin and end step percentages. Thanks @JPPhoto!
- Enqueuing a batch (i.e. what happens when you click the Invoke button) is now a non-blocking operation, allowing the app to be more responsive immediately after clicking Invoke. To enable this improvement, we migrated from using a global mutex for DB access with long-lived SQLite cursors to WAL mode with short-lived SQLite cursors. This is expected to afford a minor (likely not noticeable) performance boost in the backend in addition to the responsiveness improvement.
- Smaller docker builds. Thanks @keturn!
- Updated translations. Thanks @Harvester62 @Linos1391 @rikublock!
Installing and Updating
The new Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- Tidy app entrypoint by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7668
- Do not cache image layers in CI docker build by @ebr in https://github.com/invoke-ai/InvokeAI/pull/7712
- Add
pytorch_cuda_alloc_confconfig to tune VRAM memory allocation by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7673 - Increase VAE decode memory estimates by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7674
- fix(ui): download button in workflow library downloads wrong workflow by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7715
- docs: update RELEASE.md by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7707
- fix(ui): single or collection field rendering by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7714
- feat: accept WebP uploads for assets by @keturn in https://github.com/invoke-ai/InvokeAI/pull/7718
- chore: bump version to v5.7.2rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7721
- feat(app): non blocking enqueue_batch by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7724
- fix(ui): add missing builder translations by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7723
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7722
- fix(app): recursive cursor errors by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7727
- chore: bump version to v5.7.2rc2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7725
- feat(ui): add button ref image layer empty state to pull bbox by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7732
- chore(docker): reduce size between docker builds by @keturn in https://github.com/invoke-ai/InvokeAI/pull/7571
- Fix begin and end validation used in ControlNets. by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/7605
- feat(app): revised
configure_torch_cuda_allocator()& testing strategy by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7733 - ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7735
- chore: bump version to v5.7.2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7734
- fix(ui): typo by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7740
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.7.1…v5.7.2
v5.8.0
This release introduces an upgraded Workflow Library and FLUX Redux support, among other fixes and enhancements.
Workflow Library
We’ve redesigned the Workflow Library to provide a smoother interface for browsing workflows.
- Larger modal to display workflows in a grid
- Browse by tag (default workflows only)
- Search by name/description/tags
- Opened at works correctly
- Workflows may have thumbnails
FLUX Redux
This release includes support for FLUX Redux in Workflows and Canvas.
FLUX Redux is an add-on model for FLUX. It works similarly to IP Adapter or an “instant” LoRA, where an input image guides the generation’s style and composition. It can provide some degree of character consistency.
To use it on Canvas, add a Global Reference Image layer and drag a reference image onto the layer - same as you would for IP Adapter - and select the FLUX Redux from the model drop-down.
You can also use it in Regional Guidance layers. Add a Reference Image to the layer and select FLUX Redux from the model drop-down.
Other Changes
- You may override the min and max constraints for float and integer fields added to the Form Builder. This is useful when fields are set to render as sliders and/or to add guardrails to your form fields.
- Support for uploading
WEBPimages. They are converted toPNGafter uploading. - Improvements to workflow loading, including checks on every load to ensure unsaved changes are not lost.
- Fixed an issue where workflows were not marked as having unsaved changes when its form was edited.
- Form Builder text and heading elements render line breaks correctly.
- Fixed issue where some Form Builder elements didn’t fill their containers correctly.
- Invalid node fields now display errors in the field’s tooltip.
- Fixed issue where duplicate edges could be created when re-connecting an existing edge.
- Focused UI regions are highlight (configurable in Settings, off by default). Thanks @joshistoast!
- Updated the display names of model-specific nodes and default workflows to include the model. For example,
Main Model Loaderis nowMain Model - SD1.5. - Internal changes to custom node loading.
- Updated translations. Thanks @rikublock @Linos1391 @Harvester62!
Download the models from the Starter Models tab in the Model Manager.
Installing and Updating
The new Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- Ruff upgrade by @jazzhaiku in https://github.com/invoke-ai/InvokeAI/pull/7741
- Add FLUX Redux support by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7726
- feat: workflow thumbnails by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7676
- refactor(app): stable default workflows, workflow saving and loading fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7729
- repo: add @jazzhaiku to codeowners for CI, app and backend by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7744
- Changed version of FluxDenoiseInvocation by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/7745
- feat: new workflow library by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7710
- feat(api): safer metadata extraction during image upload by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7747
- chore: bump version to v5.8.0a1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7749
- fix(ui): add webp to supported image types in toast messages by @rikublock in https://github.com/invoke-ai/InvokeAI/pull/7754
- feat(app): less janky custom node loading by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7748
- fix(ui): hide shared on workflow library by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7751
- feat(ui): flux redux canvas by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7752
- fix(ui): missing builder translations by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7753
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7746
- chore: bump version to v5.8.0a2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7762
- feat: workflow library iteration 2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7765
- update opened_at to be nullable by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7767
- fix(api) add default for opened_at by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7771
- feat(ui): reworked workflow loading flow by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7769
- workflow iteration 4 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7772
- fix(ui): respect line breaks in builder text and heading elements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7773
- chore: bump version to v5.8.0rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7775
- allow workflow sort options to be passed in by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7776
- make sure that recent view always sorts by opened_at by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7777
- getting started copy for workflows by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7778
- fix(ui): prevent vertical scrolling on row containers by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7779
- tweak(ui): styling for image collection fields by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7783
- feat(ui): show field errors in field tooltips by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7782
- fix(ui): do not mark workflow as touched when setting form field initial values by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7789
- fix(ui): duplicate edges on reconnect by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7791
- ci: pin tj-actions/changed-files by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7794
- chore: prep for v5.8.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7795
- feat: :sparkles: Highlight Focused UI Regions by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/7786
- feat(ui): allow pasting into gallery on canvas and workflows tabs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7781
- fix(ui): generator widget should stretch to fill when added to builder by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7790
- feat(ui): configurable field constraints for number fields in form builder by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7787
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7768
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.7.2…v5.8.0
v5.8.1
This release fixes a bug with retry functionality that could result in an endless loop of errors.
Installing and Updating
The new Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- feat(ui): add cancel and clear all as toggleable app feature by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7799
- fix(app): incorrect values inserted when retrying queue item by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7801
- chore: prep for v5.8.1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7802
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.8.0…v5.8.1
v5.9.0
This release adds FLUX Fill support in Workflows and Canvas, beta support for the LLaVA OneVision VLLM family of models, and a selection of minor fixes and enhancements.
FLUX Fill
FLUX Fill provides high quality inpainting and outpainting, improving on these tasks over the other FLUX models. It’s a “main” model, like FLUX dev or schnell.
To use it, download it from Starter Models and then select it from the main model drop-down on Canvas. It’s not compatible* with Text to Image or Image to Image - you’ll get an error if you try to Invoke without an inpaint mask or some empty regions in your bbox.
*Technically, it can do Text to Image and Image to Image - but the quality is very poor. We’ve opted to disallow this on Canvas.
LLaVA OneVision VLLM
This multimodal model generates text from text, image and/or video* inputs. You can use it to generate prompts and and describe images. You can use it in Workflows with the LLaVA OneVision VLLM node.
The 0.5B variant of the model is available for download from Starter Models.
*Invoke does not support video inputs.
Other Changes
- Support for custom string field drop-downs in Workflow Builder. Add a node’s string field to the Builder and choose the dropdown component to see it in action.
- The About modal now shows the app’s runtime settings. It includes a list of explicitly-set settings (i.e. the contents of
invokeai.yaml), so it is possible to see what runtime settings are app defaults and which are user-defined. - Improved UX for missing or unexpected fields in Workflows.
- De-wonkified LoRA node names (they got wonkified in v5.8.0).
- Better error messages when scanning models with
picklescan. - Fixed issue where shift-clicking to draw on Canvas ignored
Clip to Bboxsetting. - Fixed issue with Image Viewer where the image could overflow the viewer.
- Fixed overflow with looooong node titles.
- Fixed a minor visual bug in string generator nodes.
- Internal: First iteration of improved model probing API.
- Internal: Improved testing system for model-related tests.
- Internal: Port LLaVA OV models to use new API.
- Internal: Cleaned up a lot of model-related code.
- Internal: Support hot reload for custom nodes. Thanks @keturn!
- Updated translations. Thanks @rikublock @Harvester62 @Linos1391!
Installing and Updating
The new Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- Add LLaVA OneVision model support by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7693
- Model classification api by @jazzhaiku in https://github.com/invoke-ai/InvokeAI/pull/7742
- feat(app): better errors when scanning models with picklescan by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7803
- Stripped models by @jazzhaiku in https://github.com/invoke-ai/InvokeAI/pull/7797
- Use git-lfs for larger assets by @jazzhaiku in https://github.com/invoke-ai/InvokeAI/pull/7804
- Add FLUX Fill support by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7780
- Customized workflow browsing by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7810
- ui: workflows recommended followup by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7812
- fix(ui): clip shift-draw strokes to bbox when clip to bbox enabled by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7813
- feat(ui): support FLUX Fill on Canvas by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7811
- feat(ui): better missing fields ux in workflows & builder by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7816
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7805
- chore: prep for v5.9.0rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7815
- fix(mm): flux model variant probing by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7825
- feat(nodes): clean up lora node names by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7824
- feat(ui): custom dropdowns for strings in builder by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7818
- fix(ui): siglip model translation key by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7827
- Port LLaVA to new API by @jazzhaiku in https://github.com/invoke-ai/InvokeAI/pull/7817
- fix(ui): mask logic in graph builders by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7828
- fix(ui): restore
display: flexto image viewer and node editor by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7831 - ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7821
- fix: make dev_reload work for files in nodes/ by @keturn in https://github.com/invoke-ai/InvokeAI/pull/7819
- chore: prep for v5.9.0rc2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7829
- Import Smoke Test by @jazzhaiku in https://github.com/invoke-ai/InvokeAI/pull/7835
- fix: make source location discovery more robust by @keturn in https://github.com/invoke-ai/InvokeAI/pull/7837
- fix(ui): long node titles overflow by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7838
- feat: show runtime config in about modal by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7840
- fix(ui): correctly render whitespace in strings in string generator previews by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7832
- Taxonomy by @jazzhaiku in https://github.com/invoke-ai/InvokeAI/pull/7833
- chore: prep for v5.9.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7845
- fix(mm): LLaVA OneVision model calculates its own size by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7844
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.8.1…v5.9.0
v5.9.1
This release includes bugfixes and internal changes.
Changes
- Enhancement: Disable the denoising strength slider for FLUX Fill, which ignores the strength parameter.
- Fix: Error when mask blur is set to 0.
- Fix: Issue with inpaint/outpainting where the output images were not masked correctly, causing what should be transparent areas (i.e. alpha 0/255) to be very slightly not-transparent (i.e. alpha 1/255). This threw off layer bounds calculations and caused gradual degradation across repeated inpainting/outpainting operations in unmasked areas.
- Fix: Error when installing certain FLUX finetunes.
- Internal: Continued iteration on model manager’s internal API.
- Internal: CI workflows now use
uv, dropped nonfunctional CUDA/ROCm workflows (we only have CPU runners anyways).
Installing and Updating
The new Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- fix(nodes): handle zero fade size (i.e. mask blur 0) by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7852
- Small improvements by @jazzhaiku in https://github.com/invoke-ai/InvokeAI/pull/7842
- feat(ui, api): support for bulk client-side uploads by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7851
- ci: streamline workflows by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7739
- fix(nodes): expanded masks not 100% transparent outside the fade out region by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7854
- feat(ui): disable denoising strength when selected models flux fill by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7858
- fix(mm): flux variant probing by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7862
- chore: prep for v5.9.1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7863
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.9.0…v5.9.1
v5.10.0
This release focuses on internal improvements with a number of enhancements and fixes.
The biggest enhancement is support for CogView4, a permissively-licensed model that is fairly close to FLUX in terms of quality.
🚨 Achtung! 🚨
There are important installation notes to be aware of in this release, which includes major updates to Invoke’s core components.
-
You must use the latest installer/launcher (v1.5.0). If you’re using an older launcher version, the update may fail.
To fix this, download the latest installer/launcher from https://invoke.com/downloads.
-
If the installation fails, use repair mode to fix it.
The installation may fail due to Python environment conflicts with log messages like those in this screenshot.
To fix this, retry the installation with repair mode enabled, which will reinstall the bundled Python and resolve most installation issues.
Enable repair mode by ticking this checkbox on the Review step of the install, then click Install.
-
Form Builder reset on first launch.
When you start Invoke for the first time after updating to v5.10.0, your Form Builder will be reset, losing any unsaved changes.
Before updating, save your current workflow. After updating, re-load it manually.
Python 3.12 & PyTorch 2.6.0 support
Invoke now supports Python 3.12 and PyTorch 2.6.0. Many major dependencies have also be bumped to their latest version.
Changes
Enhancements
- Support for CogView4 in Canvas and Workflows. Like FLUX, it works best with detailed, narrative prompts. You can download the model from the Starter Models tab in the Model Manager. It’s pretty chunky at ~30GB overall, with similar hardware requirements to FLUX.
- Save Canvas/Bbox to Gallery buttons now save basic metadata with the image (prompts, model, seed).
- Models now have their file sizes recorded and displayed in the Model Manager. Thanks @keturn!
- New capabilities for FLUX Redux to control how much influences the generation. On Canvas, this is controlled by the new Image Influence setting for both Global and Regional Reference Images. There are more controls in Workflows. Thanks @skunkworxdark!
- Added nodes to convert metadata into collection types. Thanks @skunkworxdark!
- Improved undo/redo on Workflows.
- Updated docs. Thanks @chantellmocha!
- Updated translations. Thanks @rikublock @Harvester62 @Linos1391 @RyoK0220!
Fixes
- Fixed error when loading workflows that has invalid edges. This can occur if an installation is missing a custom node.
- When left/right arrow keys are pressed while focused on a tab UI element, do not switch between images.
- Restored missing “Using torch device” message that should display on startup.
- ONNX models (e.g. DW OpenPose) now have their sizes calculated correctly. This fixes an issue where these models didn’t work fully with the model manager.
- Fixed issue where the Canvas Color Picker didn’t grab alpha values correctly.
- Fixed Canvas layer drop indicator line color (was bright red).
- Send to Canvas image actions now work when Canvas is uninitialized. For example, if the UI loads on the Workflows tab and the user has not yet clicked the Canvas tab, the Canvas will not be initialized.
- Increased padding when fitting layers to canvas to prevent the floating tool panel and other buttons from covering up the edges of the layers.
- Fixed issue where, after a Canvas reset, if no prompt is entered, generating will re-use the prompt that was last used before the reset.
- Fixed issue where some network queries weren’t reset correctly. This could have caused a minor memory leak.
Internal
- Support for python 3.12. This necessitates the use of repair mode during installation, as described in the 🚨 callout above.
- Bump many dependencies to latest, including torch.
- Remove many unused dependencies.
- Remove legacy scripts from the codebase.
- Ported LoRA model configs to the new classification API. This is an internal change.
- Merged workflow Form Builder and Node Editor state and logic. Undo/redo on the Workflows tab now works for both Node Editor and the Form Builder, and the way actions are grouped in the undo/redo history is improved. This causes the loss of Form Builder state on first run, as described in the 🚨 callout above. Unfortunately, there’s no way to prevent this data loss without significant effort.
Installing and Updating
The new Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- refactor(nodes): invocation registration logic by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7826
- fix(ui): GET presigned URLs directly instead of trying to use redirects by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7866
- Port LoRA to new classification API by @jazzhaiku in https://github.com/invoke-ai/InvokeAI/pull/7849
- Change
timmandcontrolnet-auxpins to fix LLaVA model support by @ebr in https://github.com/invoke-ai/InvokeAI/pull/7846 - fix(ui): error loading workflows by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7870
- fix(ui): do not switch between images when focused on a tab element by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7865
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7841
- feat: workflow publishing ui by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7871
- gh: update codeowners by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7878
- feat: workflow publish followups by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7876
- Update manual.md by @chantellmocha in https://github.com/invoke-ai/InvokeAI/pull/7874
- chore: support python 3.12, torch 2.6.0, clean up build/deps by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7873
- fix(ui): fix badge for validation run by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7882
- Fix docker build and re-add missing dependency by @ebr in https://github.com/invoke-ai/InvokeAI/pull/7884
- feat(app): restore “Using torch device” message on startup by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7888
- docs: remove legacy scripts refs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7889
- feat(mm): support size calculation for onnx models by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7880
- refactor(ui): workflow unsaved changes/published state tracking by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7891
- (ui): more publishing follow-ups by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7895
- refactor(ui): merge nodes & workflow slices by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7892
- fix(ui): normalize alpha value to 0-1 when picking color on canvas by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7896
- Update flux_redux.py with downsampling and weight options by @skunkworxdark in https://github.com/invoke-ai/InvokeAI/pull/7875
- chore: prep for v5.10.0a1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7898
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7879
- feat(ui): save canvas/bbox to gallery saves basic metadata by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7900
- feat(ui): safer use of drawImage by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7902
- fix(ui): canvas dnd drop indicator color by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7903
- feat(ui): allow send-image-to-canvas to work when canvas is uninitialized by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7905
- feat: display model storage size by @keturn in https://github.com/invoke-ai/InvokeAI/pull/7877
- Add CogView4 model support by @RyanJDick in https://github.com/invoke-ai/InvokeAI/pull/7770
- ci: add check for
uvlockfile consistency withpyproject.tomlby @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7912 - feat: publish misc by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7907
- Add uv lock check to git pre-commit by @ebr in https://github.com/invoke-ai/InvokeAI/pull/7916
- fix(ui): increase padding when fitting layers to stage by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7913
- Update metadata_linked.py with conversion to primitive collections. by @skunkworxdark in https://github.com/invoke-ai/InvokeAI/pull/7915
- chore: prep for v5.10.0rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7917
- fix(app): remove accidentally committed tensor cache size by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7924
- docs: update pytorch indices by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7919
- fix(ui): ensure dynamic prompts updates on any change to any dependent state by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7920
- fix(ui): ensure query subs are reset in case of error by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7921
- fix(ui): canvas entity type disabled logic by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7927
- fix(ui): scrolling in builder by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7922
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7906
- chore: prep for v5.10.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7928
New Contributors
- @chantellmocha made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/7874
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.9.1…v5.10.0
v5.10.1
🚨 Achtung! 🚨
If you already updated to v5.10.0, you can skip this section. If you are on v5.9.1 or older, please review this section before updating.
There are important installation notes to be aware of in this release, which includes major updates to Invoke’s core components.
-
You must use the latest installer/launcher (v1.5.0). If you’re using an older launcher version, the update may fail.
To fix this, download the latest installer/launcher from https://invoke.com/downloads.
-
If the installation fails, use repair mode to fix it.
The installation may fail due to Python environment conflicts with log messages like those in this screenshot.
To fix this, retry the installation with repair mode enabled, which will reinstall the bundled Python and resolve most installation issues.
Enable repair mode by ticking this checkbox on the Review step of the install, then click Install.
-
Form Builder reset on first launch.
When you start Invoke for the first time after updating to v5.10.0, your Form Builder will be reset, losing any unsaved changes.
Before updating, save your current workflow. After updating, re-load it manually.
Changes
- Support partial loading for LLaVA and SigLIP (FLUX Redux) models, reducing VRAM requirements for users with Nvidia GPUs.
- Reduce peak CPU RAM usage during initial load of LLaVA and SigLIP models. This allows users with at least 24GB CPU RAM to run the LLaVA 7B model without crashing during load. With partial loading now working for the model, most users should be able to run the model - though it can take a few minutes if you don’t have a GPU with 24GB VRAM.
- Revert a recent change to model installation, which could result in some models being misidentified as LoRAs.
- The data viewer component, used to display JSON (e.g. metadata, workflows, node outputs) now wraps lines.
Installing and Updating
The new Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- feat(ui): wrap JSON in dataviewer by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7930
- fix(mm): partial loading for LLaVA and SigLIP models, hard crash on initial load by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7929
- fix(mm): disable new model probe API by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7940
- chore: bump version to v5.10.1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7941
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.10.0…v5.10.1
v5.11.0
This release’s largest change is a new and improved model drop-down component.
🚨 Achtung! 🚨
If you already updated to v5.10.0, you can skip this section. If you are on v5.9.1 or older, please review this section before updating.
There are important installation notes to be aware of in this release, which includes major updates to Invoke’s core components.
-
You must use the latest installer/launcher (v1.5.0). If you’re using an older launcher version, the update may fail.
To fix this, download the latest installer/launcher from https://invoke.com/downloads.
-
If the installation fails, use repair mode to fix it.
The installation may fail due to Python environment conflicts with log messages like those in this screenshot.
To fix this, retry the installation with repair mode enabled, which will reinstall the bundled Python and resolve most installation issues.
Enable repair mode by ticking this checkbox on the Review step of the install, then click Install.
-
Form Builder reset on first launch.
When you start Invoke for the first time after updating to v5.10.0, your Form Builder will be reset, losing any unsaved changes.
Before updating, save your current workflow. After updating, re-load it manually.
Changes
- New model drop-down component, aiming to improve the user experience with selecting models. It’s currently enabled only for the main model drop-down.
- Added button to reset an existing HF token to the Model Manager tab.
- Support for FLUX LoRAs trained in
invoke-training. - Nodes that output images, including nodes that output image collections, should always update the gallery.
- Fixed issue where drag-and-drop didn’t scroll when used in a scrollable container (for example, when you have a lot of layers or form builder elements).
- Internal: Updated frontend dependencies.
- Internal: Optional
output_metafield added toBaseInvocationOutput. This field is not currently exposed in the Workflow Editor. In the future, it may be exposed to facilitate attaching additional metadata to invocation outputs. - Internal: Support code for a generation via Imagen3/ChatGPT 4o. These API models are currently unavailable in the Community Edition, but we may be able to change that in the future.
Installing and Updating
The new Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- feat(ui): new model picker combobox by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7904
- fix(ui): dnd autoscroll in scrollable containers by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7955
- feat(ui): add all image outputs to gallery (including collections) by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7957
- chore(ui): bump deps by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7956
- chore: prep for v5.11.0rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7966
- add optional output_metadata to baseinvocation by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7958
- feat: support for commercial imagen3 node by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7967
- add gpt-image to possible base model types by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7970
- fix(ui): toast typo by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7971
- change base model for chatGPT 4o by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7972
- Maryhipp/chatgpt UI by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7969
- docs: fix Contribute node import error by @ubansi in https://github.com/invoke-ai/InvokeAI/pull/7968
- feat(ui): chatgpt ref images & img2img by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7974
- send the list of reference images reversed to chatGPT so it matches displayed order by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7978
- feat(ui): ability to disable generating with API models by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7979
- feat(ui): iterate on combobox component, model picker by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7975
- feat(ui): show unsupported gen mode toasts as warnings intead of errors by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7982
- fix(ui): always add selectModelsTab hotkey data to prevent unhandled exception while registering the hotkey handler by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7981
- add prompt validation of at least one character to imagen3 graph by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7983
- fix: deprecation warning in get_iso_timestamp by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/7953
- feat: UI to reset HF token by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7988
- chore: prep for v5.11.0rc2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7990
- Implementing support for Non-Standard LoRA Format by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/7985
- display credit column in queue list if shouldShowCredits is true by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7991
- add credits to queue item status changed by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7993
- feat: support usage_info, chatgpt/imagen3 model fields by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7994
- Change feature to disable
apiModelstochatGPT4oModelsonly by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7996 - use the max for iterations passed in by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7998
- refetch queue list on mount by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/7999
- easier way to override Whats New by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8000
- feat(ui): custom error toast support by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8001
- feat(nodes): support bottleneck flag for nodes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8003
- chore: prep for v5.11.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7995
New Contributors
- @ubansi made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/7968
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.10.1…v5.11.0
v5.12.0
This release includes support for Nvidia 50xx GPUs, a way to relate models (e.g. LoRAs with a specific main model), new IP Adapter methods and other smaller changes..
Changes
- Bumped PyTorch dependency to v2.7.0, which means Invoke now supports Nvidia 50xx GPUs.
- New model relationship feature. In the model manager tab, you may “link” two models. At this time, the primary intended use case is to link LoRAs to main models. When you have the main model selected, the linked LoRAs will be at the top of the LoRA list. Thanks @xiaden!
- New IP Adapter methods
Style (Strong)andStyle (Precise). The previous style method is renamed toStyle (Simple). Thanks @cubiq! - Fixed GGUF quantization on MPS. Thanks @Vargol!
- Updated translations. Thanks @Harvester62 @rikublock @Linos1391 @RyoK0220!
- Internal: Invocation model changes, which aim to reduce occurrences of
ValidationErrorerrors. - Internal: Addressed pydantic deprecation warning.
- Internal: Re-enabled new model classification API with safeguards.
🚨 Stricter Rules for Nodes, including Custom Nodes
This section is for node authors, whose nodes may be affected by the stricter rules.
Default values for node fields are now validated as the app starts up.
For example, this node defines my_image as an ImageField, but it provides a default value of None, which is not a valid ImageField:
@invocation("my_invocation")class MyInvocation(BaseInvocation): my_image: ImageField = InputField(default=None)
def invoke(self, context: InvocationContext) -> ImageOutput: ...This node will error on app startup:
# 😱 Error on startup!InvalidFieldError: Default value for field "my_image" on invocation "my_invocation" is invalid, 1 validation error for MyInvocationmy_image Input should be a valid dictionary or instance of ImageField [type=model_type, input_value=None, input_type=NoneType]There are two ways to fix this, depending on the node author’s intention.
1. If the field is truly optional, update the type annotation.
Using the example invocation from above, make the type annotation for my_image a union with None:
@invocation("my_invocation")class MyInvocation(BaseInvocation): my_image: ImageField | None = InputField(default=None)
def invoke(self, context: InvocationContext) -> ImageOutput: ...
ImageField | Noneis equivalent toOptional[ImageField]. Either works.
2. If the field is not optional, remove the default or provide a valid default value.
Using the example invocation from above, simply remove default=None:
@invocation("my_invocation")class MyInvocation(BaseInvocation): my_image: ImageField = InputField()
def invoke(self, context: InvocationContext) -> ImageOutput: ...This node has an integer field that must be greater than 10, but the provided default value of 5. This will error:
@invocation("my_other_invocation")class MyOtherInvocation(BaseInvocation): my_number: int = InputField(default=5, gt=10)
def invoke(self, context: InvocationContext) -> IntegerOutput: ...Either remove the default, or provide a default value greater than 10.
Installing and Updating
The new Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- fix(nodes): pydantic field type massaging improvements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/7984
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/7938
- Jazzhaiku/stats by @jazzhaiku in https://github.com/invoke-ai/InvokeAI/pull/8006
- feat(ui): model relationship management by @xiaden in https://github.com/invoke-ai/InvokeAI/pull/7963
- Add to overload for GGMLTensor, so calling to on the model moves the quantized data. by @Vargol in https://github.com/invoke-ai/InvokeAI/pull/7949
- fix(app): address pydantic deprecation warning for accessing
BaseModel.model_fieldsby @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8012 - chore: bump torch to 2.7.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8013
- Expanded IP Adapter modes. by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8011
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8015
- chore: prep for v5.12.0rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8014
- fix(ui): only use client-side uploads if more than one image by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8016
- fix(nodes): better defaults parsing and error handling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8018
- Re-enable classification API as fallback by @jazzhaiku in https://github.com/invoke-ai/InvokeAI/pull/8007
- chore: prep for v5.12.0rc2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8021
- update chatGPT-4o restriction to only apply to high quality by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8027
- fix(nodes): transformers bug with SAM by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8030
- gh: update CODEOWNERS by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8033
- fix: improve gguf performance with torch.compile by @keturn in https://github.com/invoke-ai/InvokeAI/pull/8031
- feat(ui): Adds Imagen4 scaffold support by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8032
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8020
- chore: prep for v5.12.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8034
New Contributors
- @xiaden made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/7963
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.11.0…v5.12.0
v5.13.0
This release adds advanced Inpainting mask controls and a selection of other minor enhancements.
Changes
- Canvas Inpaint Masks have additional per-mask settings. Enable them via right-click menu on the mask layer. Thanks @dunkeroni for working on these very useful features!
Noise Leveladds image-space noise to the masked region before it is denoised. This can add natural variation and detail to the region. The added noise is generated using the global seed parameter as the RNG seed.Denoise Limitcaps the amount of denoising done on the masked region. You can inpaint multiple regions of the image simultaneously, but with different amounts of variation. This greatly simplifies a workflow where you want to make variations on an image, but want different parts of the image to vary more or less.
- When selecting aspect ratios, give special handling to SDXL’s trained sizes to reduce artifacts. Thanks @dunkeroni!
- Improved Canvas scroll-to-zoom handling, including smoother scaling on touchpads and snapping to common zoom levels.
- Added button to pull the bbox content into an empty Control Layer.
- Added ability to delete all images from the Uncategorized board via button in its right-click menu.
- Prompt boxes remember their size.
- Support installing HF repo subfolders via Model Manager’s HuggingFace tab.
- Faster Heuristic Resize algorithm, used in
New Layer from Image (Resize)functionality. - Allow LoRA patcher to skip unknown layers instead of erroring. Thanks @keturn!
- Log a warning when a node has an unregistered output class.
- Updated Compel to get better handling for long prompts.
- Updated translations.
Installing and Updating
The Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- Update manual installation for v5.12.0 by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/8036
- fix(backend) add new method types to metadata by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8037
- Update scaling math to land on 100% consistently. by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8043
- Fix: Don’t auto-scale away from SDXL training sizes by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/8042
- Enable ‘pull into bounding box’ from empty Control Layer by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8045
- Complex Inpaint Masks by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/8035
- Update Compel to 2.1.1 and apply Sentences Split logic by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8026
- feat(ui): revised canvas scale snapping by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8050
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8040
- chore: prep for v5.13.0rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8049
- build: test and fix pyproject classifiers by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8051
- gh: update CODEOWNERS by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8052
- Update communityNodes.md by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/8055
- feat(nodes): faster heuristic resize, support resizing on upload, use it in canvas by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8057
- use onClickGoToModelManager for empty model picker by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8060
- Fix: “Preserve Masked Region” for new mask compositing by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/8065
- feat(ui): persist prompt box sizes by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8061
- feat(LoRA): allow LoRA layer patcher to continue past unknown layers by @keturn in https://github.com/invoke-ai/InvokeAI/pull/8059
- feat(ui): delete all uncategorized images by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8063
- feat(ui): warn on unregistered invocation output by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8056
- chore: bump version to v5.13.0rc2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8066
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8058
- (Fix)(app) Delay Imports that require torch for app launch by @mickr777 in https://github.com/invoke-ai/InvokeAI/pull/8067
- chore: bump version to v5.13.0rc3 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8068
- chore: prep for v5.13.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8075
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8073
- fix(mm): handle invoke syntax for HF repo ids when fetching HF model metadata by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8078
- chore(ui): update whatsnew by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8079
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.12.0…v5.13.0
v5.14.0
Changes
- Fix error when using inpainting models. Thanks @dunkeroni!
- Fix issue where Canvas didn’t fit layers to the viewport correctly.
- When fitting layers, Canvas animates the transition to the new zoom and scale to make it less jarring.
- During internal Canvas operations like compositing, a small spinner renders in the bottom-right corner of the Canvas to indicate that it is indeed doing something.
- Updated translations. Thanks @Harvester62 @RyoK0220 @hironow!
Installing and Updating
The Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- Fix: Create Gradient Mask errors when using inpaint model by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/8082
- feat(ui): canvas stage, zoom, and fit improvements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8085
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8080
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8086
- chore: bump version to v5.14.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8087
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.13.0…v5.14.0
v5.15.0
Changes
- Support for AI Toolkit FLUX LoRAs. Thanks @keturn!
- Fixed
AttributeError: module 'cv2.ximgproc' has no attribute 'thinning'error, which could occur when using Control Layers. - Added SDXL IP Adapter Plus to starter models.
- Gallery search supports image creation dates. Thanks @dunkeroni!
- Improved JSON formatting. Thanks @j-brooke!
- Fixed (hopefully) a rare
ValidationErrorduring generation/dequeuing, as seen in #7950. - Support for CUDA devices in slots 2 and above. Thanks @heathen711!
- Internal: Use
warninginstead ofwarn, fixing deprecation message. Thanks @emmanuel-ferdman! - Improved memory usage behaviour, reducing peak RAM usage due to memory fragmentation.
Installing and Updating
The Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- Make image creation dates searchable in the gallery by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/8089
- Add Precise Reference to SDXL Starter Models by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8088
- fix: opencv dependency conflict by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8095
- disable publish and cancel buttons once it begins by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8097
- fix(app): error on upload + resize for unusual image modes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8096
- perf(app): reduce peak memory usage by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8090
- Migrate to modern logger interface by @emmanuel-ferdman in https://github.com/invoke-ai/InvokeAI/pull/8100
- fix(app): guard against possible race conditions during enqueue by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8098
- Updated fracturedjsonjs to version 4.1.0 for friendlier comma placement by @j-brooke in https://github.com/invoke-ai/InvokeAI/pull/8106
- feat(LoRA): support AI Toolkit LoRA for FLUX by @keturn in https://github.com/invoke-ai/InvokeAI/pull/8071
- chore: prep for v5.15.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8104
- Update supported cuda slot input. by @heathen711 in https://github.com/invoke-ai/InvokeAI/pull/8107
New Contributors
- @j-brooke made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/8106
- @heathen711 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/8107
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.14.0…v5.15.0
v6.0.0
Invoke’s next major release, 6.0, brings many new features plus an improved UI and user experience.
Core UI Enhancements
We’ve retired the 5.0 layout and introduced the foundations for a task-specific, flexible, and persistent interface. It should still feel very familiar!
-
Launchpads for Guided Experience: New to a feature? The Generate, Upscale, Workflow, and Model tabs now feature “Launchpads” to guide you through getting started.
-
Customizable Layout: Drag, drop, and resize panels to create the workspace that works for you on each tab. Your custom layout, including your last panel used, is saved automatically, and we have plans to expand customization options in the future for power users.
-
Reference Image Prompt Zone: Updated and intuitive global reference image management, now in the left-hand settings panel.
-
Improved Performance: Tabs now load on demand, resulting in a faster and more responsive experience within each tab.
-
The Infinite Scroll is back, and now shows all images at once in a single grid. We anticipate that the loss of pagination please some, and anger others. We’re considering and evaluating ways we can solve for the problem of simple chunk-based navigation here — Share feedback as you use it!
Enhanced Canvas Experience
The Canvas has been enhanced further to continue to serve as a powerhouse for artists and creators, with a host of new features and workflow improvements.
-
Rule of Thirds Guide: Enable a composition guide to help frame your creations. Enabled in Canvas settings.
-
Bounding Box to Reference Image: Instantly create a new reference image from the contents of the bounding box, using the button next to the Reference image drop zone.
-
New “Edit” button in image viewer, creating a new canvas with the selected image.
-
New “Control Layer Resized” drop zone for adding an automatically optimized control layer to an existing canvas.
-
Overlay Control - Toggle the visibility of all non-raster layers (like Control Layers and Inpaint Masks) with a single click or the Shift+H hotkey.
-
Improved staging toolbar and navigation, with preview image controls available directly on the toolbar.
-
Save All Canvas Generations: A new option allows you to automatically save every image generated on the canvas to your gallery. Available in the Canvas settings.
-
Export Canvas to PSD (Photoshop) - Accessed in the Raster Layers header) - You can now directly export your canvas, with all raster layers intact, to a .psd file for seamless integration with Adobe Photoshop and other compatible image editors.
Other Features and Improvements
-
Full UI integration for FLUX Kontext Dev, allowing you to guide generations with a reference image. This includes support for the dev and quantized (gguf) variants. (Note: No support currently for fp8)
-
LoRA Picker Overhaul: The LoRA list now uses the new model picker, automatically filtering for LoRAs compatible with your selected base model, with the option to display preview images and related models configured within the Model Manager.
-
OMI LoRA Support and additional AI Toolkit LoRA support for FLUX.
-
Countless bug fixes, enhancements and performance improvements.
Installing and Updating
The Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Note: With recent updates to pytorch, users on older GPUs (2XXX series) will likely run into issues with installing/updating. We are still evaluating how we can support older GPUs as torch updates are released within the installer, but in the meantime users have found success manually downgrading torch. Head to Discord if you need help.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- fix names of unpublishable nodes by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8110
- fix(nodes): ensure each invocation overrides _original_model_fields with own field data by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8114
- Change save button to Invoke Blue by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8116
- Omi by @jazzhaiku in https://github.com/invoke-ai/InvokeAI/pull/8120
- Flux Kontext UI support by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8111
- feat: add user_label to FieldIdentifier by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8126
- fix 1:1 ratio for flux kontext by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8127
- Jazzhaiku/vendor omi by @jazzhaiku in https://github.com/invoke-ai/InvokeAI/pull/8128
- refactor(ui): canvas flow by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8069
- fix(ui): regional guidance ref image not selecting by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8129
- convert LoRA picker to use new model picker component by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8070
- fix(ui): Fix LoRA picker to default to current base model architecture by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8135
- Add hotkey and button for layer visibility by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8122
- Updated Model Launchpad by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8124
- Improve prompt template menu by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8131
- Rule of 3rds Composition Guide by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8130
- fix(ui): Waiting for Image UX by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8133
- feat(ui): Add FLUX Kontext conditioning support for reference images by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8134
- Update flux_text_encoder.py with log_tokenization in a similar way to how compel does it. by @skunkworxdark in https://github.com/invoke-ai/InvokeAI/pull/8144
- fix(ui): prevent NaN from getting into konva internals by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8138
- feat(ui): workflows styling tweaks by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8137
- Update flux_denoise.py by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/8143
- feat(ui): run graph abstraction by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8146
- Fixed a typo by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8153
- fix(app): prep of collect nodes can create invalid edges by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8154
- refactor(ui): enqueue/graph-building meta-logic by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8155
- feat(ui):Export to PSD by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8147
- fix(ui): Fix related models in new model picker. by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8151
- fix(ui): Upscale creativity bug by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8157
- feat(ui):Workflow and upscale launchpads by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8159
- fix(ui):On Edit/View workflow buttons, navigate to the right panel. by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8160
- fix(ui): Updating styling to include Launchpad Icon & remove Canvas progress bar by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8161
- Image Viewer Toolbar Updates by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8162
- refactor(ui): focus/hotkey handling for new layout by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8156
- chore: bump version to v6.0.0rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8164
- fix(ui): really do not load disabled tabs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8163
- Fix regional guidance tooltip reference by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8167
- handle flux-kontext reference images when switching bases by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8169
- add modelRelationships and aboutModal to disable-able features by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8166
- fix(api): exception handling in session queue by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8179
- fix(ui): button functionality in workflow tab by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8168
- fix(ui):Remove Canvas Session button by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8170
- feat(ui):Automatically select brush tool on edit by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8171
- feat(ui): prompt expansion by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8140
- fix(ui): Fix translation reference in models picker by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8173
- fix(ui): Fix save to gallery image update issue from staging area. by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8174
- feat(ui):Add toggle for reference image visibility by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8176
- remove pulsing animation by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8181
- properly build batch for flux kontext api batches by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8182
- disable dropzone if prompt expansion is disabled by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8186
- Update flux.py - change T5Tokenizer to T5TokenizerFast by @skunkworxdark in https://github.com/invoke-ai/InvokeAI/pull/8180
- fix(ui): Reset canvas session when queue item is canceled by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8175
- fix(ui): Fix brush layer positioning in PSD export by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8183
- fix(ui): Re-implement image comparison on drag by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8185
- fix(ui): Fix gallery toggle button functionality by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8187
- fix(ui): control layers ignored in txt2img by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8189
- fix(ui): after canceling a filter, layer loses its content by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8190
- chore: bump version to v6.0.0rc2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8178
- fix(ui): sets cfg_rescale_multiplier to 0 if there is no default. Also fixes issue with truthiness check causing 0 value to be missed. by @jeremygooch in https://github.com/invoke-ai/InvokeAI/pull/8195
- feat(ui): enable RTK Query’s refetchOnReconnect by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8193
- fix(ui): hardcode literals for run graph errors by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8198
- perf(ui): lora components by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8197
- refactor(ui): navigation API by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8199
- refactor(ui): metadata parsing by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8200
- Nav fixes by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8201
- fix(ui): Kontext tiling bug by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8192
- flux kontext dev in UI by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8188
- chore: bump version to v6.0.0rc3 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8196
- tidy(ui): lint & bump by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8207
- ui: v6 followups by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8211
- chore: bump version to v6.0.0rc4 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8212
- add claude nodes to blacklist for publishing by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8216
- restore send-to-canvas functionality by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8219
- fix(ui): Fix SDXL Prompt Recall & Ref Image Recall Error by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8218
- update toast for prompt expansion failed by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8221
- feat(ui): Add save all staging images setting by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8210
- fix(ui): launchapd overflows on small screens by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8222
- refactor: use cancel instead of delete for queue items by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8225
- fix(ui): Fixes Control Layer Resizing Logic for new DND entity by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8223
- fix(ui): remove ref image from upscale by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8224
- fix(ui): Update support links to playlists by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8215
- feat(ui): panel state persistence by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8213
- feat(ui): Adds bbox to ref image button on Canvas by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8209
- fix: resolve FastAPI deprecation warning for example fields by @emmanuel-ferdman in https://github.com/invoke-ai/InvokeAI/pull/8203
- fix(ui): queue tab list of queue items by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8226
- feat(ui): selected item in model picker styling by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8228
- fix(ui): prevent getting stuck on tab loading screen by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8229
- remove hard-coded flux kontext dev guidance by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8230
- chore: bump version to v6.0.0rc5 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8227
- fix(ui): dont show option to add new layer from if on generate tab by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8231
- if on generate tab, recall dimensions instead of bbox by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8233
- fix flux kontext error by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8235
- update whats new for v6 by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8234
- feat(ui): Add default value option for canvas switch settings by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8236
- fix(ui): Adds Kontext Dev Quantized variant to the UI. by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8238
- chore: bump version v6.0.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8240
New Contributors
- @DustyShoe made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/8153
- @jeremygooch made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/8195
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v5.15.0…v6.0.0
v6.0.1
This patch release fixes a number of bugs.
Check out the v6.0.0 release notes if you haven’t already! It’s a big one.
Changes
- Fix an issue that could result in images getting stuck as placeholders.
- Fix an issue where you could drag a panel tab and end up with stacked panels.
- Fix an issue w/ certain languages hard-crashing the UI.
- Render the staging area in a virtualized list to prevent slowdowns when many images are staged.
- Alter the request frequency and prefetching logic for gallery to reduce network requests during scrolling, but keep the same UX.
- Clearer error message when model probing fails.
- Do not attempt to download models when there isn’t enough disk space for them.
- Potential fix for rare UI state persistence issues.
- Introduce global, thread-safe locking for all DB operations. We hope that this will fix these errors:
-
sqlite3.InterfaceError: bad parameter or other API misuse
-
pydantic_core._pydantic_core.ValidationError: 1 validation error for GraphExecutionStateJSON input should be string, bytes or bytearray [type=json_type, input_value=None, input_type=NoneType]For further information visit https://errors.pydantic.dev/2.11/v/json_type
-
Installing and Updating
The Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Note: With recent updates to torch, users on older GPUs (20xx and 10xx series) will likely run into issues with installing/updating. We are still evaluating how we can support older GPUs, but in the meantime users have found success manually downgrading torch. Head over to discord if you need help.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- v6 followups 3 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8246
- dont reset canvas if studio is loaded with canvas destination by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8252
- feat(ui): virtualized list for staging area by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8250
- feat(app): db abstraction to prevent threading conflicts by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8247
- fix(ui): runtime errors related to calling reduce on array iterator by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8257
- chore: prep for v6.0.1rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8259
- fix(ui): language file filenames by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8261
- build(ui): downgrade idb-keyval by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8262
- feat(app): better error message for failed model probe by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8263
- fix(Model Manager): refuse to download a file when there’s insufficient space by @keturn in https://github.com/invoke-ai/InvokeAI/pull/8268
- chore: prep for v6.0.1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8266
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v6.0.0…v6.0.1
v6.0.2
This patch release fixes drag-and-drop from the gallery.
Check out the v6.0.0 release notes if you haven’t already! It’s a big one.
Installing and Updating
The Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Note: With recent updates to torch, users on older GPUs (20xx and 10xx series) will likely run into issues with installing/updating. We are still evaluating how we can support older GPUs, but in the meantime users have found success manually downgrading torch. Head over to discord if you need help.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- fix(ui): gallery dnd not working by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8272
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v6.0.1…v6.0.2
v6.1.0
This minor release includes a handful of fixes and enhancements.
Check out the v6.0.0 release notes if you haven’t already! It’s a big one.
Restored Send to Gallery functionality
In Invoke v5, we had a toggle near the Invoke button that let you choose either Send to Gallery or Send to Canvas. Here’s what it looked like in v5:
Send to Gallery: Generations go directly to the Gallery. The Staging Area is bypassed completely. You can change settings, Invoke, change more settings, Invoke again, and so on, building up a large queue of generations.Send to Canvas: Generations go to the Canvas Staging Area. You cannot change some settings until you accept or discard all pending images.
This toggle was a major stumbling block for new users, causing a lot of confusion. It was removed in v6, replaced by a Save All Images to Gallery setting. This new setting didn’t work the same as Send to Gallery. Yes, it saved images to the Gallery, but it didn’t bypass the Staging Area - and Canvas would still be locked down.
We received a ton of feedback that the Send to Gallery mode enabled a critical workflow for many users. In v6.1.0, we are restoring that functionality with what we hope to be a less confusing UX.
The Canvas Save All Images to Gallery setting now replicates Send to Gallery mode. Generations queued up while the setting is enabled will bypass the Canvas Staging Area entirely. The Canvas isn’t locked down when you generate like this.
We renamed the setting to Save New Generations to Gallery to better describe what it does:
You’ll see an alert on Canvas when it is enabled:
Enhancements
- Added hotkey to star/unstar images (
.). You must be focused in the Gallery to use the hotkey. - Added button and hotkey (
shift+b) to fit the Canvas Bbox to visible Inpaint Masks, with padding to account for mask blur. - Added button and hotkey (
shift+v) to invert the selected Inpaint Mask layer. - Added auto-layout functionality to the Workflow Editor to reposition nodes based on a configurable graph layout algorithm. It’s in the bottom-left column of buttons. Thanks @skunkworxdark !
- When importing LoRAs, Invoke checks for an a metadata file and image alongside the LoRA. If present, we parse the metadata and copy the image in.
- Expose Tile Size, Tile Overlap and Tile Control model in Upscaling tab.
- Show related embeddings in prompt trigger menu.
- Update model picker styling.
- Style nodes when they have errors or warnings in workflow editor.
- Improved performance in workflow editor.
- Updated translations. Thanks @Linos1391 @Harvester62 @RyoK0220 @rikublock!
Fixes
- Ignore disabled ref images when determine if the user can click Invoke.
- Aspect ratios out of order.
- Error when uploading image with uppercase file extensions (e.g.
.JPGvs.jpg). - Prevent dragging on empty space in workspace tabs, which can bork the layout.
- Canvas Staging Area auto-switch could fail when too many images were in the list, plus other minor Staging Area jank.
- SDXL Negative Style Prompt not recorded in metadata.
- Unstyled error boundary screen.
- Rare error encountered during rehydration of UI state.
Internal/Dev
- Fix docker UI build.
- Updated manual install docs for v6. Thanks @JPPhoto!
- Export FLUX Conditioning classes from package. Thanks @JPPhoto!
- Upgraded many frontend packages.
Installing and Updating
The Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Note: With recent updates to torch, users on older GPUs (20xx and 10xx series) will likely run into issues with installing/updating. We are still evaluating how we can support older GPUs, but in the meantime users have found success manually downgrading torch. Head over to discord if you need help.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- fix(ui): ignore disalbed ref images in readiness checks by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8274
- gh: update bug report template by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8278
- (fix) remove timeout from image prompt expansion by @ebr in https://github.com/invoke-ai/InvokeAI/pull/8281
- Updated docs for 6.0 by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/8282
- fix(docker): switch to pnpm10.x by @ebr in https://github.com/invoke-ai/InvokeAI/pull/8287
- feat(ui): export apis & actions from package by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8291
- fix(ui): model picker styling by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8292
- fix(ui): aspect ratios out of order by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8290
- fix(ui): uppercase file extensions blocked for image upload by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8288
- feat(ui): canvas bypass / send-to-gallery functionality by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8279
- Export various Flux conditioning classes from the invocation API by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/8294
- feat(ui):Upscaling Flexibility by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8158
- fix(ui): able to drag empty space in tab bar and detach panels by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8295
- fix(ui): Adds related model support to embeddings by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8184
- feat(ui): Expose tile size as advanced upscaling option. by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8271
- perf(ui): workflow editor by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8289
- chore: prep for v6.1.0rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8296
- chore(ui): upgrade packages by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8297
- fix(ui): negative style prompt not recorded in metadata by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8298
- chore(ui): prep for v6.1.0rc2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8304
- fix(ui): context menu on staging area images by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8311
- persist model picker compact/expanded state by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8305
- feat(ui): Adjust BBox to Inpaint Mask by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8307
- feat(ui): Invert Mask by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8309
- Add auto layout controls to node editor by @skunkworxdark in https://github.com/invoke-ai/InvokeAI/pull/8239
- fix(ui): return wrapped history in redux-remember unserialize by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8317
- Feat(ui): Import lora metadata from json by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8312
- Update nodes auto layout default spacing for snap to grid size by @skunkworxdark in https://github.com/invoke-ai/InvokeAI/pull/8318
- Fix nodes ui: Make nodes dot background to be the same as the snap to grid size and position by @skunkworxdark in https://github.com/invoke-ai/InvokeAI/pull/8316
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8094
- feat(ui): Add Star/Unstar Hotkey and fix hotkey translations by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8315
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v6.0.2…v6.1.0
v6.2.0
This minor release includes a handful of fixes and enhancements.
Check out the v6.0.0 release notes if you haven’t already! It’s a big one.
Enhancements
- Restored
Cancel and Clear Allfunctionality, which was removed in v6. The button for this is in the hamburger menu next to the Invoke button. - When resetting Canvas Layers, an empty Inpaint Mask layer is added.
- Restored the Viewer toggle hotkey
z. - Updated translations. Thanks @Harvester62 !
Fixes
- Fixed
useInvocationNodeContext must be used within an InvocationNodeProvidererror that could crash the Workflow Editor. - Fixed issue where scrolling on Canvas could result in zooming in the wrong direction, especially when using a mouse scrollwheel.
Internal/Dev
- Minor perf improvement in Workflow Editor, reducing re-renders of the Auto Layout popover.
Installing and Updating
The Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Note: With recent updates to torch, users on older GPUs (20xx and 10xx series) will likely run into issues with installing/updating. We are still evaluating how we can support older GPUs, but in the meantime users have found success manually downgrading torch. Head over to discord if you need help.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- chore: prep for v6.1.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8313
- feat(ui): add default inpaint mask layer on canvas reset by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8319
- update whats new by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8321
- fix iterations for all API models by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8322
- fix(ui): Reposition export button by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8323
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8324
- feat(ui): restore viewer toggle hotkey by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8325
- fix(ui): incorrect zoom direction on fine scroll by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8326
- feat(ui): restore clear queue button by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8327
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8330
- perf(ui): imperatively get nodes and edges in autolayout hook by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8333
- fix(ui): invocation node context error when in publish flow, notes and current image nodes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8332
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v6.1.0…v6.2.0
v6.3.0
This minor release includes a handful of fixes and enhancements.
Support for multiple reference images for FLUX Kontext
You may now use multiple ref images when using FLUX Kontext on the Generate, Canvas and Workflows tabs.
On the Generate and Canvas tabs, the images are concatenated in image-space before being encoded.
This is done using the new Flux Kontext Image Prep node, which you can use in Workflows. Use it to resize an image to one of Kontext’s preferred sizes. If multiple images are added to its collection, they are concatenated horizontally. Pass the output of this node into a single Kontext Conditioning node, and then pass its output into the Denoise node.
If, for some reason, you want to use latent-space concatenation, you can do it like this:
- Add a
Flux Kontext Image Prepfor each image- Pass each of those to its own
Kontext Conditioning- Collect the
Kontext Conditioningnodes- Pass the output collection to the Denoise node
The images will be concatenated in latent-space by the Denoise node. It will not resize the images to Kontext preferred dimensions. For best results, use the
Flux Kontext Image Prepnode, as described above, to prep your ref images.
Studio state is stored in the database
Studio state includes all generation settings, Canvas layers, Workflow editor state - in other words, everything that you lose when you click Reset Web UI. Studio state does not include models, images, boards, saved workflows, etc.
Previously, this data was stored in the web browser or Launcher’s built-in UI. In v6.3.0, it is stored in the database, allowing your Studio state to follow you across browsers and devices.
For example, let’s say you were working in Canvas from the Launcher’s UI. You need to switch computers, so you enable Server Mode in the launcher and open Invoke on the other computer.
Previously, your Studio would load up with default settings on the other computer. In v6.3.0, you will instead pick up right where you left off on the first computer.
On the first launch of Invoke after updating to v6.3.0, we will migrate Studio state stored in the browser to the database, so you shouldn’t lose anything.
Added setting to disable picklescan
Invoke uses picklescan to scan certain unsafe model types for malware during installation and loading.
Sometimes, picklescan is unable to scan models because their internal structure is broken. It is possible that these unscannable models will still work fine, and have no malware, but until now, there was no way to tell Invoke to ignore detections or scan errors.
You may now dangerously, unsafely opt-out of model scanning by adding this line to your invokeai.yaml config file:
# 😱 scary!unsafe_disable_picklescan: trueWe strongly suggest you do not disable picklescan. Disable it at your own risk.
Enhancements
- Support for multiple reference images for FLUX Kontext on Generate, Canvas and Workflows tabs. Ref images are concatenated in image space.
- New
Flux Kontext Image Prepnode. Use it to resize an image to one of Kontext’s preferred sizes. If multiple images are added to its collection, they are concatenated horizontally. - When Snap to Grid on Canvas is disabled, hold Ctrl/Cmd to temporarily enable course snapping. Hold Ctrl/Cmd+Shift to temporarily enable fine snapping. Thanks @Ar7ific1al !
- Update styling and layout for image comparison.
- Added visual indicator on node fields when they are added to the form. The field names are in blue with a small link icon.
- Added setting to disable
picklescan. - Added FLUX.1 Krea dev to starter models (full-fat and quantized).
- Added a not-broken anime upscaler model to starter models.
- Studio state is stored on the server.
- Add hotkey
shift+nto fit bbox to layers. It does the same thing as the button in the Canvas toolbar. - Add a button to the ref image display to use that image’s size for generation. This is useful for FLUX Kontext, where you often want to generate at the same/similar size as a reference image.
- Updated translations. Thanks @Harvester62 @Linos1391 !
Fixes
- Fix issue where model filenames with periods were not handled correctly.
- This fixes the error
DuplicateModelException: A model with path 'flux/main/FLUX.safetensors' is already installed.
- This fixes the error
- Fix issue where model installation required 2x the disk space the model actually needed. We now move - not copy - from download temp dir to final destination.
- Metadata not recorded for API model generations.
- Queue count badge not hidden when left panel is collapsed.
- Fix an issue where canceling a queue item didn’t clear its progress image.
- Fix an issue where viewer could briefly show the last-selected image between the last progress image being received, and its output image rendering.
- Add handling for a rare race condition where we get socket events for a queue item after it has completed.
- Add handling for a common race condition where queue status network requests complete after queue events optimistically update the counts, often resulting in a the little yellow queue count badge being incorrect.
- Fix an issue where intermediate images could trigger changes to gallery view.
- Progress image not hiding when a generation fails or is canceled, when gallery auto-switch is disabled.
- Awkward flash of incorrectly-sized image when starting image comparison.
- Fix an issue where gallery auto-scroll could not work during an image loading race condition.
- Prevent creating a new canvas while staging, which could bork your existing canvas session.
- Fix an issue where the
Reset Canvas Layersbutton also reset the bbox. - Hide
Reset Canvas Layersbutton when not on the canvas. - Fix visual overflow with very long board names.
Internal/Dev
- UI logging now includes the source code filename of the logger, making troubleshooting much easier for UI bugs.
- All redux state is modeled with zod schemas. Rehydrated state is validated against the schemas before it makes it into the browser, preventing some (very rare) errors.
Installing and Updating
The Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Note: With recent updates to torch, users on older GPUs (20xx and 10xx series) will likely run into issues with installing/updating. We are still evaluating how we can support older GPUs, but in the meantime users have found success manually downgrading torch. Head over to discord if you need help.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- chore: prep for v6.2.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8334
- feat: server-side client state persistence by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8314
- build(ui): add vite plugin to add relative file path to logger context by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8344
- fix(ui): progress tracking fixes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8345
- fix(ui): connect metadata to output node for ext api nodes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8348
- fix(ui): queue count badge renders when left panel collapsed by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8350
- fix(ui): progress image does not hide on viewer with autoswitch disabled by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8349
- fix(app): handle model files with periods in their name by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8352
- fix(app): move (not copy) models from install tmpdir to destination by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8351
- build(ui): export loading component by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8356
- fix(ui): gallery slice rehydration error by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8354
- fix(docker) rocm 6.3 based image by @heathen711 in https://github.com/invoke-ai/InvokeAI/pull/8152
- feat: client state persistence updates by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8355
- Add temporary snapping while Snap to Grid is off by holding CTRL for 64px snap or CTRL+SHIFT for 8px snap by @Ar7ific1al in https://github.com/invoke-ai/InvokeAI/pull/8357
- feat: support multiple ref images for flux kontext by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8359
- feat(ui): zhoosh image comparison ui by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8364
- feat(ui): add visual indicator when input field is added to form by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8365
- refactor: client state again by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8363
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8362
- feat(ui): add migration path for client state from IndexedDB to server-backed storage by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8366
- chore: prep for v6.3.0rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8367
- fix(ui): add image name data attr to gallery placeholder image elements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8369
- feat(ui): add missing translations by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8371
- feat(ui): support disabling roarr output styling via localstorage by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8370
- flux kontext multi-ref image improvements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8386
- chore: bump version to v6.3.0rc2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8387
- multi-ref image support for flux kontext API by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8389
- fix graph building for flux kontext API multi-image prep by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8390
- feat(app): add setting to disable picklescan by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8396
- feat(ui): prevent creating new canvas when staging by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8394
- fix(ui): reset session button actions by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8393
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8368
- fix(ui): overflow w/ long board names by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8392
- Add reset bbox to canvas hotkey by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8388
- feat(mm): change anime upscaling model to one that doesn’t trigger picklescan by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8395
- feat(ui): add button to ref image to recall size & optimize for model by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8391
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v6.2.0…v6.3.0
v6.4.0
This release includes a handful of fixes and enhancements.
Enhancements
Shout-out to @csehatt741 for knocking out some great QoL improvements. Thank you!
- Canvas Bbox visibility can be toggled with
shift+o. Thanks @csehatt741! - Nodes with execution errors are highlighted red. Thanks @csehatt741!
- Prevent a field from being added to Workflow Builder forms multiple times. Thanks @csehatt741!
- Support recall of CLIP Skip metadata. Thanks @csehatt741!
- Fixed some issues with model install paths.
- Tweaked state persistence strategy - now debounced to 300ms instead of throttled to 2000ms. This should reduce stutters while doing things like panning around the Canvas.
- SDXL Style prompts have been removed from the Generate, Canvas and Upscaling tabs. This rarely-used setting was unintuitive at best. You can still use it in Workflows, but we are removing this footgun from the linear UI tabs.
- Prompt and seed metadata may now be recalled on the Upscaling tab.
- The buttons to download potentially very large starter model bundles show a confirmation dialog before starting the download. Thanks @csehatt741!
- Merged layers are inserted in the right spot in the layers panel. Thanks @csehatt741!
- Added button to image context menu and viewer toolbar to locate an image in the gallery. The image’s board is selected and image scrolled to. Thanks @csehatt741!
- Support FLUX PEFT LoRAs with
base_model.modelkey prefix. - Improved VAE encode VRAM usage.
- Updated translations. Thanks @Harvester62!
Fixes
- Minor bug when concatenating Kontext ref images in latent space that could result in some images not being “seen”.
- Fit to Bbox functionality could result in the layer being sized correctly but positioned incorrectly when the bbox was not aligned to the 64px grid.
- Allow use of mouse in node title editable inputs.
Internal/Dev
- Fix AMD docker image build issue related to disk space. Thanks @heathen711!
Installing and Updating
The Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Note: With recent updates to torch, users on older GPUs (20xx and 10xx series) will likely run into issues with installing/updating. We are still evaluating how we can support older GPUs, but in the meantime users have found success manually downgrading torch. Head over to discord if you need help.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- chore: prep for v6.3.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8397
- bugfix(container-builder) Use the mnt space instead of root space for docker images by @heathen711 in https://github.com/invoke-ai/InvokeAI/pull/8361
- feat(ui): add toggle for bbox with hotkey by @csehatt741 in https://github.com/invoke-ai/InvokeAI/pull/8385
- feat(ui): outline error nodes in red by @csehatt741 in https://github.com/invoke-ai/InvokeAI/pull/8398
- fix(ui): same field cannot be added to form multiple times in workflow editor by @csehatt741 in https://github.com/invoke-ai/InvokeAI/pull/8403
- feat(mm): improved VAE encode VRAM usage by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8414
- fix(mm): only add suffix to model paths when path is file by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8413
- feat(ui): debounce persistence instead of throttle by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8410
- fix(ui): upscaling prompt metadata by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8411
- fix(ui): input field error styling specificity by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8418
- feat(ui): add missing translation strings by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8412
- fix(mm): fail when model exists at path instead of finding unused new path by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8419
- Update NODES.md by @solkyoshiro in https://github.com/invoke-ai/InvokeAI/pull/8378
- chore: fix some comments by @jiangmencity in https://github.com/invoke-ai/InvokeAI/pull/7575
- feat(ui): remove SDXL style prompt from linear UI by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8417
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8404
- feat(ui)/clip skip by @csehatt741 in https://github.com/invoke-ai/InvokeAI/pull/8422
- feat(ui): confirmation before downloading starter bundle by @csehatt741 in https://github.com/invoke-ai/InvokeAI/pull/8427
- feat(ui): layer behaviour after merging by @csehatt741 in https://github.com/invoke-ai/InvokeAI/pull/8428
- feat(ui): locate in gallery image context menu by @csehatt741 in https://github.com/invoke-ai/InvokeAI/pull/8434
- tests: skip flaky MPS tests on CI by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8442
- fix(ui): update board totals when generation completes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8424
- fix(ui): export NumericalParameterConfig type by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8436
- refactor: estimate working vae memory during encode/decode by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8438
- Support PEFT Loras with Base_Model.model prefix by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8433
- fix(ui): fit to bbox when bbox is not aligned to 64px grid by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8439
- fix(ui): prevent node drag when editing title by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8440
- chore: prep for v6.4.0rc2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8441
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8432
- git: move test LoRA to LFS by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8446
New Contributors
- @csehatt741 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/8385
- @solkyoshiro made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/8378
- @jiangmencity made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/7575
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v6.3.0…v6.4.0
v6.5.0
This release includes a handful of fixes and enhancements.
Enhancements
- Add a optional
Shufflebutton to float and integer fields in Workflow Builder forms. Thanks @csehatt741! - Canvas color picker non longer changes the alpha of the color.
- When the bbox aspect ratio is locked, resizing the bbox from the Canvas will respect the locked status of the aspect ratio. Hold
shiftto temporarily invert the locked status:- When the aspect ratio is locked, holding
shiftwhile resizing the bbox will allow you to freely resize the bbox. - When the aspect ratio is not locked, holding
shiftwhile resizing the bbox will maintain the last aspect ratio of the bbox.
- When the aspect ratio is locked, holding
- When a node field is added to a Workflow Builder form, the
+button to add it will now show a-and let you remove the field. Thanks @csehatt741! - When changing a selection of image’s board, the current board is hidden from the board drop-down. The items in the drop down are now sorted alphabetically. Thanks @csehatt741!
- When using a model that doesn’t support reference images, they will be hidden. You can now Invoke without needing to disable them.
- When using a model that doesn’t support explicit width and height settings, they will be hidden.
Fixes
- Rare issue with HF tokens that could cause an error when downloading models from a protect HF repo immediately after setting the token in Invoke’s Model Manager.
- Fix an issue with float field precision in the Workflow editor.
- Fix an error
AttributeError: module 'cv2.ximgproc' has no attribute 'thinning'. Affected users should use the Launcher’s Repair Mode to get the fix, otherwise the error will persist. - Disable the color picker when using middle mouse to pan the Canvas.
- Minor issue related to gallery multi-select where the last-selected image didn’t show in the viewer.
- Prevent dragging and dropping a node field into the Workflow Builder if it has already been added once.
- Fix an issue where the last progress image for a Canvas generation would get stuck on the Viewer tab.
- Fix an issue where certain image loading errors in Canvas were not logged correctly.
Installing and Updating
The Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Note: With recent updates to torch, users on older GPUs (20xx and 10xx series) will likely run into issues with installing/updating. We are still evaluating how we can support older GPUs, but in the meantime users have found success manually downgrading torch. Head over to discord if you need help.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- chore: prep for v6.4.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8447
- ci: add workflow to catch incorrect usage of git-lfs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8452
- feat(ui): shuffle button on workflows by @csehatt741 in https://github.com/invoke-ai/InvokeAI/pull/8450
- docs: update quick start instructions & links by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8454
- feat(ui): do not sample alpha in Canvas color picker by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8448
- fix(ui): race condition when setting hf token and downloading model by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8456
- fix(ui): float input precision by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8455
- feat(app): vendor in
invisible-watermarkby @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8468 - fix(ui): disable color picker while middle-mouse panning canvas by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8475
- fix(ui): toggle bbox visiblity translation by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8476
- feat(ui): respect aspect ratio when resizing bbox on canvas by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8474
- feat(ui): remove input field from form button on node field by @csehatt741 in https://github.com/invoke-ai/InvokeAI/pull/8457
- fix(ui): respect direction of selection in Gallery by @csehatt741 in https://github.com/invoke-ai/InvokeAI/pull/8458
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8464
- chore: prep for v6.5.0rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8479
- feat(ui): bbox aspect ratio lock is always inverted by shift by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8477
- feat(ui): change board - sorting order of boards alphabetical by @csehatt741 in https://github.com/invoke-ai/InvokeAI/pull/8460
- Feat/same field multiple times added to form by @csehatt741 in https://github.com/invoke-ai/InvokeAI/pull/8480
- UI support for gemini 2.5 flash image by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8489
- update copy for API models without w/h controls by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8490
- fix(ui): progress image gets stuck on viewer when generating on canvas by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8483
- fix(ui): konva logging by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8493
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8485
- chore: prep for v6.5.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8492
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v6.4.0…v6.5.0
v6.5.1
This is a patch release, fixing a few high priority bugs.
Fixes
- Hard crash when generating with FLUX on Windows.
- Super tiny progress images on Canvas.
- Assorted Canvas issues, mostly around transparency.
Installing and Updating
The Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Note: With recent updates to torch, users on older GPUs (20xx and 10xx series) will likely run into issues with installing/updating. We are still evaluating how we can support older GPUs, but in the meantime users have found success manually downgrading torch. Head over to discord if you need help.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- fix(ui): control layer transparency effect not working by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8496
- fix(ui): progress image renders at physical size by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8495
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8498
- fix(app): FLUX on Windows hard crash by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8494
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v6.5.0…v6.5.1
v6.6.0
This is a minor release, adding a few QoL improvements and fixes.
Enhancements
- Canvas Color Picker has foreground and background colors. Switch between them with
x. Pressdto reset them to black and white. Thanks @csehatt741! - You can set a default weight setting for LoRAs in the Model Manager. When you add the LoRA, it will start at the default weight. Thanks @csehatt741!
- Canvas Brush/Eraser width renders an in-line slider when there is enough space instead of showing the slider in a popover.
- Updated translations. Thanks @Harvester62!
Fixes
- Always delete LoRAs when recalling all metadata. Thanks @csehatt741!
- Incompatible LoRAs being enabled prevents you from clicking Invoke.
- Fixed an issue where it was possible to drag a tab panel to another location in the UI on Chrome and Launcher (Firefox was unaffected).
- Internal file organization fix for docker builds.
- Fix an issue where progress images were super tiny (again).
- Fix an issue where no fallback was rendered in the viewer when no image is selected.
- Fix an issue where a single middle-mouse click on Canvas would activate the View tool (i.e. drag-to-pan), and you had to click again to deactivate it.
- Fix an issue in the Viewer where the last-generated image would briefly show after the current generation finishes.
Installing and Updating
The Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Note: With recent updates to torch, users on older GPUs (20xx and 10xx series) will likely run into issues with installing/updating. We are still evaluating how we can support older GPUs, but in the meantime users have found success manually downgrading torch. Head over to discord if you need help.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- video by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8499
- do not show negative prompt or ref images on video tab by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8501
- handle large videos by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8503
- match screen capture button to the others by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8504
- fix(app): board count queries not getting categories as params by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8505
- Add ‘sd-2’ to supported negative prompt base models by @damian0815 in https://github.com/invoke-ai/InvokeAI/pull/8513
- fix(ui): remove LoRAs for recall use all by @csehatt741 in https://github.com/invoke-ai/InvokeAI/pull/8512
- feat(ui): add readiness checks for LoRAs by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8506
- fix(ui): move
getItemsPerRowto frontend src dir by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8515 - chore(ui): bump dockview by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8516
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8507
- feat(ui): switchable foreground/background colors by @csehatt741 in https://github.com/invoke-ai/InvokeAI/pull/8510
- feat(ui): LoRA default weight by @csehatt741 in https://github.com/invoke-ai/InvokeAI/pull/8484
- ui(fix): remove video base models from image aspect/ratio logic by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8521
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8517
- chore: prep for v6.6.0rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8522
- fix(ui): fix situation where progress images are super tiny by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8524
- fix(ui): browser image caching cors race condition by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8523
- fix(ui): gallery selection issues by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8528
- fix(ui): stop dragging when user clicks mmb once by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8527
- fix(ui): prev image briefly showing in viewer as progress image “resolves” into output image by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8530
- chore: prep for v6.6.0rc2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8531
- tidy(ui): translation cleanup and CI checks by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8536
- tidy,fix(ui): remove unused coords from params slice by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8534
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8533
- Revert “tidy(ui): translation cleanup and CI checks” by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8539
- feat(ui): slider for brush and eraser tool by @csehatt741 in https://github.com/invoke-ai/InvokeAI/pull/8525
- chore: prep for v6.6.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8538
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v6.5.1…v6.6.0
v6.7.0
This minor release includes improved object selection on Canvas, layer adjustments, prompt history and a handful of other enhancements and fixes.
Select Object v2
We’ve made some major improvements to object selection.
- Segment Anything v2 is now supported. You can choose between SAM1 and SAM2. We’ve found that SAM2 is much faster than SAM1, but often does not perform as well, so we left SAM1 as an option.
- You may now draw a box around the target object. The box doesn’t need to be exact - sometimes, you can get better results by making it a bit smaller than the target object. Points are still supported and can be used independently or as a refinement for a box.
- Holding
shiftwhile clicking creates an exclude point if you have include selected. If you have selected exclude, holdingshiftwill instead create an include point. - You can now provide a text prompt instead of a box and points. Use very simple language for best results. Internally, this uses Grounding DINO to identify the target.
Raster Layer Adjustments
Right click a Raster Layer to add adjustments. Adjustments are non-destructive, though you can accept them to bake them into the layer.
You can adjust brightness, contrast, saturation, temperature, tint, and sharpness, or use the curves editor to adjust each channel independently.
Thanks @dunkeroni for implementing this very useful feature.
Prompt History
There’s a new button in the Positive Prompt box for prompt history. Your last 100 unique prompts are stored for easy recall. You can search them, delete individual prompts, or clear the whole list.
Enhancements
- Improved object selection on Canvas.
- Raster layer adjustments. Thanks @dunkeroni!
- Support for mathematical expressions in number input fields. Currently, these are only enabled for fields in the Workflow Editor (including Builder Forms). Thanks @csehatt741!
- Prompt history for Positive Prompt.
- Queue list now sorts with newest on top. You can reverse the sort if you want, to restore the previous sorting. Thanks @csehatt741!
- Updated translations. Thanks @Harvester62 @Linos1391!
Fixes
- Fixed an issue that prevented you from using LoRA weights outside the range -1 to 2.
- Fixed an issue where LoRA settings could be lost on refresh.
- Fixed an issue where LoRAs with weights outside the range -1 to 2 were not able to be recalled from metadata.
- Fixed an issue where popovers like the Canvas Settings popover were obscured by other UI elements.
- Fixed a path traversal vulnerability affecting the bulk downloads API.
Installing and Updating
The Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Note: With recent updates to torch, users on older GPUs (20xx and 10xx series) will likely run into issues with installing/updating. We are still evaluating how we can support older GPUs, but in the meantime users have found success manually downgrading torch. Head over to discord if you need help.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- feat(ui): reverse queue list by @csehatt741 in https://github.com/invoke-ai/InvokeAI/pull/8488
- fix(ui): route metadata to gemini node by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8547
- fix(ui): LoRA number input min/max restored by @csehatt741 in https://github.com/invoke-ai/InvokeAI/pull/8542
- fix(app): path traversal via bulk downloads paths by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8548
- feat(ui): maths enabled on numeric input fields in workflow editor by @csehatt741 in https://github.com/invoke-ai/InvokeAI/pull/8549
- feat(ui): SAM2 Node & Integration by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8526
- queue list: remove completed_at, restore field values by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8555
- ai(ui): add CLAUDE.md to frontend by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8556
- feat(ui): Raster Layer Color Adjusters by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/8420
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8545
- chore: prep for v6.7.0rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8557
- fix(ui): extend lora weight schema to accept full range of weights by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8559
- feat(ui): simple prompt history by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8561
- fix(ui): render popovers in portals to ensure they are on top of other ui elements by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8568
- fix(ui): dedupe prompt history by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8567
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8563
- chore: prep for v6.7.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8569
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v6.6.0…v6.7.0
v6.8.0
This minor release includes a handful of fixes and enhancements.
Fixes
- When accepting raster layer adjustments, the opacity of the layer was “baked” in.
- Corrected help text for non-in-place model installation. Previously, the help text said that a non-in-place model install would copy the model files. This is incorrect; it moves them into the Invoke-managed models dir.
- Failure to queue generations with an error like
Failed to Queue Batch / Unknown Error.
Enhancements
- Added a crop tool. For now, it is only enabled for Global Ref Images.
- Click the crop icon on the Ref Image preview to open the tool.
- Adjust the crop box and click apply to save the cropped image for that ref image.
- To revert, open the crop tool, click Reset, then Apply to revert to the original image.
- We’ll explore integrating this new tool elsewhere in the app in a future update.
- Improved Model Manager tab UI. Thanks @joshistoast!
- Keyboard shortcuts to navigate prompt history. Use
alt/option+up/downto move through history. - Support for the
NOOB-IPA-MARK1IP Adapter. Thanks @Iq1pl!
Internal
- Support for dynamic model drop-downs in Workflow Editor. This change greatly reduces the amount of frontend code changes needed to support a new model type. Node authors may need to update their nodes to prevent warnings from being displayed. However, there are no breakages expected. See #8577 for more details.
Installing and Updating
The Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Note: With recent updates to torch, users on older GPUs (20xx and 10xx series) will likely run into issues with installing/updating. We are still evaluating how we can support older GPUs, but in the meantime users have found success manually downgrading torch. Head over to discord if you need help.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- fix(ui): do not reset params state on studio init nav to generate tab by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8572
- feat(model manager): :lipstick: refactor model manager ui by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/8564
- Prompt history shortcuts by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8571
- feat(ui): crop tool by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8562
- chore: prep for v6.8.0rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8574
- fix(ui): allow scrolling in ModelPane by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/8580
- added support for NOOB-IPA-MARK1 by @Iq1pl in https://github.com/invoke-ai/InvokeAI/pull/8576
- feat: dynamic model fields in workflow editor by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8577
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8575
- fix(ui): ref images for flux kontext not parsed correctly by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8587
- feat(nodes): better ui_type deprecations by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8586
- restore list_queue_items method by @maryhipp in https://github.com/invoke-ai/InvokeAI/pull/8583
- fix(ui): do not bake opacity when rasterizing layer adjustments by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8592
- fix(ui): correct the in-place install verbiage, add tooltip by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8593
- docs: add BiRefNet and Image Export to communityNodes.md by @veeliks in https://github.com/invoke-ai/InvokeAI/pull/8602
- chore: prep for v6.8.0rc2 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8581
- chore: prep for v6.8.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8604
New Contributors
- @Iq1pl made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/8576
- @veeliks made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/8602
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v6.7.0…v6.8.0
v6.8.1
This patch release fixes the Exception in ASGI application startup error that prevents Invoke from starting.
The error was introduced by an upstream dependency (fastapi). We’ve pinned the fastapi dependency to the last known working version.
Installing and Updating
The Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Note: With recent updates to torch, users on older GPUs (20xx and 10xx series) will likely run into issues with installing/updating. We are still evaluating how we can support older GPUs, but in the meantime users have found success manually downgrading torch. Head over to discord if you need help.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- Fix(nodes): color correct invocation by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/8605
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v6.8.0…v6.8.1
v6.9.0
This release focuses on improvements to Invoke’s Model Manager. The changes are mostly internal, with one significant user-facing change and a data migration.
On first run after installing this release, Invoke will do some data migrations:
- Run-of-the mill database updates.
- Update some model records to work with internal Model Manager changes, described below.
- Restructure the Invoke-managed models directory into a flat directory structure, where each model gets its own folder named by the model’s UUID. Models outside the Invoke-managed models directory are not moved.
If you see any errors or run into any problems, please create a GH issue or ask for help in the
#new-release-discussionchannel of the Invoke discord.
Model Installation Improvements
Invoke analyzes models during install to attempt to identify them, recording their attributes in the database. This includes the type of model, its base architecture, its file format, and so on. This release includes a number of improvements to that process, both user-facing and internal.
Unknown Models
Previously, when this identification fails, we gave up on that model. If you had downloaded the model via Invoke, we would delete the downloaded file.
As of this release, if we cannot identify a model, we will install it as an Unknown model. If you know what kind of model it is, you can try editing the model via the Model Manager UI to set its type, base, format, and so on. Invoke may be able to run the model after this.
If the model still doesn’t work, please create a GH issue linking to the model so we can improve model support. The internal changes in this release are focused on making it easier for contributors to support new models.
Invoke-managed Models Directory
Previously, as a relic of times long past, Invoke’s internal model storage was organized in nested folders: <models_dir>/<type>/<base>/model.safetensors. Many moons ago, we didn’t have a database, and models were identified by putting them into the right folder. This has not been the case for a long time.
As of this release, Invoke’s internal model storage has a normalized, flat directory structure. Each model gets its own folder, named its unique key: <models_dir>/<model_key_uuid>/model.safetensors.
On first startup of this release, Invoke will move model files into the new flat structure. Your non-Invoke-managed models (i.e. models outside the Invoke-managed models directory) won’t be touched.
We understand this change may seem user-unfriendly at first, but there are good reasons for it:
- This structure eliminates the possibility of model name conflicts, which have caused of numerous hard-to-fix bugs and errors.
- It reinforces that the internal models directory is Invoke-managed:
- Adding models to this directory manually does not add them to Invoke. With the previous structure, users often dropped models into a folder and expected them to work.
- Deleting models from this directory or moving them in the directory causes the database to lose track of the models.
- It obviates the need to move models around when changing their type and base.
Refactored Model Identification system
Several months ago, we started working on a new API to improve model identification (aka “probing” or “classification”). This process involves analyzing model files to determine what kind of model it is.
As of this release, the new API is complete and all legacy model identification logic has been ported to it. Along with the changes in #8577, the process of adding new models to Invoke is much simpler.
Model Identification Test Suite
Besides the business logic improvements, model identification is now fully testable!
When we find a model that is not identified correctly, we can add that model to the test suite, which currently has test cases for 70 models.
Models can be many GB in size and are thus not particularly well-suited to be stored in a git repo. We can work around this by creating lightweight representations of models. Model identification typically relies on analyzing model config files or state dict keys and shapes, but we do not need the tensors themselves for this process.
This allows us to strip out the weights from model files, leaving only the model’s “skeleton” as a test case. The 70-model test suite is currently about 115MB but represents hundreds of GB of models.
Installing and Updating
The Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Note: With recent updates to torch, users on older GPUs (20xx and 10xx series) will likely run into issues with installing/updating. We are still evaluating how we can support older GPUs, but in the meantime users have found success manually downgrading torch. Head over to discord if you need help.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
What’s Changed
- refactor: model manager v3 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8607
- tidy: docs and some tidying by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8614
- chore: prep for v6.9.0rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8615
- feat: reidentify model by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8618
- fix(ui): generator nodes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8619
- chore(ui): point ui lib dep at gh repo by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8620
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v6.8.1…v6.9.0
v6.10.0
InvokeAI v6.10.0
This is the first InvokeAI Community Edition release since the closure of the commercial venture, and we think you will be pleased with the new features and capabilities. This release introduces backend support for the state-of-the-art Z-Image Turbo image generation models, and multiple frontend improvements that make working with InvokeAI an even smoother and more pleasurable experience.
The Z-Image Turbo Model Family
Z-Image Turbo (ZiT) is a bilingual image generation model that manages to combine high performance with a small footprint and excellent image generation quality. It excels in photorealistic image generation, renders both English and Chinese text accurately, and is easy to steer. The full model will run easily on consumer hardware with 16 GB VRAM, and while quantized versions will run on significantly smaller cards, with some loss of precision.
With this release InvokeAI runs almost all released versions of ZiT, including diffusers, safetensors, GGUF, FP8 and quantified versions. However, be aware that the FP8 scaled weights models are not yet fully supported and will produce image artifacts. In addition, InvokeAI supports text2image, image2image, ZiT LoRA models, controlnet models, canvas functions and regional guidance. Image Prompts (IP) are not supported by ZiT, but similar functionality is expected when Z-Image Edit is publicly released.
To get started using ZiT, go to the Models tab and from the Launchpad select the Z-Image Turbo bundle to install all the available ZiT related models and dependencies (rougly 35 GB in total). Alternatively, you can select individual models from the Starter Models tab, and search for “Z-Image.” The full and Q8 models will run on a 16 GB card. For cards with 6-8 GB of VRAM, choose the smaller quantized model, Z-Image Turbo GGUF Q4_K. Note that when using one of the quantized models, you will also need to install the standalone Qwen3 encoder and one of the Flux VAE models. This will be handled for you when you install a ZiT starter model.
When generating with these models it is recommended to use 8-9 steps and a CFG of 1. Be aware that due to ZiTs strong prompt following it does not generate as much image diversity as other models you may be used to. One way to increase image diversity is to create a custom workflow that adds noise to the Z-Image Text Encoder using @Pfannkuchensack’s Image Seed Variance Enhancer Node.
In addition to the default Euler scheduler for ZiT we offer the more accurate but slower Heun scheduler, and a faster but less accurate LCM scheduler. Note that the LCM and Heun schedulers are still experimental, and may not produce optimal results in some workflows.
A big shout out to @Pfannkuchensack for his critical contributions to this effort.
New Workflow Features
We have two new improvements to the Workflow Editor:
- Workflow Tags: It is now possible to add multiple arbitrary text tags to your workflows. To set a tag on the current workflow, go to Details and and scroll down to Tags. Enter a comma-delimited of tags that describe your workflow, such as “image, bounding box”, and save. The next time you browse your workflows, you will see a series of checkboxes for all the unique tags in your workflow connection. Select the tag checkboxes individually or in combination to filter the workflows that are displayed. This feature was contributed by @Pfannkuchensack.
- Prompt Template Node: Another @Pfannkuchensack workflow contribution is a new Prompt Template node, which allows you to apply any of the built-in or custom prompt style templates to a prompt before passing it onward to generation.
Prompt Weighting Hotkeys
@joshistoast has added a neat feature for adjusting the weighting of words and phrases in the prompt. Simply select a word or phrase in the prompt textbox and press Ctrl-Up Arrow to increase the weight of the selection (by adding ”+” marks) or Ctrl-Down Arrow to decrease the weighting.
Limitations: The prompt weighting does not work properly with numeric weights, nor with prompts that contain the .add() or .blend() functions. This will be fixed in the next point release.
Hotkey Editor
Speaking of hotkeys, @Pfannkuchensack and @joshistoast contributed a new user interface for editing hotkeys. Any of the major UI functions, such as kicking off a generation, opening or closing panels, selecting tools in the canvas, gallery navigation, and so forth, can now be assigned a key shortcut combination. You can also assign multiple hotkeys to the same function.
To access the hotkey editor, go to the Settings (gear) menu in the bottom left, and select Hotkeys.
Bulk Operations in the Model Manager
You can now select multiple models in the Model Manager tab and apply bulk operations to them. Currently the only supported operation is to Delete unwanted models, but this feature will be expanded in the future to allow for model exporting, archiving, and other functionality.
This feature was contributed by @joshistoast, based on earlier work by @Pfannkuchensack .
Masked Area Extraction in the Canvas
It is now possible to extract an arbitrary portion of all visible raster layers that are covered by the Inpaint Mask. The extracted region is composited and added as a new raster layer. This allows for greater flexibility in the generation and manipulation of raster layers.
Thanks to @DustyShoe for this work.
PBR Maps
@blessedcoolant added support for PBR maps, a set of three texture images that can be used in 3D graphics applications to define a material’s physical properties, such as glossiness. To generate the PBR maps, simply right click on any image in the viewer or gallery, and select “Filters -> PBR Maps”. This will generate PBR Normal, Displacement, and Roughness map images suitable for use with a separate 3D rendering package.
New FLUX Model Schedulers
We’ve also added new schedulers for FLUX models (both dev and schnell). In addition to the default Euler scheduler, you can select the more accurate but slow Heun scheduler, and the faster but less accurate LCM scheduler. Look for the selection under “Advanced Options” in the Text2Image settings panel, or in the FLUX Denoise node in the workflow editor. Note that the LCM and Heun schedulers are still experimental, and may not produce optimal results in some workflows.
Thanks to @Pfannkuchensack for this contribution.
SDXL Color Compensation
When performing SDXL image2image operations, the color palette changes subtly and the discrepancy becomes increasingly obvious after several such operations. @dunkeroni has contributed a new advanced option to compensate for this color drift when generating with SDXL models.
Option to Release VRAM When Idle
InvokeAI tends to grab as much GPU VRAM as it needs and then hold on to it until the model cache is manually cleared or the server is restarted. This can cause an annoyance for people who need the VRAM for other tasks. @lstein added a new feature that will automatically clear the InvokeAI model cache and release its VRAM after a set period of idleness. To activate this feature, add the configuration option model_cache_keep_alive_min to the invokeai.yaml configuration file. It takes a floating point number corresponding to the number of minutes of idleness before VRAM is released. For example, to release after 5 minutes of idleness, enter:
model_cache_keep_alive_min: 5.0Setting this value to 0 disables the feature. This is also the default if the configuration option is absent.
Bugfixes
Multiple bugs were caught and fixed in this release and are listed in the detailed changelog below.
Installing and Updating
The Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Note: With recent updates to torch, users on older GPUs (20xx and 10xx series) will likely run into issues with installing/updating. We are still evaluating how we can support older GPUs, but in the meantime users have found success manually downgrading torch. Head over to discord if you need help.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
New Contributors
- @kyhavlov made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/8613
- @aleyan made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/8722
- @Copilot made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/8693
Translation Credits
Many thanks to Riccardo Giovanetti (Italian) and RyoKoba (Japanese) who contributed their time and effort to providing translations of InvokeAI’s text.
What’s Changed
- Fix(nodes): color correct invocation by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/8605
- chore: v6.8.1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8610
- refactor: model manager v3 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8607
- tidy: docs and some tidying by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8614
- chore: prep for v6.9.0rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8615
- feat: reidentify model by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8618
- fix(ui): generator nodes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8619
- chore(ui): point ui lib dep at gh repo by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8620
- chore: prep for v6.9.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8623
- fix(mm): directory path leakage on scan folder error by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8641
- feat: remove the ModelFooter in the ModelView and add the Delete Mode… by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8635
- chore(codeowners): remove commercial dev codeowners by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8650
- Fix to enable loading fp16 repo variant ControlNets by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8643
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8599
- (chore) Update requirements to python 3.11-12 by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8657
- Rework graph.py by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/8642
- Fix memory issues when installing models on Windows by @gogurtenjoyer in https://github.com/invoke-ai/InvokeAI/pull/8652
- Feat: SDXL Color Compensation by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/8637
- feat(ui): improve hotkey customization UX with interactive controls and validation by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8649
- feat(ui): Color Picker V2 by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8585
- Feature(UI): bulk remove models loras by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8659
- feat(prompts): hotkey controlled prompt weighting by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/8647
- Feature: Add Z-Image-Turbo model support by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8671
- fix(ui): :bug:
HotkeysModalandSettingsModalinitial focus by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/8687 - Feature: Add Tag System for user made Workflows by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8673
- Feature(UI): add extract masked area from raster layers by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8667
- Feature: z-image Turbo Control Net by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8679
- fix(z-image): Fix padding token shape mismatch for GGUF models by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8690
- feat(starter-models): add Z-Image Turbo starter models by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8689
- fix: CFG Scale min value reset to zero by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/8691
- feat(model manager): 💄 refactor model manager bulk actions UI by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/8684
- feat(hotkeys): :sparkles: Overhaul hotkeys modal UI by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/8682
- Feature (UI): add model path update for external models by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8675
- fix support multi-subfolder downloads for Z-Image Qwen3 encoder by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8692
- Feature: add prompt template node by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8680
- feat(hotkeys modal): ⚡ loading state + performance improvements by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/8694
- Feature/user workflow tags by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8698
- feat(backend): add support for xlabs Flux LoRA format by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8686
- fix(prompts): :bug: prompt attention behaviors, add tests by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/8683
- Workaround for Windows being unable to remove tmp directories when installing GGUF files by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8699
- chore: bump version to v6.10.0rc1 by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8695
- Feature: Add Z-Image-Turbo regional guidance by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8672
- (chore) Prep for v6.10.0rc2 by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8701
- fix(model-manager): add Z-Image LoRA/DoRA detection support by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8709
- feat(prompts): :lipstick: increase prompt font size by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/8712
- fix(ui): misaligned Color Compensation Option by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/8714
- fix(z_image): use unrestricted image self-attention for regional prompting by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8718
- fix(ui): make Z-Image model selects mutually exclusive by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8717
- Fix an issue with regional guidance and multiple quick-queued generations after moving bbox by @kyhavlov in https://github.com/invoke-ai/InvokeAI/pull/8613
- Implement PBR Maps Node by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/8700
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8724
- fix(docs): Bump python and github actions versions in mkdocs github action by @aleyan in https://github.com/invoke-ai/InvokeAI/pull/8722
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8725
- fix(model-manager): support offline Qwen3 tokenizer loading for Z-Image by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8719
- fix(gguf): ensure dequantized tensors are on correct device for MPS by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8713
- (chore) update WhatsNew translation text by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8727
- Feature/zimage scheduler support by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8705
- Update CODEOWNERS by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/8728
- feat(flux): add scheduler selection for Flux models by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8704
- Update CODEOWNERS by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8731
- Update CODEOWNERS by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/8732
- fix(model-loaders): add local_files_only=True to prevent network requests by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8735
- docs(z-image) add Z-Image requirements and starter bundle by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8734
- Add configurable model cache timeout for automatic memory management by @Copilot in https://github.com/invoke-ai/InvokeAI/pull/8693
- chore: Remove extraneous log debug statements from model loader by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8738
- Feature: z-image + metadata node by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8733
- feat(z-image): add
add_noiseoption to Z-Image Denoise by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8739
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v6.9.0…v6.10.0
v6.11.0
InvokeAI v6.11.0
This is a feature release of InvokeAI which provides support for the new FLUX.2 Klein image generation and edit models as well as a few small improvements and bug fixes. Before we get to the details, consider taking our 2026 User Engagement Survey. We want to know who you are, how you use InvokeAI, and what new features we can add to make the software even better.
Support for FLUX.2 Klein models
The FLUX2 Klein family of models (F2K) are fast, high quality image generation and editing models. Invoke provides support for multiple versions, including both the fast-but-less-precise 4 billion (4B) and the slower-but-more-accurate 9 billion (9B) models, as well as quantized versions of these models suited for systems with limited VRAM. These models are small and fast; the fastest can render images in seconds with just four steps.
In addition to the usual features (txt2img, img2img, inpainting, outpainting) F2K offers a unique image editing feature which allows you to make targeted modifications to an image or set of images using prompts like “Change the goblet in the king’s right hand from silver to gold,” or “Transfer the style from image 1 to image 2”.
Suggested hardware requirements are:
FLUX.2 Klein 4B - 1024×1024
- GPU: Nvidia 30xx series or later, 12GB+ VRAM (e.g. RTX 3090, RTX 4070). FP8 version works with 8GB+ VRAM.*
- Memory: At least 16GB RAM.
- Disk: 10GB for base installation plus 20GB for models (Diffusers format with encoder).
FLUX.2 Klein 9B - 1024×1024
- GPU: Nvidia 40xx series, 24GB+ VRAM (e.g. RTX 4090). FP8 version works with 12GB+ VRAM.
- Memory: At least 32GB RAM.
- Disk: 10GB for base installation plus 40GB for models (Diffusers format with encoder).
Getting Started with F2K
After updating InvokeAI, you will find a new FLUX.2 Klein starter pack for in the Starter Models section of the Model Manager. This will download three files: the Q4 quantized version of F2K 4B, which is suitable to run on low-end hardware, and two supporting files: the FLUX.2 VAE, and a quantized version of the FLUX.2 Qwen3 text encoder.
After installing the bundle, select the “FLUX.2 Klein 4B (GGUF Q4)” model in theGeneration section of Invoke’s left panel. Also go to the Advanced section at the bottom of the panel and select the F2K VAE and text encoder models that were installed with the starter bundle. (If you don’t select these, you will get an warning message on the first generation that tells you to do this.) Recommended generation settings are:
- Steps: 4-6
- CFG: 1-2
Modestly increasing the number of steps may increase accuracy somewhat. If you work with the Base versions of F2K (available from HuggingFace), increase the steps to >20 and the CFG to 3.5-5.0.
Text2img, img2img, inpainting and outpainting will all work as usual. InvokeAI does not currently support F2K LoRAs or ControlNets (there have not been many published so far). In addition, only the Euler sampler is currently available. Support for LoRAs and additional schedulers will be added in a future release.
Prompting with FLUX.2
Like ZiT, F2K’s text encoder works best when you provide it with long prose prompts that follow the framework Subject + Setting + Details + Lighting + Atmosphere. For example: “An elderly king is standing on a low dais in front of a crowded and chaotic banquet hall bursting with courtiers and noblemen. He is shown in profile, facing his noblemen, holding high a jeweled chalice of wine to toast the unification of his fifedoms. This is a cinematic shot set that conveys historical grandeur and a medieval vibe.”
F2K does not perform any form of prompt enhancement, so what you write is what the model sees. See FLUX.2 Prompting Guide for more guidance.
Image Editing
F2K provides an image editing mode that works like a souped-up version of Image Prompt (IP) Adapters. Drag-and-drop or upload an image to the Reference Image section of the Prompt panel. Then instruct the model on modifications you wish to make using active verbs. You may issue multiple instructions in the same prompt.
- Change the king’s chalice from silver to gold. Give him a crown, and grow him a salt-and-pepper beard.
- Change the image style to a scifi/fantasy vibe.
- Use an anime style and give the noblemen and courtiers brightly-colored robes.
F2K editing supports multiple reference images, letting you transfer visual elements (subjects, style and background) from one to another. When prompting over multiple images, refer to them in order as “image 1,” “image 2,” and so forth.
- Give the king in image 1 the crown that appears in image 2.
- Transfer the style of image 1 to image 2.
Dealing with multiple reference images is tricky. There is no way to adjust the weightings of each image, and so you will have to be explicit in the prompt about which visual elements you are combining. If you cannot get the effect you are looking for by modifying the prompt, you may find success by changing the order of images.
Also be aware that each image significantly increases the model’s VRAM usage. If you run into memory errors, use a smaller (quantized) model, or reduce the number and size of the reference images.
Other Versions of F2K Available in the Model Manager
To find additional supported versions of F2K, type “FLUX.2” into the Starter Models search box. This will show you the following types of files:
- FLUX.2 Klein 4B/9B (Diffusers) These are the full-size all-in-one diffusers versions of F2K which come bundled with the VAE and text encoder.
- FLUX.2 Klein 4B/9B These are standalone versions of the full-size F2K which require installation of separate VAE and text encoders. Note that the 4B and 9B models require different text encoders, “FLUX.2 Klein Qwen3 4B Encoder” and “FLUX.2 Klein Qwen3 8B Encoder” respectively. (Not a misprint: use the 9B F2K model with the 8B text encoder!)
- FLUX.2 Klein 4B/9B (FP8) These are the standalone versions quantized to 8 bits. The 4B model will run comfortably on macines with 8GB VRAM, while the 9B model will run on machines with 12GB or higher. As with all quantized versions, there is minor loss of generation accuracy.
- FLUX.2 Klein 4B/9B (Q4) These are standalone versions that have been quantized to 4 bits, resulting in very small and fast models that can run on cards with 6-8 GB VRAM.
There is only one F2K VAE, and it happens to be same as the one used by FLUX.1 and Z-Image Turbo. However, there are several text encoder options:
- FLUX.2 Klein Qwen3 4B Encoder Use this encoder with the F2K 4B versions. It also works with Z-Image Turbo.
- Z-Image Qwen3 Text Encoder (quantized) This is a Q6-quantized version of the text encoder, that works with both F2K and ZiT. You may use this on smaller memory systems to reduce swapping of models in and out of VRAM.
- FLUX.2 Klein Qwen3 8B Encoder Use this encoder with the F2K 9B versions. It is not compatible with ZiT.
You will find additional F2K models on HuggingFace and other model repositories, including the base models intended for fine-tuning and LoRA training. We have not exhaustively tested InvokeAI compatibility with all the available variants. Please report any incompatible models to InvokeAI Issues.
Many credits to @Pfannkuchensack for contributing F2K support.
Other Features in this Release
The other features in this release include:
Z-Image Turbo Variance Enhancer
ZiT tends to produce very similar images for a given prompt. To increase image diversity, @Pfannkuchensack contributed a Seed Variance Enhancer node which adds calibrated amounts of noise to the prompt conditioning prior to generation. You will find this feature in the Generation panel under Advanced Options. When activated, you will see two sliders, one for Variance Strength and the other for Randomize Percent. The first slider controls how much noise will be added to the conditioned prompt, and the second controls what proportion of the conditioning’s weights will be altered. Using the default randomization of 50% of the values, a variance strength of 0.1 will produce subtle variations, while a strength of 0.5 will produce very marked deviation from the prompt. Increasing the percentage of weights modified will also increase the level of variation.
Improved Support for High-Resolution FLUX.1 Images
A new denoising tuning algorithm, introduced by @Pfannkuchensack, increases the accuracy of FLUX.1 generations at high resolutions. When a FLUX.1 model is selected, a new DyPE option will appear in the Generation panel. Its settings are Off (the default) to disable the algorithm, Auto to automatically activate DyPE when rendering images greater than 1536 pixels in either dimension, and 4K Optimized to activate the algorithm with parameters that are tuned for 4K images. Note that if you do not have sufficient VRAM to generate 4K images, this feature will not help you generate them. Instead, generate a smaller image and use Invoke’s Upscaling feature.
Canvas high level transform smoothing
Another improvement contributed by @DustyShoe: The Canvas raster layer transform operation now supports multiple types of smoothing, thereby reducing the number of artifacts when an area is upscaled.
Text Search and Highlighting in the Image Metadata Tab
The Image Viewer’s info (🛈) tab now has a search field that allows you to rapidly search and highlight text in image metadata, details, workflow and generation graph. In addition, the left margin of the metadata display has been widened to make the display more readable.
Thanks to @DustyShoe for this improvement.
Bugfixes
Several bugs were caught and fixed in this release and are listed in the detailed changelog below. Thanks to first-time contributors @kyhavlov and @aleyan for the bugs they caught and fixed.
Installing and Updating
The Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Note: With recent updates to torch, users on older GPUs (20xx and 10xx series) will likely run into issues with installing/updating. We are still evaluating how we can support older GPUs, but in the meantime users have found success manually downgrading torch. Head over to discord if you need help.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
Translation Credits
Many thanks to the following language translators who contributed to this release: @Harvester62 (Italian) and @DustyShoe (Russian).
Also many thanks to Weblate for granting InvokeAI a free Open Source subscription to use its translation management service.
What’s Changed
- Fix(UI): Canvas numeric brush size by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8761
- Feat(UI): Canvas high level transform smoothing by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8756
- chore(CI/CD): Remove codeowners from /docs directory by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8737
- feat(z-image): add Seed Variance Enhancer node and Linear UI integration by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8753
- fix(model_manager): prevent Z-Image LoRAs from being misclassified as main models by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8754
- Add user survey section to README by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8766
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8767
- Limit automated issue closure to bug issues only by @Copilot in https://github.com/invoke-ai/InvokeAI/pull/8776
- Feat(UI): Search bar in image info code tabs and add vertical margins for improved UX in Recall Parameters tab. by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8786
- feat(flux2): add FLUX.2 klein model support by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8768
- Feature: Add DyPE (Dynamic Position Extrapolation) support to FLUX models for improved high-resolution image generation by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8763
- fix(model_manager): detect Flux1/2 VAE by latent space dimensions instead of filename by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8790
- Prep for 6.11.0.rc1 by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8771
- Fix ref_images metadata format for FLUX Kontext recall by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8791
- Add input connectors to the FLUX model loader by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/8785
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8797
- fix(ui): use proper FLUX2 latent RGB factors for preview images by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8802
- fix(ui): allow guidance slider to reach 1 for FLUX.2 Klein by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8800
- Add new model type integration guide by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8779
- [i18n]: Fix weblate merge errors by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8805
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8804
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8806
- Release Workflow: Fix workflow edge case by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8792
- Documentation: InvokeAI PR review and merge policy by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8795
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8807
- fix(ui): improve DyPE field ordering and add ‘On’ preset option by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8793
- fix: Klein 2 Inpainting breaking when there is a reference image by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/8803
- fix(ui): remove scheduler selection for FLUX.2 Klein by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8808
- Fix(UI): Removed canvas’ blur filter clipping by expanding image bounds by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8773
- fix(ui): Flux 2 Model Manager default settings not showing Guidance by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/8810
- fix(ui): convert reference image configs when switching main model base by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8811
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8816
New Contributors
- @kyhavlov made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/8613
- @aleyan made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/8722
- @Copilot made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/8693
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v6.10.0…v6.11.0
v6.11.1
InvokeAI 6.11.1
This is a bugfix release that corrects several image generation and user interface glitches:
- Fix FLUX.2 Klein image generation quality (@Pfannkuchensack)
- At higher step values and larger images, the FLUX.2 Klein models were generating image artifacts characterized by diagonals, cross-hatching and dust. This bug is now corrected.
- Restore denoising strength for outpaint mode (@Pfannkuchensack)
- Previously, when outpainting, the denoising strength was pinned at 1.0 rather than observing the value set by the user.
- Only show FLUX.1 VAEs when a FLUX.1 main model is selected (@Pfannkuchensack)
- This fix prevents the user from inadvertently selecting a FLUX.2 VAE when generating with FLUX.1.
- Reset ZiT seed variance toggle when recalling images without that metadata (@Pfannkuchensack)
- When remixing an image generated by Z-Image Turbo, the setting of the seed variance toggle (which increases image diversity) is now correctly restored.
- Improve DyPE area calculation (@JPPhoto)
- DyPE increases the quality of FLUX.1 models at higher resolutions.. This fix improves how the algorithm’s parameters are automatically adjusted for image size.
- Remove duplicate DyPE preset dropdown in generation settings (@Pfannkuchensack
- The DyPE dropdown in generation settings is no longer duplicated in the generation UI.
In addition to these bug fixes, new Russian translations were added by (@DustyShoe).
Checkout the roadmap
To see what the development team has planned for forthcoming releases, check out the InvokeAI roadmap. Feature releases will be issued roughly monthly.
Take the user survey
And don’t forget to tell us who you are, what features you use, and what features you most want to see included in future releases. Take the InvokeAI 2026 User Engagement Survey and share your thoughts!
Credits
In addition to the authors of these bug fixes, many thanks to @blessedcoolant, @skunkworxdark, and @mickr777 for their time and patience testing and reviewing the code.
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v6.11.0…v6.11.1
v6.12.0 Latest
InvokeAI v6.12.0
This is a feature release of InvokeAI which provides support for multiple accounts on the same InvokeAI backend, enhanced support for the Z-Image and FLUX.2 models, multiple user interface enhancements, and new utilities for managing models.
[Jump to Installing and Updating]Multi-User Mode (Experimental)
Have you ever wished you could share your InvokeAI instance with your friends, family or coworkers, but didn’t want to share your galleries or give everyone the ability to add and delete models? Now you can. InvokeAI 6.12 introduces an experimental multi-user mode that allows you to create separate user accounts with login names and passwords. Each account’s image boards, images, canvas state and UI preferences are separate from the others. Users with administrative privileges are allowed to perform system-wide tasks such as adding and configuring models and managing the session queue, while ordinary users are prevented from making this type of change.
See the Multi-User Mode User’s Guide for information on setting up and using this mode.
Multi-User mode was contributed by @lstein .
Enhanced Support for Z-Image and FLUX.2 Models
Z-Image Base — This version of InvokeAI adds support for the Z-Image Base model family. This is an undistilled version of Z-Image suitable for fine-tuning and LoRA training. It also provides a high level of image diversity while preserving excellent image quality.
FLUX.2 LoRAs — InvokeAI now supports a variety of FLUX.2 Klein LoRA formats.
Thanks to @Pfannkuchensack for his work on these enhancements.
Gallery User Interface Improvements
Paged Gallery Browsing — Paged gallery browsing is back. Go to image board settings and select “Use Paged Gallery View” to replace infinite gallery scrolling with page-by-page navigation.
Arrow Key Navigation — The arrow keys now work correctly when browsing a gallery. When the Viewer is in focus, the right and left arrow keys will navigate through the currently selected gallery. When the gallery thumbnails are in focus, the right/left/up/down arrows navigate among them.
@DustyShoe contributed these enhancements.
New Canvas Features
The Canvas now features several new features added by @DustyShoe
Text Tool — The Canvas now features a Text tool that allows you to insert text in a variety of fonts, sizes and styles, move it around the canvas, and commit it to the raster layer.
Linear and radial gradient tools — These new tools add radial and linear gradients to the Canvas. The gradients use color transparency and the foreground/background colors to draw gradients in the direction of the mouse movement.
Invert Button for Regional Guidance Layers — You can now select any Regional Guidance region and select the “invert” button to exchange painted regions with unpainted ones and vice versa. As an added bonus, the invert button also works with Inpaint Masks.
Layer Controls Moved The controls for creating, duplicating and deleting canvas layers have been moved from the top of the layers list to the bottom, which is more consistent with how other graphics packages position their layer controls and, we think, more intuitive. Long-term Canvas users may need to adjust to the new positioning.
Model and Gallery Management Improvements
A few improvements contributed by @lstein aim to make it easier to maintain the model and image databases.
Remove Orphaned Models — Over time InvokeAI may accumulate unused “orphan” models in its models directory that take up space but have no entries in the models database for one reason or another. This means they take up disk space without being usable. A new “Sync Models” button in the Model Manager detects and offers to delete such orphaned models. Developers and other users who have access to the source code repository will also find a script, located in scripts/remove_orphaned_models.py , that will do the same thing from the command line.
Remove Dangling Models — The converse problem occurs when a model directory, or one of its files, was removed or renamed externally, causing it to be referenced in the models database but not be usable. There is now a “Missing Files” filter option in the Model Manager that will identify models that are damaged or deleted. You can then select the models you wish to delete and remove them from the database. In addition, the model selection menus will no longer display models that are missing or broken.
Gallery Maintenance Script — For users with access to the source code repository, the scripts/gallery_maintenance.py python script will clean up dangling and orphaned gallery images. Dangling images are those that appear in the Invoke gallery database but whose files have been deleted from disk. Orphaned images are those that have files on disk but are missing from the database. A related database maintenance tool with more bells and whistles can also be found in @Pfannkuchensack ‘s GitHub at https://github.com/Pfannkuchensack/sqlite_invokeai_db_tool.
Workflow Iterator Improvements
@JPPhoto fixed the way that workflow collections work. Previously when you created a Collection and passed it to an iterator, the items in the collection would be passed to downstream nodes in an unpredictable order. Now, the order of items in the collection is preserved, making complex workflows more predictable and reproducible.
Remote Controlling Invoke’s Generation Parameters
It is now possible to programmatically set Invoke’s generation parameters using a new REST endpoint. This allows a script or other external program to select the model, image size, seed, steps, LoRAs, reference images, and all the other parameters that go into a generation. For documentation of the feature see:
@lstein added this feature.
Translations
Thanks to @Harvester62 for providing the Italian translations for this release.
Installing and Updating
The Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.
Note: With recent updates to torch, users on older GPUs (20xx and 10xx series) will likely run into issues with installing/updating. We are still evaluating how we can support older GPUs, but in the meantime users have found success manually downgrading torch. Head over to discord if you need help.
Follow the Quick Start guide to get started with the launcher.
If you don’t want to use the launcher, or need a headless install, you can follow the manual install guide.
Behind-the-Scenes Improvements
This release are contains a number of bug fixes and performance enhancements.
- Optimize cache locking in Klein text encoder — (@girlyoulookthebest) This addresses a race condition in the Model Cache which prematurely removed the FLUX.2 Klein encoder from memory.
- Run Text Encoder on CPU — (@lstein) This is an option available in the details panel of the Model Manager that allows you to force large text encoder models to run on CPU rather than GPU. This preserves VRAM for use by the denoiser steps and in some cases improves performance. Thanks to @girlyoulookthebest who found and fixed a bug in this feature.
- Fix IP Adapters losing their model path — (@Pfannkuchensack) Fixes the Model Manager’s “reidentify” function when run on IP Adapter models.
- Kill the server with a single ^C — (@lstein) When previous version of Invoke were launched from a command-line terminal, it used to require two key board interrupts (control-C) to completely shut it down. This is now fixed.
- Persist the selected board and image across browser sessions — (@lstein) The last image board selected is now restored when you edit a browser session and restart it.
Detailed Change Log
What’s Changed
- Fix(nodes): color correct invocation by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/8605
- chore: v6.8.1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8610
- refactor: model manager v3 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8607
- tidy: docs and some tidying by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8614
- chore: prep for v6.9.0rc1 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8615
- feat: reidentify model by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8618
- fix(ui): generator nodes by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8619
- chore(ui): point ui lib dep at gh repo by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8620
- chore: prep for v6.9.0 by @psychedelicious in https://github.com/invoke-ai/InvokeAI/pull/8623
- fix(mm): directory path leakage on scan folder error by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8641
- feat: remove the ModelFooter in the ModelView and add the Delete Mode… by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8635
- chore(codeowners): remove commercial dev codeowners by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8650
- Fix to enable loading fp16 repo variant ControlNets by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8643
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8599
- (chore) Update requirements to python 3.11-12 by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8657
- Rework graph.py by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/8642
- Fix memory issues when installing models on Windows by @gogurtenjoyer in https://github.com/invoke-ai/InvokeAI/pull/8652
- Feat: SDXL Color Compensation by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/8637
- feat(ui): improve hotkey customization UX with interactive controls and validation by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8649
- feat(ui): Color Picker V2 by @hipsterusername in https://github.com/invoke-ai/InvokeAI/pull/8585
- Feature(UI): bulk remove models loras by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8659
- feat(prompts): hotkey controlled prompt weighting by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/8647
- Feature: Add Z-Image-Turbo model support by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8671
- fix(ui): :bug:
HotkeysModalandSettingsModalinitial focus by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/8687 - Feature: Add Tag System for user made Workflows by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8673
- Feature(UI): add extract masked area from raster layers by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8667
- Feature: z-image Turbo Control Net by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8679
- fix(z-image): Fix padding token shape mismatch for GGUF models by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8690
- feat(starter-models): add Z-Image Turbo starter models by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8689
- fix: CFG Scale min value reset to zero by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/8691
- feat(model manager): 💄 refactor model manager bulk actions UI by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/8684
- feat(hotkeys): :sparkles: Overhaul hotkeys modal UI by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/8682
- Feature (UI): add model path update for external models by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8675
- fix support multi-subfolder downloads for Z-Image Qwen3 encoder by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8692
- Feature: add prompt template node by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8680
- feat(hotkeys modal): ⚡ loading state + performance improvements by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/8694
- Feature/user workflow tags by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8698
- feat(backend): add support for xlabs Flux LoRA format by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8686
- fix(prompts): :bug: prompt attention behaviors, add tests by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/8683
- Workaround for Windows being unable to remove tmp directories when installing GGUF files by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8699
- chore: bump version to v6.10.0rc1 by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8695
- Feature: Add Z-Image-Turbo regional guidance by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8672
- (chore) Prep for v6.10.0rc2 by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8701
- fix(model-manager): add Z-Image LoRA/DoRA detection support by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8709
- feat(prompts): :lipstick: increase prompt font size by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/8712
- fix(ui): misaligned Color Compensation Option by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/8714
- fix(z_image): use unrestricted image self-attention for regional prompting by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8718
- fix(ui): make Z-Image model selects mutually exclusive by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8717
- Fix an issue with regional guidance and multiple quick-queued generations after moving bbox by @kyhavlov in https://github.com/invoke-ai/InvokeAI/pull/8613
- Implement PBR Maps Node by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/8700
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8724
- fix(docs): Bump python and github actions versions in mkdocs github action by @aleyan in https://github.com/invoke-ai/InvokeAI/pull/8722
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8725
- fix(model-manager): support offline Qwen3 tokenizer loading for Z-Image by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8719
- fix(gguf): ensure dequantized tensors are on correct device for MPS by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8713
- (chore) update WhatsNew translation text by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8727
- Feature/zimage scheduler support by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8705
- Update CODEOWNERS by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/8728
- feat(flux): add scheduler selection for Flux models by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8704
- Update CODEOWNERS by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8731
- Update CODEOWNERS by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/8732
- fix(model-loaders): add local_files_only=True to prevent network requests by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8735
- docs(z-image) add Z-Image requirements and starter bundle by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8734
- Add configurable model cache timeout for automatic memory management by @Copilot in https://github.com/invoke-ai/InvokeAI/pull/8693
- chore: Remove extraneous log debug statements from model loader by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8738
- Feature: z-image + metadata node by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8733
- feat(z-image): add
add_noiseoption to Z-Image Denoise by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8739 - (chore) Bump to version 6.10.0 by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8742
- chore(release): bump development version to 6.10.0.post1 by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8745
- Fix(model manager): Improve calculation of Z-Image VAE working memory needs by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8740
- Chore: Fix weblate merge conflicts by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8744
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8747
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8748
- Chore: Fix weblate rebase errors by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8750
- fix(invocation stats): Report delta VRAM for each invocation; fix RAM cache reporting by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8746
- Fix(UI): Error message for extract region by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8759
- Fix(UI): Canvas numeric brush size by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8761
- Feat(UI): Canvas high level transform smoothing by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8756
- chore(CI/CD): Remove codeowners from /docs directory by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8737
- feat(z-image): add Seed Variance Enhancer node and Linear UI integration by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8753
- fix(model_manager): prevent Z-Image LoRAs from being misclassified as main models by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8754
- Add user survey section to README by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8766
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8767
- Limit automated issue closure to bug issues only by @Copilot in https://github.com/invoke-ai/InvokeAI/pull/8776
- Feat(UI): Search bar in image info code tabs and add vertical margins for improved UX in Recall Parameters tab. by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8786
- feat(flux2): add FLUX.2 klein model support by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8768
- Feature: Add DyPE (Dynamic Position Extrapolation) support to FLUX models for improved high-resolution image generation by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8763
- fix(model_manager): detect Flux1/2 VAE by latent space dimensions instead of filename by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8790
- Prep for 6.11.0.rc1 by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8771
- Fix ref_images metadata format for FLUX Kontext recall by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8791
- Add input connectors to the FLUX model loader by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/8785
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8797
- fix(ui): use proper FLUX2 latent RGB factors for preview images by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8802
- fix(ui): allow guidance slider to reach 1 for FLUX.2 Klein by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8800
- Add new model type integration guide by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8779
- [i18n]: Fix weblate merge errors by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8805
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8804
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8806
- Release Workflow: Fix workflow edge case by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8792
- Documentation: InvokeAI PR review and merge policy by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8795
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8807
- fix(ui): improve DyPE field ordering and add ‘On’ preset option by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8793
- fix: Klein 2 Inpainting breaking when there is a reference image by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/8803
- fix(ui): remove scheduler selection for FLUX.2 Klein by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8808
- Fix(UI): Removed canvas’ blur filter clipping by expanding image bounds by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8773
- fix(ui): Flux 2 Model Manager default settings not showing Guidance by @blessedcoolant in https://github.com/invoke-ai/InvokeAI/pull/8810
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8812
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8813
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8814
- fix(ui): convert reference image configs when switching main model base by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8811
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8816
- Chore(CI/CD): bump version to 6.11.0.post1 by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8818
- feat(model_manager): add missing models filter to Model Manager by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8801
- Implemented ordering for expanded iterators by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/8741
- fix(flux2): support Heun scheduler for FLUX.2 Klein models by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8794
- fix(ui): only show FLUX.1 VAEs when a FLUX.1 main model is selected by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8821
- Feat(UI): Reintroduce paged gallery view as option by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8772
- fix(ui): reset seed variance toggle when recalling images without that metadata by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8829
- fix(ui): restore denoising strength for outpaint mode by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8828
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8830
- fix(ui): remove duplicate DyPE preset dropdown in generation settings by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8831
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8834
- Feat(UI): Add linear and radial gradient tools to canvas by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8774
- Feature(backend): Add user toggle to run encoder models on CPU by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8777
- Add dype area option by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/8844
- fix(flux2): Fix FLUX.2 Klein image generation quality by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8838
- Fix DyPE Area Calculation by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/8846
- chore(CI/CD): bump version to 6.11.1.post1 by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8852
- feat(model_manager): Add scan and delete of orphaned models by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8826
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8856
- fix(flux2): resolve device mismatch in Klein text encoder by @girlyoulookthebest in https://github.com/invoke-ai/InvokeAI/pull/8851
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8878
- Feature(app): Add an endpoint to recall generation parameters by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8758
- Feature: Canvas Blend and Boolean modes by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/8661
- Feature(backend): Add a command-line utility for running gallery maintenance by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8827
- fix(flux2): apply BN normalization to latents for inpainting by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8868
- feat(z-image): add Z-Image Base (undistilled) model variant support by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8799
- Feature(UI): Add text tool to canvas by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8723
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8881
- Feature (UI): Add Invert button for Regional Guidance layers by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8876
- Fix: canvas text tool broke global hotkeys by @Copilot in https://github.com/invoke-ai/InvokeAI/pull/8887
- Fix Create Board API call by @hjohn in https://github.com/invoke-ai/InvokeAI/pull/8866
- Fix: Improve non square bbox coverage for linear gradient tool. by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8889
- Fix bare except clauses and mutable default arguments by @Mr-Neutr0n in https://github.com/invoke-ai/InvokeAI/pull/8871
- Feat(Model Manager): Add improved download manager with pause/resume partial download. by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8864
- Feature: flux2 klein lora support by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8862
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8905
- chore(CI/CD): Add pfannkuchensack to codeowners for backend by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8915
- Feature: Add FLUX.2 LOKR model support (detection and loading) by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8909
- Fix(Text-tool): Remove redundant Font tooltip on fonts selection by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8906
- feat(multiuser mode): Support multiple isolated users on same backend by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8822
- Fix(UI): Fixes broken “Cancel Current Item” button in left panel introduced in last commit. by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8925
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8924
- Fix: Replace deprecated huggingface_hub.get_token_permission() with whoami() by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8913
- fix: Filter non-transformer keys from Z-Image checkpoint state dicts by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8918
- Fix(MM): Fixed incorrect advertised model size for Z-Image Turbo by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8934
- fix(model-install): persist remote access_token for resume after restart by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8932
- feat(MM):model settings export import by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8872
- Fix: Shut down the server with one keyboard interrupt (#94) by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8936
- QoL: Persist selected board and most recent image across browser sessions by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8920
- Fix(backend): Fix race condition in download queue when concurrent jobs share same destination by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8931
- Prompt Attention Fixes by @joshistoast in https://github.com/invoke-ai/InvokeAI/pull/8860
- Fix: model reidentify losing path and failing on IP Adapters by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8941
- perf(flux2): optimize cache locking in Klein encoder to fix #7513 by @girlyoulookthebest in https://github.com/invoke-ai/InvokeAI/pull/8863
- fix(model_manager): detect Flux 2 Klein LoRAs in Kohya format with transformer-only keys by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8938
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8946
- Added SQL injection tests by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/8873
- Add user management UI for admin and regular users (#106) by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8937
- Fix(gallery): Re-add image browsing with arrow keys by @DustyShoe in https://github.com/invoke-ai/InvokeAI/pull/8874
- Doc: update multiuser mode documentation by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8953
- docs: Fix typo in README.md - ‘easy’ should be ‘ease’ by @haosenwang1018 in https://github.com/invoke-ai/InvokeAI/pull/8948
- docs: Fix typo in contributing guide - remove extra ‘the’ by @haosenwang1018 in https://github.com/invoke-ai/InvokeAI/pull/8949
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8947
- Feature: Make strict password checking optional by @lstein in https://github.com/invoke-ai/InvokeAI/pull/8957
- fix: only delete individual LoRA file instead of entire parent directory by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8954
- fix(ui): IP adapter / control adapter model recall for reinstalled models by @Pfannkuchensack in https://github.com/invoke-ai/InvokeAI/pull/8960
- Fix/model cache Qwen/CogView4 cancel repair by @JPPhoto in https://github.com/invoke-ai/InvokeAI/pull/8959
- ui: translations update from weblate by @weblate in https://github.com/invoke-ai/InvokeAI/pull/8956
- Fix(UI): Replace boolean submenu icon with PiIntersectSquareBold by @dunkeroni in https://github.com/invoke-ai/InvokeAI/pull/8962
New Contributors
- @kyhavlov made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/8613
- @aleyan made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/8722
- @Copilot made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/8693
- @girlyoulookthebest made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/8851
- @hjohn made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/8866
- @Mr-Neutr0n made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/8871
- @haosenwang1018 made their first contribution in https://github.com/invoke-ai/InvokeAI/pull/8948
Full Changelog: https://github.com/invoke-ai/InvokeAI/compare/v6.11.0…v6.12.0