187 Commits

Author SHA1 Message Date
Vladimir Mandic 76941efc7e strict typechecking
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-08-16 12:45:50 +02: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 aeef359bd7 fix(prompt): restore textual inversion on clip-skip>=2
transformers 5.6 flattened CLIPTextModel, removing the .text_model wrapper that
compel_hijack and the xhinker parser dereference on the normalized clip-skip path.
On SD1.5 at clip-skip >= 2 this raised AttributeError, which processing_prompt
caught and silently fell back to fixed-attention encoding, dropping textual
inversion and prompt weighting.

Resolve the submodule via getattr(te, 'text_model', te), correct for flattened
CLIPTextModel, CLIPTextModelWithProjection (still nested), and transformers < 5.6.
2026-06-25 02:25:33 +01:00
Vladimir Mandic 72b2f0d7be bump compel
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-10 08:09:00 +02:00
Vladimir Mandic 78f88ef571 add ideogram4
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-05 20:00:49 +02:00
awsr c4ebef29a9 RUF013 updates 2026-03-24 05:48:19 -07:00
awsr 62d2229520 RUIF013 updates and formatting 2026-03-24 05:12:18 -07:00
vladmandic 7a014f0612 merge: modules/prompt_parser_diffusers.py 2026-03-13 14:32:05 +01:00
Vladimir Mandic 47543663f9 cleanup references to p.sd_model
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-02-19 20:48:42 +01:00
Vladimir Mandic 494e4a7a7b fixes 2026-02-19 16:20:17 +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
vladmandic e8a158f4f5 refactor prompt set
Signed-off-by: vladmandic <mandic00@live.com>
2026-01-19 10:51:28 +01:00
awsr dcb7164d30 Update readfile type safety 2025-12-17 16:43:54 -08:00
awsr 56fc36d944 More dict type safety opt in 2025-12-17 13:18:48 -08:00
CalamitousFelicitousness a19c795b49 fix(prompt): handle multi-modal processors in token counter
For FLUX2 models using Mistral3/PixtralProcessor, detect and use the
underlying text tokenizer instead of calling the processor directly,
which incorrectly tries to interpret text prompts as images.
2025-12-10 18:54:39 +00:00
Disty0 33c74e7066 Use zeros for empty negs when diffusers_zeros_prompt_pad enabled 2025-11-24 19:27:25 +03:00
Vladimir Mandic b4d61a5a5c Merge pull request #4262 from nolbert82/master
Fix prompt scheduling embed reuse and add per-batch caching
2025-10-14 09:27:40 -04:00
Nolan GILBERT db9297244c Fixed prompt scheduling + uses TE once per batch 2025-10-14 01:07:48 +02:00
Vladimir Mandic 962cb7115d infra for full-model load/save with quant
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-10-07 14:30:45 -04:00
Vladimir Mandic 2c740697c4 guard against null prompt
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-08-18 10:29:01 -04:00
Vladimir Mandic 1b3f5405a3 fix batch processing
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-07-31 09:56:40 -04:00
Vladimir Mandic 76504e5264 add explicit BOS/EOS handling in prompt parser
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-07-30 12:46:01 -04:00
Disty0 c21c7e545a cleanup 2025-07-26 04:52:56 +03:00
Disty0 9afb122367 Fix prompt parser with Flux 2025-07-26 04:25:43 +03:00
Vladimir Mandic e8bec2823a css fonts update
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-07-25 14:55:24 -04:00
Vladimir Mandic a298173cf0 handle batch when saving images
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-07-25 13:13:32 -04:00
Vladimir Mandic b311bdf91e fix prompt encoding if prompts within batch have different segment counts
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-07-25 12:59:14 -04:00
Vladimir Mandic 0b8001c0fa prompt error handling
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-07-25 12:38:25 -04:00
Vladimir Mandic e8b5ea3847 major refactor: remove backend original
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-07-05 13:16:46 -04:00
Enes Sadık Özbek e91208bea9 Merge branch 'dev' into feature/chroma-support 2025-06-26 17:02:00 +03:00
Vladimir Mandic 4de160608e fix prompt parser with batch size
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-06-26 07:47:03 -04:00
Enes Sadık Özbek 954138bfc1 add attention masks 2025-06-23 01:27:40 +00:00
Enes Sadık Özbek 4b3ce06916 Initial support for Chroma 2025-06-18 00:38:17 +00:00
Disty0 677bdd8611 HiDream fix prompt parser 2025-04-23 03:14:58 +03:00
Vladimir Mandic 15f8e70e89 add nunchaku prototype
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-04-15 14:39:24 -04:00
Disty0 3564b34e0d Prompt cache support for HiDream 2025-04-15 00:59:46 +03:00
Vladimir Mandic 984aa8ec55 lint fixes
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-04-08 16:31:51 -04:00
Vladimir Mandic 26193b6c22 update changelog
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-04-08 07:52:10 -04:00
Vladimir Mandic b5e421018b fix prompt scheduling
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-04-08 07:46:25 -04:00
Vladimir Mandic ac61fce526 prompt enhance add censor detection and debugging
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-03-29 11:43:22 -04:00
Vladimir Mandic d9583df8de modernui fix sampler advanced options
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-02-12 16:28:17 -05:00
Vladimir Mandic 8e03755d4b add setting for prompt linebreaks
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-02-01 09:41:52 -05:00
Vladimir Mandic a7e0723dcf profiling
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2024-12-18 13:02:22 -05:00
Vladimir Mandic 1185950c4a yet another lora refactor
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2024-12-09 13:40:19 -05:00
Vladimir Mandic ca06002602 lora maintain device
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2024-12-04 09:25:57 -05:00
Vladimir Mandic 023b13b6cb balanced offload improvements
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2024-12-01 15:34:25 -05:00
Vladimir Mandic eee85e5a4e lora refactor in progress
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2024-11-30 12:29:58 -05:00
Vladimir Mandic e4038feff1 minor updates
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2024-11-24 15:05:58 -05:00