koboldcpp/otherarch/sdcpp
Wagner Bruna 51187d5362
sd: support changing preloaded LoRA multipliers (#2041)
* sd: remove C++ support for enforcing fixed LoRA multipliers

The logic at the Python level is enough.

* sd: support changing preloaded LoRA multipliers

We keep the same rules as before:
- Any LoRA with multiplier 0 can be changed
- If all LoRAs have multiplier != 0, they are fixed and optimized

but tweak the corner case of LoRAs specified more than once to
allow adjusting the multiplier if the same LoRA is also specified
with a zero multiplier, as if they were two different LoRAs.

So the following keeps working as before:
- --sdlora /loras/lcm.gguf --sdloramult 1 : fixed as 1
- --sdlora /loras/lcm.gguf --sdloramult 0 : dynamic, default 0
- --sdlora /loras/ : dynamic, default 0
- --sdlora /loras/lcm.gguf /loras/lcm.gguf --sdloramult 1 1 : fixed as 2

But now we have:
- --sdlora /loras/lcm.gguf /loras/lcm.gguf --sdloramult 1 0 : dynamic, default 1
- --sdlora /loras/lcm.gguf /loras/ --sdloramult 1 : dynamic, default 1
2026-03-17 10:09:55 +08:00
..
common sd: sync to master-529-630ee03 (#2040) 2026-03-17 00:23:28 +08:00
thirdparty
vocab sd: sync to master-504-636d3cb (#1969) 2026-02-14 08:12:08 +08:00
anima.hpp sd: sync to master-520-d950627 (#2006) 2026-03-08 01:23:03 +08:00
avi_writer.h sd: sync to master-467-0e52afc (#1916) 2026-01-15 23:06:51 +08:00
cache_dit.hpp sd: sync to master-529-630ee03 (#2040) 2026-03-17 00:23:28 +08:00
clip.hpp sd: sync to master-504-636d3cb (#1969) 2026-02-14 08:12:08 +08:00
common.hpp sd: sync to master-487-43e829f (#1947) 2026-01-29 21:37:30 +08:00
common_block.hpp sd: sync to master-520-d950627 (#2006) 2026-03-08 01:23:03 +08:00
common_dit.hpp sd: sync to master-520-d950627 (#2006) 2026-03-08 01:23:03 +08:00
conditioner.hpp sd: sync to master-520-d950627 (#2006) 2026-03-08 01:23:03 +08:00
control.hpp sd: sync to master-520-d950627 (#2006) 2026-03-08 01:23:03 +08:00
denoiser.hpp sd: sync to 0752cc9 (master-507-b314d80 +1) (#1999) 2026-02-28 12:22:32 +08:00
diffusion_model.hpp sd: sync to master-520-d950627 (#2006) 2026-03-08 01:23:03 +08:00
easycache.hpp sd: sync to master-371-5498cc0 2025-11-23 19:29:01 -03:00
esrgan.hpp sd: sync to master-487-43e829f (#1947) 2026-01-29 21:37:30 +08:00
flux.hpp sd: sync to master-520-d950627 (#2006) 2026-03-08 01:23:03 +08:00
ggml_extend.hpp add support for cache modes to accelerate image generation (#2021) 2026-03-15 15:27:14 +08:00
gguf_reader.hpp sd: sync to master-467-0e52afc (#1916) 2026-01-15 23:06:51 +08:00
gits_noise.inl
latent-preview.h sd: sync to master-504-636d3cb (#1969) 2026-02-14 08:12:08 +08:00
lcm_glm.h sd: sync to master-358-347710f 2025-11-23 19:28:54 -03:00
lcm_kimo.h sd: sync to master-358-347710f 2025-11-23 19:28:54 -03:00
llm.hpp sd: sync to master-504-636d3cb (#1969) 2026-02-14 08:12:08 +08:00
lora.hpp sd: sync to master-504-636d3cb (#1969) 2026-02-14 08:12:08 +08:00
ltxv.hpp sd: sync to master-520-d950627 (#2006) 2026-03-08 01:23:03 +08:00
main.cpp sd: sync to master-504-636d3cb (#1969) 2026-02-14 08:12:08 +08:00
mmdit.hpp sd: sync to master-520-d950627 (#2006) 2026-03-08 01:23:03 +08:00
model.cpp sd: sync to master-520-d950627 (#2006) 2026-03-08 01:23:03 +08:00
model.h sd: sync to master-520-d950627 (#2006) 2026-03-08 01:23:03 +08:00
msf_gif.h switch to msf gif 2025-09-30 13:56:41 +08:00
name_conversion.cpp sd: sync to master-520-d950627 (#2006) 2026-03-08 01:23:03 +08:00
name_conversion.h sd: sync to master-358-347710f 2025-11-23 19:28:54 -03:00
ordered_map.hpp sd: sync to master-355-694f0d9 2025-11-23 19:28:34 -03:00
pmid.hpp sd: sync to master-487-43e829f (#1947) 2026-01-29 21:37:30 +08:00
preprocessing.hpp sd: sync to master-467-0e52afc (#1916) 2026-01-15 23:06:51 +08:00
qwen_image.hpp sd: sync to master-520-d950627 (#2006) 2026-03-08 01:23:03 +08:00
rng.hpp sd: sync to master-336-917f7bf (#1810) 2025-10-25 21:19:35 +08:00
rng_mt19937.hpp sd: sync to master-467-0e52afc (#1916) 2026-01-15 23:06:51 +08:00
rng_philox.hpp sd: sync to master-336-917f7bf (#1810) 2025-10-25 21:19:35 +08:00
rope.hpp sd: sync to master-520-d950627 (#2006) 2026-03-08 01:23:03 +08:00
SDCPP_LICENSE
sdcpp_vocab_extract.py mistral2 vocab for sdcpp 2025-12-01 22:32:58 +08:00
sdtype_adapter.cpp sd: support changing preloaded LoRA multipliers (#2041) 2026-03-17 10:09:55 +08:00
spectrum.hpp add support for cache modes to accelerate image generation (#2021) 2026-03-15 15:27:14 +08:00
stable-diffusion.cpp sd: sync to master-529-630ee03 (#2040) 2026-03-17 00:23:28 +08:00
stable-diffusion.h add support for cache modes to accelerate image generation (#2021) 2026-03-15 15:27:14 +08:00
t5.hpp sd: sync to master-504-636d3cb (#1969) 2026-02-14 08:12:08 +08:00
tae.hpp sd: sync to master-487-43e829f (#1947) 2026-01-29 21:37:30 +08:00
tokenize_util.cpp sd: sync to master-506-c9cd497 (#1991) 2026-02-23 17:35:59 +08:00
tokenize_util.h added qwen image support (+1 squashed commits) 2025-10-03 18:58:48 +08:00
ucache.hpp sd: sync to master-520-d950627 (#2006) 2026-03-08 01:23:03 +08:00
unet.hpp sd: sync to master-520-d950627 (#2006) 2026-03-08 01:23:03 +08:00
upscaler.cpp add support for cache modes to accelerate image generation (#2021) 2026-03-15 15:27:14 +08:00
util.cpp sd: sync to master-467-0e52afc (#1916) 2026-01-15 23:06:51 +08:00
util.h sd: sync to master-453-4ff2c8c (#1907) 2026-01-03 15:28:27 +08:00
vae.hpp sd: sync to master-520-d950627 (#2006) 2026-03-08 01:23:03 +08:00
version.cpp sd: sync to master-417-43a70e8 (#1889) 2025-12-16 16:16:48 +08:00
wan.hpp sd: sync to master-520-d950627 (#2006) 2026-03-08 01:23:03 +08:00
z_image.hpp sd: sync to master-520-d950627 (#2006) 2026-03-08 01:23:03 +08:00