Commit a9e97997 authored by Artem Zagidulin's avatar Artem Zagidulin
Browse files

process_one

parent 172c4bc0
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -509,6 +509,9 @@ def process_images_inner(p: StableDiffusionProcessing) -> Processed:
            if len(prompts) == 0:
                break

            if p.scripts is not None:
                p.scripts.process_one(p)

            with devices.autocast():
                uc = prompt_parser.get_learned_conditioning(shared.sd_model, len(prompts) * [p.negative_prompt], p.steps)
                c = prompt_parser.get_multicond_learned_conditioning(shared.sd_model, prompts, p.steps)
+16 −0
Original line number Diff line number Diff line
@@ -70,6 +70,13 @@ class Script:

        pass

    def process_one(self, p, *args):
        """
        Same as process(), but called for every iteration
        """

        pass

    def postprocess(self, p, processed, *args):
        """
        This function is called after processing ends for AlwaysVisible scripts.
@@ -294,6 +301,15 @@ class ScriptRunner:
                print(f"Error running process: {script.filename}", file=sys.stderr)
                print(traceback.format_exc(), file=sys.stderr)

    def process_one(self, p):
        for script in self.alwayson_scripts:
            try:
                script_args = p.script_args[script.args_from:script.args_to]
                script.process_one(p, *script_args)
            except Exception:
                print(f"Error running process_one: {script.filename}", file=sys.stderr)
                print(traceback.format_exc(), file=sys.stderr)

    def postprocess(self, p, processed):
        for script in self.alwayson_scripts:
            try: