Commit Graph

13853 Commits

Author SHA1 Message Date
CalamitousFelicitousness 7b42f25cf7 docs(i18n): clarify control size and resize Mode hints 2026-06-27 22:23:00 +01:00
Disty0 6ee13520a1 SDNQ atten remove query.device == key.device checks 2026-06-27 16:23:49 +03:00
Disty0 2622291de7 SDNQ Atten Fix FP16 PV 2026-06-27 15:39:58 +03:00
Disty0 3fed183564 update sdnq atten min sizes 2026-06-27 14:51:56 +03:00
Disty0 718e24c50d increase the min lenghts for SDNQ atten 2026-06-27 02:54:39 +03:00
Disty0 7c5238bf41 fix shapes 2026-06-27 01:56:50 +03:00
Disty0 66116ad1a5 cleanup 2026-06-27 01:43:59 +03:00
Disty0 13c1bcff3f cleanup 2026-06-27 01:40:11 +03:00
Disty0 b92ccf4adf Make triton atten and mm require less tuning 2026-06-27 01:15:09 +03:00
Vladimir Mandic c0a4db64e2 ui
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-26 21:31:14 +02:00
Vladimir Mandic f44dd11b05 fixes
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-26 21:30:09 +02:00
Vladimir Mandic 37f0d7c1c1 fix ltx
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-26 10:52:51 +02:00
Vladimir Mandic 138125bd46 update api response models
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-26 10:39:33 +02:00
Vladimir Mandic fccbdcc1e9 update api response
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-26 10:38:14 +02:00
Vladimir Mandic b0a887d3b8 lint/changelog/requirements
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-26 09:35:33 +02:00
Disty0 db43551ab6 use tl.exp2 instead of tl.math.exp2 2026-06-25 19:19:34 +03:00
Vladimir Mandic b61475574e preview check for output panel visibility
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-25 10:54:35 +02:00
Vladimir Mandic 2f3547c69d update requirements
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-25 08:03:56 +02:00
Vladimir Mandic 719b4842b2 update diffusers and preview matching
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-25 08:00:28 +02:00
Vladimir Mandic 5004377373 Merge pull request #4964 from vladmandic/fix/prompt-encoding-fixes
Fix/prompt encoding fixes
2026-06-25 06:55:59 +02:00
CalamitousFelicitousness a6fe828aa2 fix(api): set compatibility options without crashing
clip_skip and the uni_pc_* opts live in opts.data without an OptionInfo in
data_labels (compatibility_opts). Options.set() read data_labels[key].onchange
unconditionally, so setting clip_skip via /sdapi/v1/options raised KeyError and
returned 500; the override_settings restore path had the same unguarded
data_labels[k] access for falsy-valued compat opts.

Guard the onchange lookup and read the stored value via getattr(opts, k), which
already falls back through data then data_labels.
2026-06-25 02:25:33 +01:00
CalamitousFelicitousness 3dd0cd590c fix(pipelines): restore clip-skip text encoding for transformers 5.6+
The vendored encode_prompt copies in the PAG, APG, ControlNet-XS and differential
diffusion pipelines dereference the .text_model wrapper that transformers 5.6
removed from CLIPTextModel, so their clip-skip path crashes on SD1.5 and SDXL TE1.
Apply the same getattr(te, 'text_model', te) fix as the core parser.

Mirrors upstream diffusers, which still carries this deref in pipeline
encode_prompt; only the single-file loader was fixed there.
2026-06-25 02:25:33 +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
CalamitousFelicitousness 7ed3cd71e0 fix(embeddings): restore multi-vector textual inversion expansion
transformers 5 defaults tokenizer.add_tokens() to normalized=True, so the CLIP
tokenizer lowercases added embedding names. tokenizer.tokenize() then returns the
lowercased surface, maybe_convert_prompt never matches mixed-case names in
added_tokens_encoder, and multi-vector expansion is skipped. Every mixed-case
multi-vector embedding collapsed to its first vector and looked ignored.

Add embedding tokens as AddedToken(name, normalized=False) so they stay
case-sensitive and tokenize() surfaces them verbatim. Valid on transformers 4.x
and 5.x; convert_tokens_to_ids and encoding are unaffected.
2026-06-25 02:25:33 +01:00
Disty0 a0752f527b SDNQ Atten fix shape mismatches 2026-06-25 04:13:09 +03:00
Vladimir Mandic fd9de21da1 update locale
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-24 21:34:43 +02:00
Vladimir Mandic abddebd629 hints
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-24 21:26:19 +02:00
Vladimir Mandic 2a625a565a networks reference style
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-24 21:14:11 +02:00
Vladimir Mandic 720a4b1fc2 cleanup reference jsons
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-24 21:04:59 +02:00
Vladimir Mandic f0aec9f8e8 update ui
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-24 20:53:35 +02:00
Disty0 426a06d916 fix fp16 pv nans 2026-06-24 19:56:05 +03:00
Disty0 fba98cbf71 add stage 4 2026-06-24 18:17:07 +03:00
Disty0 8029156fa2 SDNQ Atten use simple row-wise quant instead 2026-06-24 17:59:38 +03:00
Disty0 2c44dca2be reduce warp range 2026-06-24 13:23:00 +03:00
CalamitousFelicitousness d95ea9e238 fix(lora): support embedding-target LoRA and companion bias deltas
Route nn.Embedding targets (and the SDNQEmbedding / ScaledWordEmbedding subclasses) through the linear LoRA path: the weight delta is up@down over the [vocab, dim] table, same shape and merge as a Linear.

Apply a companion bias delta (diff_b) as ex_bias on the same module rather than dropping it; collect diff_b into the LoRA group so it rides the existing module instead of a separate Full module that would collide on the network key.
2026-06-23 20:40:42 +01:00
Disty0 e7f11ed772 cleanup 2026-06-23 20:44:37 +03:00
Disty0 0af57a0af1 And no quant atten 2026-06-23 20:41:19 +03:00
Vladimir Mandic e206f3f68a add k2 prequants
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-23 16:00:04 +02:00
Vladimir Mandic 5072ea406f debounce width/height updates
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-23 13:55:47 +02:00
Vladimir Mandic 81437ff051 cleanup seedvr
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-23 13:55:47 +02:00
Disty0 b682d90a4a Fix UI settings 2026-06-23 14:26:24 +03:00
Disty0 72a4d2c2bd Add Hadamard support to SDNQ Atten 2026-06-23 14:17:34 +03:00
Vladimir Mandic 904925c1ef update changelog
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-23 10:02:40 +02:00
Vladimir Mandic cc4110ecc5 Merge pull request #4962 from vladmandic/feat/krea2
feat(krea2): add Krea 2 (K2) image model support
2026-06-23 09:18:19 +02:00
Vladimir Mandic efbde97288 Merge pull request #4961 from 0xDELUXA/fix/hipblaslt-nested-tensile-library
fix: detect hipBLASLt Tensile library in nested per-arch subfolder
2026-06-23 09:11:33 +02:00
Disty0 dfa713e6fc Add SDNQ attention 2026-06-23 08:10:02 +03:00
CalamitousFelicitousness 48fad8524e feat(krea2): add Krea 2 (K2) image model support
Krea 2 is a 12.9B single-stream flow-matching DiT trained from scratch, using a Qwen3-VL-4B text encoder and the Qwen-Image VAE. The transformer is vendored as a diffusers ModelMixin whose module tree mirrors the checkpoint, so weights load with no key conversion; the pipeline ports the reference encode, flow-matching denoise, and VAE decode. The text encoder is shared at runtime via the existing dedup registry, so Base and Turbo reuse one Qwen3-VL-4B copy.

Covers text-to-image, image-to-image, native LoRA, and the single-file UNET override. Also completes SD.Next's partial Qwen-Image VAE support (5D decode input and TAESD preview mapping) that K2 shares.
2026-06-23 04:41:54 +01:00
0xDELUXA daa27a9977 fix: detect hipBLASLt Tensile library in nested per-arch subfolder 2026-06-23 00:06:03 +03:00
Vladimir Mandic 3e1df229ba Merge pull request #4959 from QualiaRain/fix/mask-edge-zero-area-divide
fix(mask): guard zero-area divide in auto-mask Edge mode
2026-06-22 20:39:08 +02:00
QualiaRain ec3d4182cc fix(mask): guard zero-area divide in auto-mask Edge mode
In get_mask() Edge mode, largest_size is set to 0 when there are no
contours, but the luminance loop is also entered when contours exist
whose largest has zero area (e.g. thin 1px / degenerate features whose
cv2.contourArea is 0). That path divides by largest_size and raises
ZeroDivisionError, crashing auto-masking. Guard the divide: when
largest_size is 0 the scaled luminance is 0, so the loop breaks on the
first iteration and yields an empty mask (the sensible no-region result).

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-22 12:41:14 -04:00