Commit Graph
4 Commits
Author SHA1 Message Date
shootthesound d1416121bc chore: update Krea + Klein example workflow 2026-07-07 16:17:22 +01:00
shootthesound 48df2240d3 feat: gen bundle — generate with one model, edit with another (2.6.0)
The Angelo — Overrides node now carries an optional second model stack
(gen_model / gen_positive / gen_negative / gen_vae connection inputs
plus gen_steps / gen_cfg / gen_sampler_name / gen_scheduler settings).
When wired, Sampler Mode generates the base with the gen stack, decodes
with the gen VAE, and re-encodes the pixels with the main edit VAE so
the whole editing session runs on the edit model — generate with FLUX
Krea / SDXL for the look, click-to-edit with Klein / Qwen-Image-Edit.

Behaviour:
- Edit Mode never reads the gen bundle; unwired = byte-identical to 2.5
- Seed + Smpl Denoise stay on the toolbar (seed controls keep working;
  denoise < 1.0 = img2img with the gen model, incl. off a loaded image)
- gen_negative optional: falls back to a zeroed gen_positive
  (ConditioningZeroOut maths)
- Preview/history pixels are the gen VAE decode (not the edit-VAE
  round-trip); base pixels cropped to /16 for any edit VAE ratio
- Cached-base / loaded-image Sampler runs derive the gen latent by
  encoding the base pixels with the gen VAE
- guider/sampler/sigmas trio deliberately not applied to the gen model
  (a wired GUIDER wraps the edit model's conds)

Hardening from the bug-check pass (2 inline + 3 agent-review findings):
- gen widgets live in optional inputs, not required: ComfyUI validates
  required inputs server-side BEFORE Python defaults apply, which would
  have rejected every pre-2.6 API-format export of the Overrides node
- explicit None checks in overrides parsing (gen_cfg 0.0 is falsy and
  an `or` fallback silently sampled at the default)
- partial gen-bundle wiring (any subset incl. gen_negative-only) raises
  a clear ValueError in Sampler Mode instead of silently falling back
- wired-latent guard: wrong-channel latents raise a clear not-in-the-
  gen-model's-latent-space error; 5D video latents into a 4D gen model
  get their singleton frame axis squeezed instead of crashing deep in
  the UNet
- console prints the gen resolution each run (an empty latent authored
  for a 16x edit VAE silently means half-size through an 8x gen VAE —
  undetectable from the latent alone, so make it visible)

Fingerprint stays edit-model-fixed so Edit Mode never spuriously
resets; _STATE untouched until the whole gen chain succeeds
(cancel/OOM safe).

Also: example_workflows/Krea_plus_Klein-workflow.json (FLUX Krea 2 +
turbo LoRA at 1504x1504 through the Wan 2.1 VAE, Klein 9B editing) and
full README coverage (Quick start section, Overrides wiring rules,
Krea 2 + Wan 2.1 VAE pairing note).
2026-07-07 16:15:55 +01:00
shootthesound 0c70813e65 examples: update Klein 9B example workflow 2026-06-30 17:17:56 +01:00
shootthesound decfa16081 chore: rename workflows/ -> example_workflows/ (closes #18)
Thanks to @FNGarvin (#19) for the suggestion. ComfyUI auto-lists
folders named example_workflows/ under Workflow -> Browse Templates,
so the bundled Klein9b + Qwen-Image-Edit examples become discoverable
without a docs hunt — especially valuable on ephemeral remote ComfyUI
instances where loading by file path is awkward. README updated to
mention the templates browser and the new folder name.
2026-06-07 13:43:56 +01:00