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