16 Commits
Author SHA1 Message Date
cicalooo 55da4ee624 Drop extra credits and the stale audit
Keep the alibaba-pai file connection and note that the stack row UI matured from rgthree-comfy's Power Lora Loader.
2026-10-11 15:38:09 +11:00
cicalooo 17f019c061 Blend PDD heads as row 0 plus offsets
Core treats later bank rows as offsets from the first head. set_weight files already use that layout; proj_out banks are converted before the same blend.
2026-10-11 15:31:21 +11:00
doggeddalle de8bb95257 Replace README screenshot with current stack layout 2026-09-06 23:28:00 +10:00
doggeddalle 47f3ef0abd Fold README details; handle LoRAs already on MODEL 2026-09-06 23:23:00 +10:00
doggeddalle 3f7bf0d762 Capture H3 adaLN sidecars & loader hook
Add h3lora/sidecars.py to peel adaln_basis, adaln_mean, and silu_t_emb_grid from checkpoint state dicts and stash them on model/patcher objects so ComfyUI doesn't drop them. Install a load_model_weights wrapper (ensure_load_hook) in __init__.py and call it from h3lora.apply; use sidecar collect when creating AdalnContext. Include unit tests (tests/test_sidecars.py) for peel/attach/collect and the wrapper. Also update README with no attribution by proxy. Thanks pl0x
2026-09-06 18:34:25 +10:00
doggeddalle 4ef4de0a5d Robust adaln, pdd, keymap, modality fixes
Multiple improvements and hardening across the Power LoRA stack:

- adaln: stronger caching (file-version keys), device-safe grid/basis computation, normalized tensor hashing for basis cache, more robust table-to-table rebasing with residual checks and fallback, better detection of adaLN weight name variants.
- apply: validate numeric strengths, reject unsupported passengers, handle loading errors, detect shape mismatches, track rejected/skipped/quantized merges, improved PDD handoff and reporting.
- pdd: introduce movable PddBank/PddState, register banks as additional models, thread-local PDD context, strength-scheduled blending and safer interval clamping.
- keymap/detect/gain/modality/nodes/branch: add support for varied LoRA key spellings, more validation, skip incomplete adapters, and small bugfixes.
- server: surface partial calibration note.
- pyproject/README/.gitignore: packaging, docs, and ignore cleanup; add Python >=3.10 requirement and publisher repo fix.
- web UI: fix balance button behavior, safer auto-balance error handling and factor sanitization.
- tests: add unit tests for adaln, modality and pdd.

Overall: better robustness to varied LoRA formats, mixed devices, malformed inputs, and improved user-facing error/reporting.
2026-08-28 02:22:53 +10:00
doggeddalle f38d084232 Add PDD support and improve adaLN grid handling
Introduce PDD/Acc head handling and a robust adaLN grid/basis pipeline.

- Add h3lora/pdd.py: peel Acc/PDD output-head banks from LoRAs, keep banks aside, and blend rows at sample time (PddFinalLayer + attach wrapper) to avoid crashes.
- Refactor h3lora/adaln.py: generate/load silu grids from time_embedder, safetensors, or live embedder; add hashing, basis cache, sidecar support, residual acceptance threshold, and scanning of diffusion_model safetensors.
- Integrate PDD into apply.py, detect.py, nodes.py and README; add .gitignore entries.
2026-08-27 19:43:07 +10:00
doggeddalle 0e47a77976 Add H3 LoRA scheduling for runtime strength
Introduce runtime scheduling of per-row LoRA strengths. Adds h3lora/schedule.py (Schedule, ScheduleState, parsing, progress_from), new H3LoraSchedule node in nodes.py, and wiring in apply.py to resolve per-row schedules and preserve bias deltas. branch.py extended with FusedBranch, schedule-aware fusion, LoraBank/LoraBranch changes, and ScheduleController wrapper (attach now returns controller). README updated and unit tests added (tests/test_schedule.py, tests/test_branch_schedule.py) to validate curves, domains, thread-local state and controller nesting.
2026-08-09 17:14:56 +10:00
doggeddalle 7db1c8d918 DOCS update 2026-08-09 02:03:20 +10:00
doggeddalle 8c4aad1135 Add audit report and Apache-2.0 license
Add a full technical AUDIT_REPORT.md (2026-08-08) documenting priority findings and recommended fixes. Add Apache-2.0 LICENSE file and update README to reference the license. Update pyproject.toml to declare license as Apache-2.0 (replacing MIT). These changes add project licensing and a comprehensive audit summary for maintainers and users.
2026-08-08 22:29:25 +10:00
cicalooo 8b4f7b9a66 Update README with formatted Nodes section and image
Reformatted the Nodes section to include a table for better clarity and added an image.
2026-08-08 21:16:45 +10:00
cicalooo e14d31704f Revise README with new image and Nodes section
Updated README to include a new image and restructured the Nodes section.
2026-08-08 21:16:24 +10:00
doggeddalle 8cb35b41ed Merge branch 'master' of https://github.com/cicalooo/ComfyUI-H3-PowerLoraStack 2026-08-08 21:15:19 +10:00
doggeddalle 0fc822da8c Add auto-balance & adaLN modality control
Introduce auto-balance measurement and per-modality adaLN scaling for MiniMax H3.

- Add gain.py to measure LoRA perturbation (rel, factor) and cache results; expose measure_file/measure_state_dict.
- Add modality.py to scale adaLN rows by {video,text,audio} and describe/apply those changes.
- Add server route /h3_power_lora_stack/balance (h3lora/server.py) and register it in __init__.py to support the UI button.
- Integrate measurement and modality scaling into apply_stack and report LoRA rel/factor suggestions.
- Add H3AdalnModality node and adaln_modality input in nodes.py.
- Update web UI (web/h3_power_lora_stack.js) with auto-balance/restore buttons, server call, badges, and client-side behavior.
- Document features and rationale in README.md.

These changes keep measurements cached and never boost measured LoRAs (factor clamped ≤1).
2026-08-08 21:15:17 +10:00
cicalooo a26cdfd1b0 Update README with image and introduction
Added an image and expanded the introduction section.
2026-08-08 19:28:53 +10:00
doggeddalle 28ac439a26 Add MiniMax H3 Power LoRA Stack
Add a ComfyUI plugin implementing a stacked multi-LoRA loader for MiniMax H3. Introduces H3PowerLoraStack and H3LoraInspector node classes, plus modules: adaln (adaLN dense↔curve basis conversion), branch (runtime low-rank branches for quantized weights), apply (stack orchestration), detect (safetensors header introspection), keymap (key normalization), nodes, and a web UI (h3_power_lora_stack.js). Includes pyproject metadata and README. Preserves quantized kernels via branching, rebases adaLN pairs, handles many naming conventions, and provides a browser picker and per-LoRA reporting.
2026-08-08 19:27:06 +10:00