Unverified Commit 035f2af0 authored by catboxanon's avatar catboxanon Committed by GitHub
Browse files

Merge branch 'AUTOMATIC1111:master' into fix/alternating-words-emphasis

parents 7e45fba5 45a8b758
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -151,6 +151,7 @@ function showGalleryImage() {
                    e.addEventListener('mousedown', function (evt) {
                        if(!opts.js_modal_lightbox || evt.button != 0) return;
                        modalZoomSet(gradioApp().getElementById('modalImage'), opts.js_modal_lightbox_initially_zoomed)
                        evt.preventDefault()
                        showModal(evt)
                    }, true);
                }
+29 −1
Original line number Diff line number Diff line
@@ -3,6 +3,7 @@ import math
import os
import sys
import traceback
import shutil

import numpy as np
from PIL import Image
@@ -248,7 +249,32 @@ def run_pnginfo(image):
    return '', geninfo, info


def run_modelmerger(primary_model_name, secondary_model_name, tertiary_model_name, interp_method, multiplier, save_as_half, custom_name, checkpoint_format):
def create_config(ckpt_result, config_source, a, b, c):
    def config(x):
        return sd_models.find_checkpoint_config(x) if x else None

    if config_source == 0:
        cfg = config(a) or config(b) or config(c)
    elif config_source == 1:
        cfg = config(b)
    elif config_source == 2:
        cfg = config(c)
    else:
        cfg = None

    if cfg is None:
        return

    filename, _ = os.path.splitext(ckpt_result)
    checkpoint_filename = filename + ".yaml"

    print("Copying config:")
    print("   from:", cfg)
    print("     to:", checkpoint_filename)
    shutil.copyfile(cfg, checkpoint_filename)


def run_modelmerger(primary_model_name, secondary_model_name, tertiary_model_name, interp_method, multiplier, save_as_half, custom_name, checkpoint_format, config_source):
    shared.state.begin()
    shared.state.job = 'model-merge'

@@ -356,6 +382,8 @@ def run_modelmerger(primary_model_name, secondary_model_name, tertiary_model_nam

    sd_models.list_models()

    create_config(output_modelname, config_source, primary_model_info, secondary_model_info, tertiary_model_info)

    print("Checkpoint saved.")
    shared.state.textinfo = "Checkpoint saved to " + output_modelname
    shared.state.end()
+3 −3
Original line number Diff line number Diff line
@@ -152,7 +152,7 @@ def basedir():

scripts_data = []
ScriptFile = namedtuple("ScriptFile", ["basedir", "filename", "path"])
ScriptClassData = namedtuple("ScriptClassData", ["script_class", "path", "basedir"])
ScriptClassData = namedtuple("ScriptClassData", ["script_class", "path", "basedir", "module"])


def list_scripts(scriptdirname, extension):
@@ -206,7 +206,7 @@ def load_scripts():

            for key, script_class in module.__dict__.items():
                if type(script_class) == type and issubclass(script_class, Script):
                    scripts_data.append(ScriptClassData(script_class, scriptfile.path, scriptfile.basedir))
                    scripts_data.append(ScriptClassData(script_class, scriptfile.path, scriptfile.basedir, module))

        except Exception:
            print(f"Error loading script: {scriptfile.filename}", file=sys.stderr)
@@ -241,7 +241,7 @@ class ScriptRunner:
        self.alwayson_scripts.clear()
        self.selectable_scripts.clear()

        for script_class, path, basedir in scripts_data:
        for script_class, path, basedir, script_module in scripts_data:
            script = script_class()
            script.filename = path
            script.is_txt2img = not is_img2img
+4 −0
Original line number Diff line number Diff line
@@ -333,10 +333,14 @@ def load_model(checkpoint_info=None):

    timer = Timer()

    sd_model = None
    try:
        with sd_disable_initialization.DisableInitialization():
            sd_model = instantiate_from_config(sd_config.model)
    except Exception as e:
        pass

    if sd_model is None:
        print('Failed to create model quickly; will retry using slow method.', file=sys.stderr)
        sd_model = instantiate_from_config(sd_config.model)

+3 −0
Original line number Diff line number Diff line
@@ -9,6 +9,7 @@ import tqdm
import html
import datetime
import csv
import safetensors.torch

from PIL import Image, PngImagePlugin

@@ -150,6 +151,8 @@ class EmbeddingDatabase:
                name = data.get('name', name)
        elif ext in ['.BIN', '.PT']:
            data = torch.load(path, map_location="cpu")
        elif ext in ['.SAFETENSORS']:
            data = safetensors.torch.load_file(path, device="cpu")
        else:
            return

Loading