add base model tags

This commit is contained in:
Pablo Hellmann
2025-08-23 21:31:07 +02:00
parent 191e36f188
commit 2146979cc4
+20 -2
View File
@@ -25,6 +25,7 @@ debug = shared.log.trace if os.environ.get('SD_EN_DEBUG', None) is not None else
debug('Trace: EN')
card_full = '''
<div class='card' onclick={card_click} title='{name}' data-page='{page}' data-name='{name}' data-filename='{filename}' data-short='{short}' data-tags='{tags}' data-mtime='{mtime}' data-size='{size}' data-search='{search}' style='--data-color: {color}'>
{base_model_box}
<div class='overlay'>
<div class='name {reference}'>{title}</div>
</div>
@@ -39,9 +40,9 @@ card_full = '''
'''
card_list = '''
<div class='card card-list' onclick={card_click} title='{name}' data-page='{page}' data-name='{name}' data-filename='{filename}' data-short='{short}' data-tags='{tags}' data-mtime='{mtime}' data-version='{version}' data-size='{size}' data-search='{search}'>
{base_model_box}
<div style='display: flex'>
<span class='details' title="Get details" onclick="showCardDetails(event)">&#x1f6c8;</span>&nbsp;
<div class='name {reference}' style='flex-flow: column'>{title}&nbsp;
<span class='details' title="Get details" onclick="showCardDetails(event)">&#x1f6c8;</span>&nbsp; <div class='name {reference}' style='flex-flow: column'>{title}&nbsp;
<div class='tags tags-list'></div>
</div>
</div>
@@ -322,6 +323,22 @@ class ExtraNetworksPage:
return '#{:02x}{:02x}{:02x}'.format(r, g, b) # pylint: disable=consider-using-f-string
try:
base_model = ''
base_model_box = ''
info = self.find_info(item.get('filename'))
item_hash = item.get('hash', None)
if info and item_hash and ('modelVersions' in info):
for version in info.get('modelVersions', []):
for file_info in version.get('files', []):
if any(h.lower().startswith(item_hash.lower()) for h in file_info.get('hashes', {}).values()):
base_model = version.get('baseModel', '')
break
if base_model:
break
if base_model:
base_model_box_style = "position: absolute; top: 4px; left: 4px; background-color: rgba(0, 0, 0, 0.8); color: white; padding: 2px 6px; border-radius: 4px; font-size: 0.7rem; z-index: 1;"
base_model_box = f"<div style='{base_model_box_style}'>{html.escape(base_model)}</div>"
onclick = f'cardClicked({item.get("prompt", None)})'
args = {
# "tabname": tabname,
@@ -344,6 +361,7 @@ class ExtraNetworksPage:
"version": item.get("version", ''),
"color": random_bright_color(),
"reference": "reference" if 'Reference' in item.get('name', '') else "",
"base_model_box": base_model_box,
}
# alias = item.get("alias", None)
# if alias is not None: