[Request] Make PromptWriter add Template data as a newline
thecakeisal1e opened this issue · comments
Mostly this is a request so that webui's infotext_utils.parse_generation_parameters can return res["Template"] and can be added quickly to img2img to use Template instead of Prompt. I'm unsure if it's the PromptWriter class or pnginfo_saver.strip_template_info adding the generation params to the resultant PNG but this would probably be a convenient.
Actually, it's probably easier to make edits to stable diffusion...
For anyone who is looking to apply the Template previously used to gen a picture with dynamic prompts, edit lines 100-108 of modules/img2img.py to the following:
parsed_parameters = parse_generation_parameters(geninfo) png_info_props.append("Template") # Add Template support png_info_props.append("Negative Template") parsed_parameters = {k: v for k, v in parsed_parameters.items() if k in (png_info_props or {})} except Exception: parsed_parameters = {} if "Template" in parsed_parameters and parsed_parameters["Template"] is not None: # Add support for Template inputs p.prompt = (" " + parsed_parameters["Template"]) else: p.prompt = prompt + (" " + parsed_parameters["Prompt"] if "Prompt" in parsed_parameters else "")
and add to modules/infotext_utils.py at line 261
line = line[16:].strip() before_keyword, sep, after_keyword = line.partition("Negative Template:") if sep: res["Negative Template"] = after_keyword else: before_keyword, sep, after_keyword = res["Negative Template"].partition("Template:") if sep: res["Template"] = after_keyword else: print("Input image doesn't have template data.") res["Negative Template"] = " " res["Template"] = " "