23 Commits
Author SHA1 Message Date
larsupbandClaude Opus 5 9c2b1bb970 docs: document the SVC widget on the merger node
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-02 12:34:55 +02:00
larsupbandClaude Opus 5 dad8a4a5ee Merge larsupb/main: samplers (2.3.0) + delta-space merge work (2.4.0)
larsupb/main carried the sampler rework, released and published to the Comfy
Registry as 2.3.0 on 2026-06-22. This branch had independently claimed 2.3.0
for the delta-space merge work, so that release is renumbered 2.4.0 and the
published 2.3.0 entry is kept intact below it in the changelog.

- README: both sides added a `## Changelog` at the same spot. Resolved by
  keeping the sampler entry as 2.3.0 and moving the merge work to 2.4.0.
- pyproject.toml / __init__.py -> 2.4.0.
- tests/conftest.py: mock comfy.sample and latent_preview, which the incoming
  sampler code imports. Without them collection failed for 6 test files --
  `comfy` is a MagicMock, not a package, so every submodule needs an explicit
  sys.modules entry.

Suite verified at 238 passed, both in-tree and from a copy outside the ComfyUI
tree where `import comfy` raises ModuleNotFoundError.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-02 11:54:20 +02:00
larsupbandClaude Opus 5 fe92e95f65 release: 2.3.0 with changelog
Bumps from 2.2.5, which was released on 2026-06-22; the 51 commits since are
unreleased. Minor rather than patch: a removed node, three renamed widgets and
a flipped default all break saved workflows.

- pyproject.toml -> 2.3.0
- __init__.py version_code -> [2, 3, 0]. It still read [2, 2, 4] and so had
  been printing a stale version on node load since the 2.2.5 release.
- README: add a Changelog section covering the delta-space interpolation work,
  the VRAM/OOM fixes, the breaking UX changes and the test-suite overhaul.
  Correct the delta-space note, which was labelled v2.2.5 although that work
  landed after the 2.2.5 release.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-02 11:48:08 +02:00
larsupbandClaude Opus 5 1ca216dcbb feat(merge): delta-space interpolation, VRAM offload, and OOM-safe kernels
Extends the delta-space merge path beyond the GTA family and hardens the
large-layer code paths that OOM'd on 8 GB cards.

- Merger node: route slerp/nuslerp/karcher/nearswap and SCE through the
  delta-space path (reconstruct each LoRA's full delta, merge, refactor),
  instead of merging up/down factors separately and injecting meaningless
  up_i @ down_j cross-terms. Serialize these on CUDA like GTA.
- Merger node: `offload_models` toggle (default on) evicts resident
  DIT/CLIP/VAE from VRAM before a CUDA merge; ComfyUI reloads them lazily.
- gta: add memory-frugal `karcher_delta_merge` and `sce_delta_merge` that
  consume the delta list in place instead of stacking [N, out, in]; the
  stock mergekit paths make ~3N full-tensor copies and OOM large layers.
- gta: pick magnitude / magnitude_outliers / SCE-select thresholds from a
  GPU histogram above 16M elements, avoiding the int64 argsort + sort
  workspace (the OOM behind TIES/Breadcrumbs) without the ~300x host
  kthvalue penalty. Small tensors keep exact top-k for mergekit parity.
- gta: cap della chunks by element budget as well as rows, and build
  per-row ranks with a single int32 `scatter_` instead of a second int64
  argsort -- wide layers (e.g. KREA2 mlp [16384, 6144]) no longer need a
  ~1 GiB contiguous allocation.
- lora_save: sanitize tensors before saving; refactoring produces
  transposed/sliced views that safetensors refuses to serialize.
- Tests for interp fidelity/integration, save sanitization, VRAM offload
  and the new sparsify paths, plus RUN_TESTS.md and a .gitignore.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-02 11:13:13 +02:00
larsupbandClaude Opus 4.8 7a1d7851cd docs(readme): reflect renames, Linear removal, default flip, refactor_method
- Node title: "PM LoRA Merger (Mergekit)" -> "PM LoRA Merger".
- Merger params: _lambda -> output_scale; document refactor_method
  (energy_rSVD/rSVD), spectral_norm_scale, merge_clip; note device-aware
  worker count (GTA on CUDA = single worker).
- Merge methods: remove PM Linear; document the shared GTA controls
  (sign_consensus, average_weights default OFF, rescale_norm) with a
  migration note; fix DELLA (was malformed) and Breadcrumbs (bogus
  tie_method) and add per-method density/epsilon/gamma defaults.
- Task Arithmetic: note it matches ComfyUI's native additive stacking
  when average_weights is off.
- Parameter Sweep + Features: normalize -> average_weights; add a
  native delta-space GTA feature bullet.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-19 18:54:09 +02:00
larsandClaude Opus 4.8 1b9d5f6b06 Samplers: NOISE/GUIDER API, live previews, correct decode & Dual Model CFG
Brings the local sampler implementation and fixes to main (on top of
origin/main 2.2.5, whose SCE-merge and FONTS_DIR fixes are preserved).

- Block/Stack/Sweep samplers use the NOISE/GUIDER custom-sampling API.
- Block Sampler: feed decoded latent previews to the progress bar so
  previews appear live during sampling.
- Block Sampler: run denoised x0 through model.process_latent_out() before
  VAE decode (raw model-internal latents decoded to depth-map/diff-like
  images previously); pack per-block latents with torch.cat not torch.stack.
- All samplers: rebuild the guider via shared rebuild_guider_with_patches()
  so DualModelGuider's separate uncond model (and DualCFGGuider cfg1/cfg2)
  is preserved instead of collapsing to a plain CFGGuider.
- Stack & Sweep samplers: single progress bar spanning all iterations.
- README: add Changelog; bump version to 2.3.0.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23 00:15:13 +02:00
larsupb 3614df9de6 remove arcee fusion method, add linf rescale norm, cleanups 2026-01-01 19:51:37 +01:00
larsupb e3e37a7056 fix spectral norm, remove normalization option from NearestSwap 2026-01-01 19:10:45 +01:00
larsupb dbe0b59174 updated readme 2025-12-26 12:02:21 +01:00
larsupb 62ceda93a1 align layer filter functionality, enable search bar for LoRA selection in the Power Stacker. 2025-12-23 11:22:59 +01:00
larsupb ac642f9ebd Fix LoRA Resize node and update README 2025-12-23 10:38:13 +01:00
larsupb 95d3ca9417 Update README 2025-12-22 16:45:24 +01:00
larsupb 345b702a31 Update README 2025-12-22 16:42:12 +01:00
larsupb 049f54cdfb Update README 2025-12-22 01:59:35 +01:00
larsupb 2a223d41d4 Update readme 2025-12-22 01:44:29 +01:00
larsupb 83795c7985 Update readme 2025-12-22 01:34:29 +01:00
larsupb e0e4ed8629 Updated README.md 2024-05-29 08:05:46 +02:00
larsupb 3f587c83dc Readme and bug fixes 2024-05-28 01:05:06 +02:00
laksjdjf 6e54d77329 Update README.md 2024-03-29 15:57:40 +09:00
laksjdjf c3f5625c29 Update README.md 2023-10-17 20:29:51 +09:00
laksjdjf cc32900602 Update README.md 2023-10-06 20:15:45 +09:00
laksjdjf a179bfbe88 Update README.md 2023-10-06 18:37:40 +09:00
laksjdjf 14f3a3d0dc Initial commit 2023-10-06 18:32:04 +09:00