Skip to content

v6.3.0

Latest
Compare
Choose a tag to compare
@psychedelicious psychedelicious released this 05 Aug 01:26
· 2 commits to main since this release

This minor release includes a handful of fixes and enhancements.

Support for multiple reference images for FLUX Kontext

You may now use multiple ref images when using FLUX Kontext on the Generate, Canvas and Workflows tabs.

On the Generate and Canvas tabs, the images are concatenated in image-space before being encoded.

This is done using the new Flux Kontext Image Prep node, which you can use in Workflows. Use it to resize an image to one of Kontext's preferred sizes. If multiple images are added to its collection, they are concatenated horizontally. Pass the output of this node into a single Kontext Conditioning node, and then pass its output into the Denoise node.

If, for some reason, you want to use latent-space concatenation, you can do it like this:

  • Add a Flux Kontext Image Prep for each image
  • Pass each of those to its own Kontext Conditioning
  • Collect the Kontext Conditioning nodes
  • Pass the output collection to the Denoise node

The images will be concatenated in latent-space by the Denoise node. It will not resize the images to Kontext preferred dimensions. For best results, use the Flux Kontext Image Prep node, as described above, to prep your ref images.

Studio state is stored in the database

Studio state includes all generation settings, Canvas layers, Workflow editor state - in other words, everything that you lose when you click Reset Web UI. Studio state does not include models, images, boards, saved workflows, etc.

Previously, this data was stored in the web browser or Launcher's built-in UI. In v6.3.0, it is stored in the database, allowing your Studio state to follow you across browsers and devices.

For example, let's say you were working in Canvas from the Launcher's UI. You need to switch computers, so you enable Server Mode in the launcher and open Invoke on the other computer.

Previously, your Studio would load up with default settings on the other computer. In v6.3.0, you will instead pick up right where you left off on the first computer.

On the first launch of Invoke after updating to v6.3.0, we will migrate Studio state stored in the browser to the database, so you shouldn't lose anything.

Added setting to disable picklescan

Invoke uses picklescan to scan certain unsafe model types for malware during installation and loading.

Sometimes, picklescan is unable to scan models because their internal structure is broken. It is possible that these unscannable models will still work fine, and have no malware, but until now, there was no way to tell Invoke to ignore detections or scan errors.

You may now dangerously, unsafely opt-out of model scanning by adding this line to your invokeai.yaml config file:

# 😱 scary!
unsafe_disable_picklescan: true

We strongly suggest you do not disable picklescan. Disable it at your own risk.

Enhancements

  • Support for multiple reference images for FLUX Kontext on Generate, Canvas and Workflows tabs. Ref images are concatenated in image space.
  • New Flux Kontext Image Prep node. Use it to resize an image to one of Kontext's preferred sizes. If multiple images are added to its collection, they are concatenated horizontally.
  • When Snap to Grid on Canvas is disabled, hold Ctrl/Cmd to temporarily enable course snapping. Hold Ctrl/Cmd+Shift to temporarily enable fine snapping. Thanks @Ar7ific1al !
  • Update styling and layout for image comparison.
  • Added visual indicator on node fields when they are added to the form. The field names are in blue with a small link icon.
  • Added setting to disable picklescan.
  • Added FLUX.1 Krea dev to starter models (full-fat and quantized).
  • Added a not-broken anime upscaler model to starter models.
  • Studio state is stored on the server.
  • Add hotkey shift+n to fit bbox to layers. It does the same thing as the button in the Canvas toolbar.
  • Add a button to the ref image display to use that image's size for generation. This is useful for FLUX Kontext, where you often want to generate at the same/similar size as a reference image.
  • Updated translations. Thanks @Harvester62 @Linos1391 !

Fixes

  • Fix issue where model filenames with periods were not handled correctly.
    • This fixes the error DuplicateModelException: A model with path 'flux/main/FLUX.safetensors' is already installed.
  • Fix issue where model installation required 2x the disk space the model actually needed. We now move - not copy - from download temp dir to final destination.
  • Metadata not recorded for API model generations.
  • Queue count badge not hidden when left panel is collapsed.
  • Fix an issue where canceling a queue item didn't clear its progress image.
  • Fix an issue where viewer could briefly show the last-selected image between the last progress image being received, and its output image rendering.
  • Add handling for a rare race condition where we get socket events for a queue item after it has completed.
  • Add handling for a common race condition where queue status network requests complete after queue events optimistically update the counts, often resulting in a the little yellow queue count badge being incorrect.
  • Fix an issue where intermediate images could trigger changes to gallery view.
  • Progress image not hiding when a generation fails or is canceled, when gallery auto-switch is disabled.
  • Awkward flash of incorrectly-sized image when starting image comparison.
  • Fix an issue where gallery auto-scroll could not work during an image loading race condition.
  • Prevent creating a new canvas while staging, which could bork your existing canvas session.
  • Fix an issue where the Reset Canvas Layers button also reset the bbox.
  • Hide Reset Canvas Layers button when not on the canvas.
  • Fix visual overflow with very long board names.

Internal/Dev

  • UI logging now includes the source code filename of the logger, making troubleshooting much easier for UI bugs.
  • All redux state is modeled with zod schemas. Rehydrated state is validated against the schemas before it makes it into the browser, preventing some (very rare) errors.

Installing and Updating

The Invoke Launcher is the recommended way to install, update and run Invoke. It takes care of a lot of details for you - like installing the right version of python - and runs Invoke as a desktop application.

Note: With recent updates to torch, users on older GPUs (20xx and 10xx series) will likely run into issues with installing/updating. We are still evaluating how we can support older GPUs, but in the meantime users have found success manually downgrading torch. Head over to discord if you need help.

Follow the Quick Start guide to get started with the launcher.

If you don't want to use the launcher, or need a headless install, you can follow the manual install guide.

What's Changed

Full Changelog: v6.2.0...v6.3.0