diff --git a/extensions-builtin/sdnext-modernui b/extensions-builtin/sdnext-modernui index ee53aea71..7488abcb8 160000 --- a/extensions-builtin/sdnext-modernui +++ b/extensions-builtin/sdnext-modernui @@ -1 +1 @@ -Subproject commit ee53aea71c8ef3464df3e2668b9d5ed85e951d79 +Subproject commit 7488abcb80af348625e4a1a4e7d03957aebecbcf diff --git a/modules/ui_extra_networks.py b/modules/ui_extra_networks.py index c2c7f4fde..0dc1819af 100644 --- a/modules/ui_extra_networks.py +++ b/modules/ui_extra_networks.py @@ -153,10 +153,11 @@ class ExtraNetworksPage: def find_version(self, item, info): all_versions = info.get('modelVersions', []) + if len(all_versions) == 0: + return {} try: - found_versions = [] if item is None: - return all_versions + return all_versions[0] elif hasattr(item, 'hash') and item.hash is not None: current_hash = item.hash[:8].upper() elif hasattr(item, 'shorthash') and item.shorthash is not None: @@ -164,17 +165,14 @@ class ExtraNetworksPage: elif hasattr(item, 'sha256') and item.sha256 is not None: current_hash = item.sha256[:8].upper() else: - return all_versions + return all_versions[0] for v in info.get('modelVersions', []): for f in v.get('files', []): if any(h.startswith(current_hash) for h in f.get('hashes', {}).values()): - found_versions.append(v) - if len(found_versions) == 0: - found_versions = all_versions - return found_versions + return v except Exception as e: errors.display(e, 'Network version') - return all_versions + return all_versions[0] def link_preview(self, filename): quoted_filename = urllib.parse.quote(filename.replace('\\', '/')) diff --git a/modules/ui_extra_networks_checkpoints.py b/modules/ui_extra_networks_checkpoints.py index 71cd9e984..f9d491e88 100644 --- a/modules/ui_extra_networks_checkpoints.py +++ b/modules/ui_extra_networks_checkpoints.py @@ -64,7 +64,7 @@ class ExtraNetworksPageCheckpoints(ui_extra_networks.ExtraNetworksPage): record["info"] = self.find_info(checkpoint.filename) record["description"] = self.find_description(checkpoint.filename, record["info"]) version = self.find_version(checkpoint, record["info"]) - record["version"] = version[0].get("baseModel", "") if record["info"] else "" + record["version"] = version.get("baseModel", "") if record["info"] else "" except Exception as e: shared.log.debug(f'Networks error: type=model file="{name}" {e}') diff --git a/modules/ui_extra_networks_lora.py b/modules/ui_extra_networks_lora.py index 110ec2dd2..d390fe914 100644 --- a/modules/ui_extra_networks_lora.py +++ b/modules/ui_extra_networks_lora.py @@ -37,14 +37,13 @@ class ExtraNetworksPageLora(ui_extra_networks.ExtraNetworksPage): tag = ' '.join(words[1:]).lower() tags[tag] = words[0] - for v in version: # trigger words from info json - possible_tags = v.get('trainedWords', []) - if isinstance(possible_tags, list): - for tag_str in possible_tags: - for tag in tag_str.split(','): - tag = tag.strip().lower() - if tag not in tags: - tags[tag] = 0 + possible_tags = version.get('trainedWords', []) + if isinstance(possible_tags, list): + for tag_str in possible_tags: + for tag in tag_str.split(','): + tag = tag.strip().lower() + if tag not in tags: + tags[tag] = 0 possible_tags = info.get('tags', []) # tags from info json if not isinstance(possible_tags, list): @@ -86,7 +85,7 @@ class ExtraNetworksPageLora(ui_extra_networks.ExtraNetworksPage): "metadata": json.dumps(l.metadata, indent=4) if l.metadata else None, "mtime": mtime, "size": size, - "version": version[0].get("baseModel", l.sd_version) if info else l.sd_version, + "version": version.get("baseModel", l.sd_version) if info else l.sd_version, "info": info, "description": self.find_description(l.filename, info), "tags": self.get_tags(l, info, version), diff --git a/modules/ui_extra_networks_vae.py b/modules/ui_extra_networks_vae.py index 12f3a4a11..c62f7b3ab 100644 --- a/modules/ui_extra_networks_vae.py +++ b/modules/ui_extra_networks_vae.py @@ -32,7 +32,7 @@ class ExtraNetworksPageVAEs(ui_extra_networks.ExtraNetworksPage): "size": size, "info": info, "description": self.find_description(filename, info), - "version": version[0].get("baseModel", "N/A") if info else "N/A", + "version": version.get("baseModel", "N/A") if info else "N/A", } yield record except Exception as e: