mirror of
https://github.com/vladmandic/automatic
synced 2026-09-19 01:04:32 +02:00
networks cosmetics and dlss logging
Signed-off-by: Vladimir Mandic <mandic00@live.com>
This commit is contained in:
+4
-2
@@ -30,7 +30,7 @@
|
||||
"THUDM--CogVideoX-5b": "THUDM--CogView3-Plus-3B.jpg",
|
||||
"vladmandic--Anima-1.0-Base-Merge-sdnq-hadamard-uint4": "vladmandic--Anima-1.0-Base.jpg",
|
||||
"vladmandic--Anima-1.0-Base-sdnq-svd-dynamic-uint4": "vladmandic--Anima-1.0-Base.jpg",
|
||||
"vladmandic--Anima-1.0-Turbo-sdnq-svd-dynamic-uint4": "vladmandic--Anima-1.0-Turbo-sdnq-svd-dynamic-uint4.jpg",
|
||||
"vladmandic--Anima-1.0-Turbo": "vladmandic--Anima-1.0-Turbo-sdnq-svd-dynamic-uint4.jpg",
|
||||
"vladmandic--Flux.2-Klein-9B-KV-sdnq-hadamard-uint4": "black-forest-labs--FLUX.2-klein-9b-kv.jpg",
|
||||
"vladmandic--Flux.2-Klein-9B-KV-Merge-sdnq-hadamard-uint4": "black-forest-labs--FLUX.2-klein-9b-kv.jpg",
|
||||
"vladmandic--Krea-2-Base-sdnq-hadamard-uint4": "CalamitousFelicitousness--Krea-2-Base-Diffusers.jpg",
|
||||
@@ -40,5 +40,7 @@
|
||||
"vladmandic--Qwen-Lightning": "Qwen-Lightning.jpg",
|
||||
"Wan-AI--Wan2.1-T2V-14B-Diffusers": "Wan-AI--Wan2.1-T2V-14B-Diffusers.jpg",
|
||||
"Wan-AI--Wan2.2-T2V-A14B-Diffusers": "Wan-AI--Wan2.2-T2V-A14B-Diffusers.jpg",
|
||||
"OzzyGT--MiniMax_H3_sdnq_dynamic_4bit": "MiniMaxAI--MiniMax-H3.jpg"
|
||||
"OzzyGT--MiniMax_H3_sdnq_dynamic_4bit": "MiniMaxAI--MiniMax-H3.jpg",
|
||||
"OzzyGT--MiniMax_H3_sdnq_dynamic_8bit": "MiniMaxAI--MiniMax-H3.jpg",
|
||||
"OzzyGT--MiniMax_H3_sdnq_8bit_pruned": "OzzyGT--MiniMax_H3_sdnq_4bit_pruned.jpg"
|
||||
}
|
||||
|
||||
Submodule extensions-builtin/sdnext-kanvas updated: e557439043...22b431b9cb
+26
-3
@@ -1,5 +1,6 @@
|
||||
import os
|
||||
import enum
|
||||
import json
|
||||
from collections import namedtuple
|
||||
import torch
|
||||
from modules import hashes, shared, sd_checkpoint
|
||||
@@ -53,14 +54,14 @@ class NetworkOnDisk:
|
||||
|
||||
def detect_version(self):
|
||||
base = str(self.metadata.get('ss_base_model_version', "")).lower()
|
||||
arch = str(self.metadata.get('modelspec.architecture', "")).lower()
|
||||
# base.startswith("sd_1.5") # ostris/ai-toolkit uses this nearly-always and its wrong
|
||||
if base.startswith("sd_v1"):
|
||||
return 'sd1'
|
||||
if base.startswith("sdxl"):
|
||||
return 'xl'
|
||||
if base.startswith("stable_cascade"):
|
||||
return 'sc'
|
||||
if base.startswith("sd3"):
|
||||
if base.startswith("sd3") or base.startswith("3-5-"):
|
||||
return 'sd3'
|
||||
if base.startswith("flux2") or "klein" in base:
|
||||
return 'f2'
|
||||
@@ -81,10 +82,15 @@ class NetworkOnDisk:
|
||||
if base.startswith('minimax'):
|
||||
return 'minimax'
|
||||
|
||||
arch = str(self.metadata.get('modelspec.architecture', "")).lower()
|
||||
if arch.startswith("stable-diffusion-v1"):
|
||||
return 'sd1'
|
||||
if arch.startswith("stable-diffusion-xl"):
|
||||
return 'xl'
|
||||
if arch.startswith("stable-diffusion-2") or arch.startswith("stable-diffusion-v2"):
|
||||
return 'sd2'
|
||||
if arch.startswith("stable-diffusion-3") or arch.startswith("stable-diffusion-v3"):
|
||||
return 'sd3'
|
||||
if arch.startswith("stable-cascade"):
|
||||
return 'sc'
|
||||
if arch.startswith("flux2") or arch.startswith("flux-2") or ("klein" in arch):
|
||||
@@ -101,11 +107,22 @@ class NetworkOnDisk:
|
||||
return 'anima'
|
||||
if arch.startswith('krea2'):
|
||||
return 'krea2'
|
||||
if arch.startswith('pixart-sigma'):
|
||||
return 'pixart-sigma'
|
||||
|
||||
if "v1-5" in str(self.metadata.get('ss_sd_model_name', "")):
|
||||
metadata = json.dumps(self.metadata).lower()
|
||||
if 'z-image' in metadata:
|
||||
return 'zimage'
|
||||
if 'v1-5' in metadata:
|
||||
return 'sd1'
|
||||
if 'stable-diffusion-2-1' in metadata:
|
||||
return 'sd2'
|
||||
if 'minimax-h3' in metadata:
|
||||
return 'minimax'
|
||||
|
||||
if str(self.metadata.get('ss_v2', "")) == "True":
|
||||
return 'sd2'
|
||||
|
||||
if 'klein' in self.name.lower() or ('klein' in self.fullname.lower()):
|
||||
return 'f2'
|
||||
if 'flux' in self.name.lower():
|
||||
@@ -116,6 +133,12 @@ class NetworkOnDisk:
|
||||
return 'chroma'
|
||||
if 'anima' in self.name.lower():
|
||||
return 'anima'
|
||||
if 'qwen' in self.name.lower():
|
||||
return 'qwen'
|
||||
if 'wan' in self.name.lower():
|
||||
return 'wan'
|
||||
if 'minimax' in self.name.lower():
|
||||
return 'minimax'
|
||||
|
||||
return ''
|
||||
|
||||
|
||||
@@ -26,7 +26,6 @@ allowed_dirs = []
|
||||
refresh_time = 0
|
||||
extra_pages = shared.extra_networks
|
||||
debug = log.trace if os.environ.get('SD_EN_DEBUG', None) is not None else lambda *args, **kwargs: None
|
||||
debug('Trace: EN')
|
||||
|
||||
card_empty = '<div class="card"></div>'
|
||||
card_full = '''
|
||||
|
||||
@@ -23,8 +23,6 @@ version_map = {
|
||||
"StableDiffusionXL": "SD XL",
|
||||
"WanToVideo": "Wan",
|
||||
"WanVACE": "Wan",
|
||||
"ZImage": "Z-Image",
|
||||
"Z-Image": "Z-Image",
|
||||
"Glm": "GLM-Image",
|
||||
"Krea2": "Krea 2",
|
||||
"AnimaTextTo": "Anima",
|
||||
@@ -34,6 +32,9 @@ version_map = {
|
||||
"Flux2KleinKV": "Flux 2 Klein",
|
||||
"MiniMaxH3": "MiniMax H3",
|
||||
"MiniMax_H3": "MiniMax H3",
|
||||
"ZImageTurbo": "Z-Image",
|
||||
"ZImage": "Z-Image",
|
||||
"Z": "Z-Image",
|
||||
}
|
||||
|
||||
class ExtraNetworksPageCheckpoints(ui_extra_networks.ExtraNetworksPage):
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import os
|
||||
import re
|
||||
import json
|
||||
import concurrent.futures
|
||||
from modules import shared, ui_extra_networks, modelstats
|
||||
@@ -77,17 +78,30 @@ class ExtraNetworksPageLora(ui_extra_networks.ExtraNetworksPage):
|
||||
return clean_tags
|
||||
|
||||
_VERSION_DISPLAY = {
|
||||
'f1': 'Flux', 'sd1': 'SD 1.5', 'sd2': 'SD 2', 'xl': 'SDXL',
|
||||
'sd3': 'SD3', 'sc': 'Cascade', 'hv': 'HunyuanVideo',
|
||||
'chroma': 'Chroma', 'zimage': 'zImage', 'qwen': 'Qwen',
|
||||
'f1': 'Flux 1', 'flux.1 d': 'Flux 1',
|
||||
'f2': 'Flux 2',
|
||||
'sd1': 'SD 1.5',
|
||||
'sd2': 'SD 2',
|
||||
'sd3': 'SD 3',
|
||||
'xl': 'SDXL',
|
||||
'sc': 'Cascade',
|
||||
'hv': 'Hunyuan Video',
|
||||
'chroma': 'Chroma',
|
||||
'qwen': 'Qwen',
|
||||
'krea2': 'Krea 2',
|
||||
'wan': 'Wan',
|
||||
'minimax': 'MiniMax H3',
|
||||
'pixart-sigma': 'Pixart Sigma',
|
||||
'wan video 2.2 a14b': 'Wan Video A14B', 'wan video 14b': 'Wan Video A14B',
|
||||
'zimage': 'Z-Image', 'zimagebase': 'Z-Image', 'zimageturbo': 'Z-Image',
|
||||
'other': ''
|
||||
}
|
||||
|
||||
def cleanup_version(self, dct, lora):
|
||||
ver = dct.get("baseModel", lora.sd_version)
|
||||
ver = self._VERSION_DISPLAY.get(ver, ver)
|
||||
for suffix in (' 0.9', ' 1.0'): # strip uninformative minor versions
|
||||
ver = ver.replace(suffix, '')
|
||||
for suffix in ('0.9', '1.0', '768', 'lightning', 'hyper', 'turbo', 'i2v', 't2v-', 't2v', '720p'): # strip uninformative minor versions
|
||||
ver = re.sub(suffix, '', ver, flags=re.IGNORECASE).strip()
|
||||
ver = self._VERSION_DISPLAY.get(ver.lower(), ver)
|
||||
return ver
|
||||
|
||||
def create_item(self, name):
|
||||
|
||||
+7
-7
@@ -99,7 +99,6 @@ def install():
|
||||
|
||||
|
||||
def verify(pkg_path):
|
||||
log.info(f'DLSS verify: path="{pkg_path}"')
|
||||
if not os.path.exists(pkg_path) or not os.path.isdir(pkg_path):
|
||||
log.error(f'DLSS: path="{pkg_path}" not found')
|
||||
return { 'error': 'package path not found' }
|
||||
@@ -108,7 +107,7 @@ def verify(pkg_path):
|
||||
response = c.controller.call(pkg_path, 'verify', { 'gpu_uuid': 'auto', 'options': { 'level': 'deep' } })
|
||||
if response.get('status') != 'ok':
|
||||
error = response.get('error') or {}
|
||||
log.error(f'DLSS: {error.get("message")}')
|
||||
log.error(f'DLSS: path="{pkg_path}" {response}')
|
||||
return { 'error': error.get('message', 'unknown error') }
|
||||
report = (response.get('result') or {}).get('report', {})
|
||||
if debug:
|
||||
@@ -116,33 +115,34 @@ def verify(pkg_path):
|
||||
checks = { 'passed': 0, 'failed': 0 }
|
||||
for check in report.get('checks', []):
|
||||
if check.get('passed', False):
|
||||
log.debug(f'DLSS verify: {check}')
|
||||
checks['passed'] += 1
|
||||
else:
|
||||
checks['failed'] += 1
|
||||
log.error(f'DLSS : {check}')
|
||||
log.error(f'DLSS verify: {check}')
|
||||
shared.opts.dlss_pkg_path = pkg_path
|
||||
shared.opts.save()
|
||||
log.debug(f'DLSS: gpu={report.get("gpu", "unknown")} checks={checks}')
|
||||
log.debug(f'DLSS: path="{pkg_path}" gpu={report.get("gpu", "unknown")} checks={checks}')
|
||||
return report
|
||||
|
||||
|
||||
def status(pkg_path):
|
||||
log.info(f'DLSS status: path="{pkg_path}"')
|
||||
response = c.controller.call(pkg_path, 'status', {})
|
||||
if response.get('status') != 'ok':
|
||||
error = response.get('error') or {}
|
||||
log.error(f'DLSS: {error.get("message")}')
|
||||
log.error(f'DLSS status: path="{pkg_path}" {response}')
|
||||
return { 'error': error.get('message', 'unknown error') }
|
||||
log.debug(f'DLSS status: path="{pkg_path}" {response}')
|
||||
return response.get('result', {})
|
||||
|
||||
|
||||
def reset(pkg_path):
|
||||
log.info(f'DLSS reset: path="{pkg_path}"')
|
||||
response = c.controller.call(pkg_path, 'reset', {})
|
||||
if response.get('status') != 'ok':
|
||||
error = response.get('error') or {}
|
||||
log.error(f'DLSS: {error.get("message")}')
|
||||
return { 'error': error.get('message', 'unknown error') }
|
||||
log.info(f'DLSS reset: path="{pkg_path}" {response}')
|
||||
return response.get('result', {})
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user