Commit Graph

160 Commits

Author SHA1 Message Date
CalamitousFelicitousness 005fc5c86e refactor(video): accept video and audio references in the shared core
The core took reference images only, so no api caller could send the video and
audio references the ref2va workflow conditions on, and the marshalling that
handles them existed solely in the MiniMax tab.

validate_references now gates on the workflow and hands the entries to the
architecture that owns them, which accepts decoded images and local file paths
in any mix and preserves their order, since order fixes the labels a prompt
addresses. reference_caps exposes the same limits the validation enforces, so a
client reads them instead of mirroring the numbers.

- MAX_IMAGE_REFERENCES is gone: the limits now cover all three kinds and a total
- the run body no longer builds reference objects or knows their class
- an image is converted where it is built rather than at the call site, so a
  reference decoded from a file and one posted as base64 arrive the same way
- pipeline args summarize a reference list by kind, since a decoded video would
  otherwise print its frames into the per-generation log line
- the video endpoint documents what it actually accepts: images alone, because
  video and audio decode from files rather than from the wire, and an upload
  reference only where an extension provides the store that resolves one
2026-08-16 21:56:37 +01:00
Vladimir Mandic 76941efc7e strict typechecking
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-08-16 12:45:50 +02:00
Vladimir Mandic 0ddd0f7091 minimax-h3 i2i
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-08-13 11:23:57 +02:00
Vladimir Mandic 3f69bee9dd refactor modular
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-08-12 14:24:09 +02:00
CalamitousFelicitousness 5b51e863ff fix(model): tolerate empty prompts on minimax h3
An empty prompt tokenizes to zero tokens and the conditioner fails
reshaping an empty sequence; a single space keeps the generate-on-empty
behavior other models have.
2026-08-10 22:11:57 +01:00
CalamitousFelicitousness c9e1398c71 feat(video): add minimax h3 joint video and audio model
First natively modular model: the pipeline is driven directly through
ModularPipeline, with components fetched per workflow (fl2va covers
text and first/last-frame conditioning).

- per-generation overrides snap the canvas to /32, align frames to
  the 17n+5 grid and duration window, and keep the bespoke scheduler
  pair
- group offload for modular pipelines applied per component in
  sd_offload; re-application is a guarded no-op
- audio checkbox pops the audio decode block so decode and muxing are
  skipped
- frames=1 renders a single still image: the duration floor lifts per
  instance and sub-floor latents pad at the vae decoder
- progress and interrupt handling via a transformer forward pre-hook
- vae scale factor override, tuple-safe patch size
2026-08-10 22:11:57 +01:00
CalamitousFelicitousness 4554b9a277 fix(lora): apply te networks before encode and honor lora_apply_te
Network activation ran after prompt encoding, so text encoder lora
weights never affected embeds on the first generation and the stale
result was then served from the embed cache. The trailing unfiltered
activate in network_load also overrode the te exclude filter, so the
lora_apply_te setting was never honored.

- parse and activate networks in process_base before pipeline args are built
- activate_filtered gates text encoder components on per-request or global
  lora_apply_te; used by base, hires, detailer and faceid call sites
- network_load accepts activate=False for callers that run their own
  deactivate/activate sequence with include/exclude
- network_activate walks excluded components in restore-only mode so a
  filtered text encoder reverts to backup instead of keeping stale deltas
- loaded_loras cache is single-entry since per-filter entries go stale when
  the setting toggles
- prompt embed cache key includes the effective lora_apply_te value
2026-07-08 03:06:04 +01:00
CalamitousFelicitousness 10647c7b67 fix(video): apply Wan 2.2 MoE boundary at runtime in both image and video paths
Wan 2.2 A14B ships a per-model boundary_ratio (0.9 I2V, 0.875 T2V) that selects the high- or low-noise expert per step. The video and base-model image loaders both load the shipped value; the slider override is applied at generation time in set_pipeline_args, the one point both paths pass through before invoking the pipeline.

The denoising loop reads config.boundary_ratio each call, so tuning takes effect with no reload for video and base-model images alike. The slider defaults to -1, meaning use the model's value; 0 to 1 set the boundary explicitly. Single-expert stages stay load-time because they drop a transformer to free VRAM.
2026-06-30 23:00:26 +01:00
QualiaRain 6f8d79313a fix processing: init_images hasattr typo, empty-list guards, dead timer profile branch
Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-12 13:00:31 -04:00
Vladimir Mandic 751c237326 warn on wrong default guidance
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-05-23 10:18:40 +02:00
Vladimir Mandic f67562b912 - all guidance values set to -1 to enable using model defaults
- log default values used if not overriden by user
- rename inconsistent guidance variables:

p.cfg_scale
p.image_cfg_scale -> p.cfg_image
p.diffusers_guidance_rescale -> p.cfg_rescale
p.pag_scale -> p.cfg_true
p.pag_adaptive -> p.cfg_adaptive

Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-05-16 11:06:23 +02:00
CalamitousFelicitousness 688e217815 feat(processing): warn when distilled pipeline ignores cfg_scale 2026-05-07 22:22:05 +01:00
Vladimir Mandic 6261c68396 add Step1X-Edit
Co-authored-by: Copilot <copilot@github.com>
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-05-05 09:31:05 +02:00
Vladimir Mandic e74a9a60e5 fix kandinsky detection
Co-authored-by: Copilot <copilot@github.com>
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-05-02 09:09:06 +02:00
Vladimir Mandic 83141d46a4 Merge pull request #4815 from vladmandic/feat/anima-img2img-inpaint
feat(anima): add image-to-image and inpainting support
2026-04-30 09:38:29 +02:00
Vladimir Mandic eaf06fbc74 all direct input images
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-04-30 09:30:11 +02:00
CalamitousFelicitousness a5bf29edbe feat(anima): add image-to-image and inpainting support 2026-04-30 03:50:02 +01:00
Vladimir Mandic 44a13f9b63 nano banana prototype multi-image
Co-authored-by: Copilot <copilot@github.com>
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-04-29 20:38:23 +02:00
Vladimir Mandic 6ddc4ff455 fix history
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-04-28 19:32:31 +02:00
vladmandic 12fd4d30f1 fb merge phase 2
Signed-off-by: vladmandic <mandic00@live.com>
2026-03-16 08:09:07 +01:00
Vladimir Mandic e5c494f999 cleanup logger 2026-02-19 11:09:13 +01:00
Vladimir Mandic a3074baf8b unified logger 2026-02-19 09:46:42 +01:00
Vladimir Mandic bfe014f5da modernize typing 2026-02-19 09:15:37 +01:00
CalamitousFelicitousness af9fe036a3 feat: add Anima (Cosmos-Predict-2B variant) pipeline support
Anima replaces the Cosmos T5-11B text encoder with Qwen3-0.6B + a
6-layer LLM adapter and uses CONST preconditioning instead of EDM.

- Add pipelines/model_anima.py loader with dynamic import of custom
  AnimaTextToImagePipeline and AnimaLLMAdapter from model repo
- Register 'Anima' pipeline in shared_items.py
- Add name-based detection in sd_detect.py
- Fix list-format _class_name handling in guess_by_diffusers()
- Wire loader in sd_models.py load_diffuser_force()
- Skip noise_pred callback injection for Anima (uses velocity instead)
- Add output_type='np' override in processing_args.py
2026-02-02 00:44:51 +00:00
vladmandic cc03ebc584 move vae to subfolder
Signed-off-by: vladmandic <mandic00@live.com>
2026-01-30 11:34:25 +01:00
vladmandic e8a158f4f5 refactor prompt set
Signed-off-by: vladmandic <mandic00@live.com>
2026-01-19 10:51:28 +01:00
vladmandic 16293375dc lora native stack improvements
Signed-off-by: vladmandic <mandic00@live.com>
2026-01-18 10:06:03 +01:00
Vladimir Mandic 05b919f35b ltx2 improvements
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-01-16 17:31:56 +00:00
CalamitousFelicitousness 3f259cff9a add GLM-Image pipeline support
- Add GLM-Image (zai-org/GLM-Image) model detection and loading
- Custom pipeline loader with proper component handling:
  - ByT5 text encoder (cannot use shared T5 due to different hidden size)
  - Vision-language encoder (9B AR model)
  - DiT transformer (7B)
- Fix EOS token early stopping in AR generation
- Add AR token generation progress tracking with terminal progress bar
- Fix uninitialized audio variable in processing
- Add TAESD support for GLM-Image (using f1 variant)
2026-01-14 03:33:49 +00:00
vladmandic e7e2063f67 fix image sizing
Signed-off-by: vladmandic <mandic00@live.com>
2026-01-05 15:10:53 +01:00
vladmandic cfc620a08a force align width/height to vae scale factor
Signed-off-by: vladmandic <mandic00@live.com>
2026-01-05 09:42:37 +01:00
vladmandic 3a96c514c4 cleanup
Signed-off-by: vladmandic <mandic00@live.com>
2025-12-24 15:10:43 +01:00
vladmandic a319a98e59 error handling of meta embeds
Signed-off-by: vladmandic <mandic00@live.com>
2025-12-23 10:23:14 +01:00
vladmandic 72b533a52a cleanup layered again
Signed-off-by: vladmandic <mandic00@live.com>
2025-12-22 22:52:56 +01:00
vladmandic b5a5efaf62 cleanup
Signed-off-by: vladmandic <mandic00@live.com>
2025-12-22 22:14:12 +01:00
vladmandic 4c43d9a1e6 cleanup qwen
Signed-off-by: vladmandic <mandic00@live.com>
2025-12-22 22:08:49 +01:00
vladmandic ad6458aa7b add flux2
Signed-off-by: vladmandic <mandic00@live.com>
2025-11-26 15:47:17 +00:00
Vladimir Mandic 4ffc1b6097 add nano-banana
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-11-13 13:14:55 -05:00
Vladimir Mandic 947e2c7bc5 update chrono pipeline
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-11-10 08:43:50 -05:00
Vladimir Mandic 3ae10dd0e1 add nvidia-chronoedit
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-10-30 19:52:29 -04:00
Vladimir Mandic 76632838bb restore orig init image for each batch sequence
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-10-19 21:37:21 -04:00
Vladimir Mandic c530167cbe qwen multi-image edits
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-10-04 18:06:50 -04:00
Vladimir Mandic 7a3001170b add daam script
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-09-24 20:16:07 -04:00
Vladimir Mandic 91dab5703a modular pipeline prototype
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-09-24 11:40:20 -04:00
Vladimir Mandic 93659dff4d add qwen-image-edit-2509 and update requirements
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-09-23 10:13:32 -04:00
Vladimir Mandic 5606519085 wan init image fix
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-09-18 11:40:01 -04:00
Vladimir Mandic cc6101ecb2 jumbo update: add wan22-vace, improve offloading, add offloading-using-streams, change logging-levels, refactor some default packages
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-09-17 12:32:30 -04:00
Vladimir Mandic d351fdb98f add more job state updates and update history tab
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-09-13 10:54:04 -04:00
Vladimir Mandic 175e9cbe29 cleanup/refactor state history
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-09-12 16:12:45 -04:00
Vladimir Mandic 4956d94b97 allow denoise 0
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-09-12 13:10:52 -04:00