Commit 9d90c1e3 authored by PengGao's avatar PengGao Committed by GitHub
Browse files

Add LoRA support in Wan22MoeRunner for high and low noise models, inc… (#292)



* Add LoRA support in Wan22MoeRunner for high and low noise models, including validation and logging of loaded configurations.

* Update lightx2v/models/runners/wan/wan_runner.py
Co-authored-by: default avatarCopilot <175728472+Copilot@users.noreply.github.com>

---------
Co-authored-by: default avatarCopilot <175728472+Copilot@users.noreply.github.com>
parent 6fc67329
......@@ -428,6 +428,27 @@ class Wan22MoeRunner(WanRunner):
self.config,
self.init_device,
)
if self.config.get("lora_configs") and self.config.lora_configs:
assert not self.config.get("dit_quantized", False) or self.config.mm_config.get("weight_auto_quant", False)
for lora_config in self.config.lora_configs:
lora_path = lora_config["path"]
strength = lora_config.get("strength", 1.0)
base_name = os.path.basename(lora_path)
if base_name.startswith("high"):
lora_wrapper = WanLoraWrapper(high_noise_model)
lora_name = lora_wrapper.load_lora(lora_path)
lora_wrapper.apply_lora(lora_name, strength)
logger.info(f"Loaded LoRA: {lora_name} with strength: {strength}")
elif base_name.startswith("low"):
lora_wrapper = WanLoraWrapper(low_noise_model)
lora_name = lora_wrapper.load_lora(lora_path)
lora_wrapper.apply_lora(lora_name, strength)
logger.info(f"Loaded LoRA: {lora_name} with strength: {strength}")
else:
raise ValueError(f"Unsupported LoRA path: {lora_path}")
return MultiModelStruct([high_noise_model, low_noise_model], self.config, self.config.boundary)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment