Sign In

SD1.X/SDXL QoL workflow

15
299
16
Type
Workflows
Stats
275
Reviews
Published
May 7, 2024
Base Model
Other
Hash
AutoV2
3FA1AA75D4
default creator card background decoration
Bocian

This is a ComfyUI worklfow

It's not particularly crazy in what it can create - all there is are 2 KSampler passes with an upscaler in-between. Instead, the main point is in QoL features to limit the time spent fiddling with widget values as much as possible so you can spend more time actually generating.

All the custom node requirements are listed in About this version and can be downloaded with ComfyUI Manager

Features:

  • Automatic handling of SDXL and derived checkpoints

If a checkpoint contains XL (case insensitive) anywhere in its filename, which conveniently most SDXL/PONY checkpoints do, some adjustments will be made automatically, specifics below.

  • Loaders QoL

    All loaders unified into a single group node

    Use Baked-in VAE? picks the loaded checkpoint's vae over the loaded one (wow, no one guessed). It essentially turns switching node connections into a single click


    tome ratio is supposed to speed up generation at the cost of some minimal changes to the image, none of which are really noticeable tbh, but it's there

    6x lora loaders with the model and clip strengths unified into a single widget for simplicity. There is a copy of this node with separated lora strengths on the side so you can reconnect it if you like.

    The lora loaders are from pythongosssss's pack, and will display a preview image when hovering over models during selection if you have an image file with the same filename as the lora in the same folder
    Couldn't do it for the checkpoint loader as another one has to e used to output the name string to check for xl

  • Prompt PresetsAllows you to keep a list of often reused prompts like quality tags for later. The picked option is concatenated in front of the main prompt.

    Preset prompts are separated by #

    A regex replace expression ensures that the first line after the # and any number of new lines up until a different character is removed so you can use that first line to add notes and have some space left afterwards to keep it clean and easy to navigate

  • Size presetsLets you quickly pick from some common sizes.

    Set 1 consists of SDXL-trained sizes, therefore they should work best for it. This set is forced if an XL model is loaded.

    Adding a new size preset in a set is as simple as typing it in a new line. First 2 numbers are used as width and height respectively. You can add anything afterwards, and anything that isn't a number before and in-between.

    To add a new set, Convert to nodes -> copy a Set node -> connect it to the Text List node -> combine everything into a group node again

    If you run out of slots on the Text List, use another one and combine them with a Text List Concatenate node

  • KSampler passes QoL
    Inside each of those group nodes, there are 2 Advanced KSamplers. If an XL checkpoint is NOT detected, only the first one will be used to complete the entire image. If an XL checkpoint IS detected, the generation will be split between the 2 KSamplers with the first running the loaded checkpoint and the second, the SDXL refiner. The step at which the KSampler switches is determined by the refiner step ratiowidget, with the value being a percentage of the total step count that that the refiner will perform, so in the above image, the refiner would handle 20% of the steps set in both KSamplers.

    For the 2nd pass, if you set seed or cfg to 0, then the value from 1st pass will be used instead. For seed, you need to also set control_after_generate to fixed

    Forcing XL detection state on a node

    If for whatever reason you want to force a different behaviour on a node than the currently loaded model would illicit, use a node with an INT output. 0 means non-XL, 1 means XL