Files
automatic/modules
CalamitousFelicitousness 387a349dfd fix(lora): scale the dora diff before the decompose norm
finalize_updown ran apply_weight_decompose on the unscaled delta and
multiplied the result by alpha/rank afterward. LyCORIS and ComfyUI both
bake alpha/rank into the diff before computing the row norms, so any
DoRA with alpha != rank renormalized against the wrong merged weight
(64% relative delta error for kohya-style alpha=1 rank=8; exact only
when alpha == rank, which full-matrix LoKR forces).

- scale updown by calc_scale() before apply_weight_decompose; apply
  only the multiplier afterward
- multiplier lerps the full merged delta (0 disables, 1 equals the
  trainer output); LyCORIS weight-mode ratio interpolation leaves the
  diff applied at multiplier 0 and is not used
- add a numeric regression test mirroring the LyCORIS forward reference
2026-07-14 08:06:45 +01:00
..
2026-07-13 21:48:42 +02:00
2026-06-04 12:36:10 +02:00
2026-07-03 22:05:33 +02:00
2026-05-11 08:36:49 +02:00
2026-07-03 22:05:33 +02:00
2026-06-21 11:19:08 +02:00
2026-07-03 22:05:33 +02:00
2026-06-04 12:36:10 +02:00
2026-06-04 12:36:10 +02:00
2026-07-03 22:05:33 +02:00
2026-07-03 22:05:33 +02:00
2026-02-19 11:09:13 +01:00
2026-07-13 11:26:33 +02:00
2026-07-03 22:05:33 +02:00
2026-06-22 16:22:11 +02:00
2026-07-02 14:36:44 +02:00
2026-07-03 22:05:33 +02:00
2026-05-11 08:13:57 +02:00
2026-07-03 22:05:33 +02:00
2026-06-04 12:36:10 +02:00
2026-07-14 02:16:33 +03:00
2026-06-23 13:55:47 +02:00
2026-07-03 22:05:33 +02:00
2026-05-11 08:36:49 +02:00
2026-06-04 12:36:10 +02:00
2026-07-03 22:05:33 +02:00
2026-07-13 11:26:33 +02:00
2026-02-19 15:28:24 +01:00
2026-07-13 04:49:55 +03:00
2026-02-19 11:09:13 +01:00
2026-02-19 11:09:13 +01:00
2026-06-20 08:15:35 +02:00
2026-06-23 08:10:02 +03:00
2026-05-17 10:41:09 -07:00
2026-07-01 18:59:20 +02:00
2026-06-04 12:36:10 +02:00
2026-05-16 07:19:52 +02:00
2026-05-16 07:19:52 +02:00
2026-04-29 07:59:43 +02:00
2026-05-11 08:13:57 +02:00
2026-07-01 11:08:04 +02:00
2026-02-19 11:13:44 +01:00
2026-07-13 20:58:33 +02:00
2026-07-04 11:17:56 +02:00
2026-02-19 09:46:42 +01:00
2026-07-06 08:12:09 +02:00
2026-02-19 11:09:13 +01:00
2026-06-26 21:30:09 +02:00
2026-02-19 12:21:46 +01:00
2026-02-19 09:46:42 +01:00
2026-05-28 11:54:08 +02:00
2026-06-23 13:55:47 +02:00
2026-02-19 11:09:13 +01:00
2026-07-04 15:26:36 +02:00
2026-07-04 15:26:36 +02:00
2026-02-19 11:09:13 +01:00
2026-02-19 11:09:13 +01:00
2026-02-19 09:15:37 +01:00
2026-02-19 09:46:42 +01:00
2026-02-19 11:09:13 +01:00
2026-02-19 11:13:44 +01:00
2026-05-10 21:45:58 +02:00
2026-05-07 07:20:20 +02:00
2026-07-04 11:17:56 +02:00
2026-06-18 11:45:34 +02:00
2026-02-19 15:28:24 +01:00
2025-10-16 19:39:05 -04:00
2026-06-02 08:03:27 +02:00
2026-05-11 08:36:49 +02:00
2026-07-04 15:26:36 +02:00
2026-06-29 15:26:25 +02:00
2026-02-19 09:15:37 +01:00
2026-03-13 15:05:47 +01:00
2026-02-19 09:46:42 +01:00
2026-07-04 15:26:36 +02:00
2026-02-19 09:15:37 +01:00
2026-07-04 15:26:36 +02:00
2026-02-21 09:32:36 +01:00
2026-07-02 11:25:33 +02:00
2026-07-13 11:26:33 +02:00
2026-07-13 11:26:33 +02:00
2026-06-20 10:49:43 +02:00
2026-05-27 16:31:59 +02:00
2026-06-23 08:10:02 +03:00
2026-02-19 09:46:42 +01:00
2026-07-04 11:17:56 +02:00
2026-06-05 20:00:49 +02:00
2026-02-19 09:15:37 +01:00
2026-06-20 21:18:35 +02:00
2026-07-02 19:14:04 +02:00
2026-02-19 11:09:13 +01:00
2026-07-13 15:52:55 +02:00
2026-07-13 19:08:59 +02:00
2026-06-04 12:36:10 +02:00
2026-05-19 11:56:20 +02:00
2026-07-03 21:03:28 +02:00
2026-02-19 11:36:20 +01:00
2026-07-01 18:59:20 +02:00
2026-02-19 11:36:20 +01:00
2026-02-19 11:09:13 +01:00
2026-05-21 09:23:10 +02:00
2026-07-03 21:03:28 +02:00
2026-05-23 08:32:33 +02:00
2026-02-19 15:28:24 +01:00
2026-06-01 11:54:26 +02:00
2026-07-08 14:50:29 +02:00
2026-02-19 11:09:13 +01:00
2026-07-03 21:03:28 +02:00
2026-03-24 06:07:34 -07:00
2025-11-08 14:54:34 -08:00
2026-04-06 01:06:19 -07:00
2026-05-11 09:34:17 +02:00
2026-04-06 01:06:19 -07:00
2026-04-06 01:06:19 -07:00
2026-03-24 06:08:15 -07:00
2026-02-19 09:46:42 +01:00