mirror of
https://github.com/vladmandic/automatic
synced 2026-09-19 17:24:32 +02:00
xyz grid add lora selector
This commit is contained in:
@@ -65,6 +65,7 @@ def apply_sampler(p, x, xs):
|
||||
else:
|
||||
p.sampler_name = sampler_name
|
||||
|
||||
|
||||
def apply_hr_sampler_name(p, x, xs):
|
||||
hr_sampler_name = sd_samplers.samplers_map.get(x.lower(), None)
|
||||
if hr_sampler_name is None:
|
||||
@@ -72,6 +73,7 @@ def apply_hr_sampler_name(p, x, xs):
|
||||
else:
|
||||
p.hr_sampler_name = hr_sampler_name
|
||||
|
||||
|
||||
def confirm_samplers(p, xs):
|
||||
for x in xs:
|
||||
if x.lower() not in sd_samplers.samplers_map:
|
||||
@@ -138,6 +140,19 @@ def apply_vae(p, x, xs):
|
||||
sd_vae.reload_vae_weights(shared.sd_model, vae_file=find_vae(x))
|
||||
|
||||
|
||||
def list_lora():
|
||||
import sys
|
||||
lora = [v for k, v in sys.modules.items() if k == 'networks'][0]
|
||||
loras = [v.name for v in lora.available_networks.values()]
|
||||
return ['None'] + loras
|
||||
|
||||
|
||||
def apply_lora(p, x, xs):
|
||||
if x == 'None':
|
||||
return
|
||||
p.prompt = p.prompt + f" <lora:{x}:{shared.opts.extra_networks_default_multiplier}>"
|
||||
|
||||
|
||||
def apply_te(p, x, xs):
|
||||
shared.opts.data["sd_text_encoder"] = x
|
||||
sd_models.reload_text_encoder()
|
||||
@@ -235,6 +250,7 @@ axis_options = [
|
||||
AxisOption("Prompt S/R", str, apply_prompt, fmt=format_value),
|
||||
AxisOption("Model", str, apply_checkpoint, fmt=format_value, cost=1.0, choices=lambda: sorted(sd_models.checkpoints_list)),
|
||||
AxisOption("VAE", str, apply_vae, cost=0.7, choices=lambda: ['None'] + list(sd_vae.vae_dict)),
|
||||
AxisOption("LoRA", str, apply_lora, cost=0.5, choices=list_lora),
|
||||
AxisOption("Text encoder", str, apply_te, cost=0.7, choices=lambda: ['None', 'T5 FP4', 'T5 FP8', 'T5 FP16']),
|
||||
AxisOption("Styles", str, apply_styles, choices=lambda: [s.name for s in shared.prompt_styles.styles.values()]),
|
||||
AxisOption("Seed", int, apply_field("seed")),
|
||||
|
||||
Reference in New Issue
Block a user