stable-diffusion-webui
28 строк · 1.1 Кб
1from modules import extra_networks, shared2from modules.hypernetworks import hypernetwork3
4
5class ExtraNetworkHypernet(extra_networks.ExtraNetwork):6def __init__(self):7super().__init__('hypernet')8
9def activate(self, p, params_list):10additional = shared.opts.sd_hypernetwork11
12if additional != "None" and additional in shared.hypernetworks and not any(x for x in params_list if x.items[0] == additional):13hypernet_prompt_text = f"<hypernet:{additional}:{shared.opts.extra_networks_default_multiplier}>"14p.all_prompts = [f"{prompt}{hypernet_prompt_text}" for prompt in p.all_prompts]15params_list.append(extra_networks.ExtraNetworkParams(items=[additional, shared.opts.extra_networks_default_multiplier]))16
17names = []18multipliers = []19for params in params_list:20assert params.items21
22names.append(params.items[0])23multipliers.append(float(params.items[1]) if len(params.items) > 1 else 1.0)24
25hypernetwork.load_hypernetworks(names, multipliers)26
27def deactivate(self, p):28pass29