Releases
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.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.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.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.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.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.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.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.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.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