mirror of
https://github.com/openvinotoolkit/stable-diffusion-webui.git
synced 2024-12-14 22:53:25 +03:00
477199357f
never refer to lora by an alias if multiple loras have same alias or the alias is called none
38 lines
1.3 KiB
Python
38 lines
1.3 KiB
Python
import json
|
|
import os
|
|
import lora
|
|
|
|
from modules import shared, ui_extra_networks
|
|
|
|
|
|
class ExtraNetworksPageLora(ui_extra_networks.ExtraNetworksPage):
|
|
def __init__(self):
|
|
super().__init__('Lora')
|
|
|
|
def refresh(self):
|
|
lora.list_available_loras()
|
|
|
|
def list_items(self):
|
|
for name, lora_on_disk in lora.available_loras.items():
|
|
path, ext = os.path.splitext(lora_on_disk.filename)
|
|
|
|
if shared.opts.lora_preferred_name == "Filename" or lora_on_disk.alias.lower() in lora.forbidden_lora_aliases:
|
|
alias = name
|
|
else:
|
|
alias = lora_on_disk.alias
|
|
|
|
yield {
|
|
"name": name,
|
|
"filename": path,
|
|
"preview": self.find_preview(path),
|
|
"description": self.find_description(path),
|
|
"search_term": self.search_terms_from_path(lora_on_disk.filename),
|
|
"prompt": json.dumps(f"<lora:{alias}:") + " + opts.extra_networks_default_multiplier + " + json.dumps(">"),
|
|
"local_preview": f"{path}.{shared.opts.samples_format}",
|
|
"metadata": json.dumps(lora_on_disk.metadata, indent=4) if lora_on_disk.metadata else None,
|
|
}
|
|
|
|
def allowed_directories_for_previews(self):
|
|
return [shared.cmd_opts.lora_dir]
|
|
|