From dc9778b701da8eecb0b1fa96f0ead2ad0e20c593 Mon Sep 17 00:00:00 2001 From: Vladimir Mandic Date: Tue, 2 Jan 2024 08:14:17 -0500 Subject: [PATCH] rename latent sampler --- CHANGELOG.md | 4 ++-- cli/simple-txt2img.js | 2 +- extensions-builtin/sd-webui-controlnet | 2 +- html/amethyst-nightfall.jpg | Bin 0 -> 106098 bytes html/{invokeai.jpg => invoked.jpg} | Bin modules/control/run.py | 2 +- modules/img2img.py | 10 +++++----- modules/processing.py | 16 ++++++++-------- modules/processing_diffusers.py | 2 +- modules/txt2img.py | 10 +++++----- modules/ui.py | 14 +++++++------- modules/ui_control.py | 2 +- scripts/xyz_grid.py | 10 +++++----- 13 files changed, 37 insertions(+), 37 deletions(-) create mode 100644 html/amethyst-nightfall.jpg rename html/{invokeai.jpg => invoked.jpg} (100%) diff --git a/CHANGELOG.md b/CHANGELOG.md index 53061c564..18d277303 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -986,7 +986,7 @@ Actual changelog is: - original - fix hires secondary sampler - this now fully obsoletes `fallback_sampler` and `force_latent_sampler` + this now fully obsoletes `fallback_sampler` and `force_hr_sampler_name` ## Update for 2023-07-18 @@ -1026,7 +1026,7 @@ Trying to unify settings for both original and diffusers backend without introdu - renamed **hires fix** to **second pass** as that is what it actually is, name hires fix is misleading to start with - actual **hires fix** and **refiner** are now options inside **second pass** section -- obsoleted settings -> sampler -> **force_latent_sampler** +- obsoleted settings -> sampler -> **force_hr_sampler_name** it is now part of **second pass** options and it works the same for both original and diffusers backend which means you can use different scheduler settings for txt2img and hires if you want - sd-xl refiner will run if its loaded and if second pass is enabled diff --git a/cli/simple-txt2img.js b/cli/simple-txt2img.js index 34fb9a843..ae4d7af0c 100755 --- a/cli/simple-txt2img.js +++ b/cli/simple-txt2img.js @@ -28,7 +28,7 @@ const sd_options = { // second pass: hires hr_force: true, hr_second_pass_steps: 20, - latent_sampler: 'UniPC', + hr_sampler_name: 'UniPC', denoising_strength: 0.5, // second pass: refiner refiner_steps: 5, diff --git a/extensions-builtin/sd-webui-controlnet b/extensions-builtin/sd-webui-controlnet index ce3cb3de8..bd23a0ecb 160000 --- a/extensions-builtin/sd-webui-controlnet +++ b/extensions-builtin/sd-webui-controlnet @@ -1 +1 @@ -Subproject commit ce3cb3de8b038da53e6bed8a097c5ad0ebe8421f +Subproject commit bd23a0ecb63f3b4108e5518f24b0226a9fd5b5ac diff --git a/html/amethyst-nightfall.jpg b/html/amethyst-nightfall.jpg new file mode 100644 index 0000000000000000000000000000000000000000..216f2f76546f3bb4548bca9cbd2b9d1c4a5c9d57 GIT binary patch literal 106098 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 ) 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 literal 0 HcmV?d00001 diff --git a/html/invokeai.jpg b/html/invoked.jpg similarity index 100% rename from html/invokeai.jpg rename to html/invoked.jpg diff --git a/modules/control/run.py b/modules/control/run.py index cde569c41..d6d2f35d0 100644 --- a/modules/control/run.py +++ b/modules/control/run.py @@ -93,7 +93,7 @@ def control_run(units: List[unit.Unit], inputs, inits, mask, unit_type: str, is_ styles = styles, steps = steps, sampler_name = processing.get_sampler_name(sampler_index), - latent_sampler = processing.get_sampler_name(sampler_index), + hr_sampler_name = processing.get_sampler_name(sampler_index), seed = seed, subseed = subseed, subseed_strength = subseed_strength, diff --git a/modules/img2img.py b/modules/img2img.py index 66cb8d6f6..2b3e30889 100644 --- a/modules/img2img.py +++ b/modules/img2img.py @@ -114,7 +114,7 @@ def img2img(id_task: str, mode: int, init_img_inpaint, init_mask_inpaint, steps, - sampler_index, latent_index, + sampler_index, hr_sampler_index, mask_blur, mask_alpha, inpainting_fill, full_quality, restore_faces, tiling, @@ -140,7 +140,7 @@ def img2img(id_task: str, mode: int, shared.log.warning('Model not loaded') return [], '', '', 'Error: model not loaded' - debug(f'img2img: id_task={id_task}|mode={mode}|prompt={prompt}|negative_prompt={negative_prompt}|prompt_styles={prompt_styles}|init_img={init_img}|sketch={sketch}|init_img_with_mask={init_img_with_mask}|inpaint_color_sketch={inpaint_color_sketch}|inpaint_color_sketch_orig={inpaint_color_sketch_orig}|init_img_inpaint={init_img_inpaint}|init_mask_inpaint={init_mask_inpaint}|steps={steps}|sampler_index={sampler_index}|latent_index={latent_index}|mask_blur={mask_blur}|mask_alpha={mask_alpha}|inpainting_fill={inpainting_fill}|full_quality={full_quality}|restore_faces={restore_faces}|tiling={tiling}|n_iter={n_iter}|batch_size={batch_size}|cfg_scale={cfg_scale}|image_cfg_scale={image_cfg_scale}|clip_skip={clip_skip}|denoising_strength={denoising_strength}|seed={seed}|subseed{subseed}|subseed_strength={subseed_strength}|seed_resize_from_h={seed_resize_from_h}|seed_resize_from_w={seed_resize_from_w}|selected_scale_tab={selected_scale_tab}|height={height}|width={width}|scale_by={scale_by}|resize_mode={resize_mode}|resize_name={resize_name}|inpaint_full_res={inpaint_full_res}|inpaint_full_res_padding={inpaint_full_res_padding}|inpainting_mask_invert={inpainting_mask_invert}|img2img_batch_files={img2img_batch_files}|img2img_batch_input_dir={img2img_batch_input_dir}|img2img_batch_output_dir={img2img_batch_output_dir}|img2img_batch_inpaint_mask_dir={img2img_batch_inpaint_mask_dir}|override_settings_texts={override_settings_texts}') + debug(f'img2img: id_task={id_task}|mode={mode}|prompt={prompt}|negative_prompt={negative_prompt}|prompt_styles={prompt_styles}|init_img={init_img}|sketch={sketch}|init_img_with_mask={init_img_with_mask}|inpaint_color_sketch={inpaint_color_sketch}|inpaint_color_sketch_orig={inpaint_color_sketch_orig}|init_img_inpaint={init_img_inpaint}|init_mask_inpaint={init_mask_inpaint}|steps={steps}|sampler_index={sampler_index}|hr_sampler_index={hr_sampler_index}|mask_blur={mask_blur}|mask_alpha={mask_alpha}|inpainting_fill={inpainting_fill}|full_quality={full_quality}|restore_faces={restore_faces}|tiling={tiling}|n_iter={n_iter}|batch_size={batch_size}|cfg_scale={cfg_scale}|image_cfg_scale={image_cfg_scale}|clip_skip={clip_skip}|denoising_strength={denoising_strength}|seed={seed}|subseed{subseed}|subseed_strength={subseed_strength}|seed_resize_from_h={seed_resize_from_h}|seed_resize_from_w={seed_resize_from_w}|selected_scale_tab={selected_scale_tab}|height={height}|width={width}|scale_by={scale_by}|resize_mode={resize_mode}|resize_name={resize_name}|inpaint_full_res={inpaint_full_res}|inpaint_full_res_padding={inpaint_full_res_padding}|inpainting_mask_invert={inpainting_mask_invert}|img2img_batch_files={img2img_batch_files}|img2img_batch_input_dir={img2img_batch_input_dir}|img2img_batch_output_dir={img2img_batch_output_dir}|img2img_batch_inpaint_mask_dir={img2img_batch_inpaint_mask_dir}|override_settings_texts={override_settings_texts}') if mode == 5: if img2img_batch_files is None or len(img2img_batch_files) == 0: @@ -150,8 +150,8 @@ def img2img(id_task: str, mode: int, if sampler_index is None: sampler_index = 0 - if latent_index is None: - latent_index = 0 + if hr_sampler_index is None: + hr_sampler_index = 0 override_settings = create_override_settings_dict(override_settings_texts) @@ -213,7 +213,7 @@ def img2img(id_task: str, mode: int, seed_resize_from_w=seed_resize_from_w, seed_enable_extras=True, sampler_name = processing.get_sampler_name(sampler_index, img=True), - latent_sampler = processing.get_sampler_name(latent_index, img=True), + hr_sampler_name = processing.get_sampler_name(hr_sampler_index, img=True), batch_size=batch_size, n_iter=n_iter, steps=steps, diff --git a/modules/processing.py b/modules/processing.py index 53656987c..8dcef9b4f 100644 --- a/modules/processing.py +++ b/modules/processing.py @@ -135,7 +135,7 @@ class StableDiffusionProcessing: """ The first set of paramaters: sd_models -> do_not_reload_embeddings represent the minimum required to create a StableDiffusionProcessing """ - def __init__(self, sd_model=None, outpath_samples=None, outpath_grids=None, prompt: str = "", styles: List[str] = None, seed: int = -1, subseed: int = -1, subseed_strength: float = 0, seed_resize_from_h: int = -1, seed_resize_from_w: int = -1, seed_enable_extras: bool = True, sampler_name: str = None, latent_sampler: str = None, batch_size: int = 1, n_iter: int = 1, steps: int = 50, cfg_scale: float = 7.0, image_cfg_scale: float = None, clip_skip: int = 1, width: int = 512, height: int = 512, full_quality: bool = True, restore_faces: bool = False, tiling: bool = False, do_not_save_samples: bool = False, do_not_save_grid: bool = False, extra_generation_params: Dict[Any, Any] = None, overlay_images: Any = None, negative_prompt: str = None, eta: float = None, do_not_reload_embeddings: bool = False, denoising_strength: float = 0, diffusers_guidance_rescale: float = 0.7, resize_mode: int = 0, resize_name: str = 'None', scale_by: float = 0, selected_scale_tab: int = 0, hdr_clamp: bool = False, hdr_boundary: float = 4.0, hdr_threshold: float = 3.5, hdr_center: bool = False, hdr_channel_shift: float = 0.8, hdr_full_shift: float = 0.8, hdr_maximize: bool = False, hdr_max_center: float = 0.6, hdr_max_boundry: float = 1.0, override_settings: Dict[str, Any] = None, override_settings_restore_afterwards: bool = True, sampler_index: int = None, script_args: list = None): # pylint: disable=unused-argument + def __init__(self, sd_model=None, outpath_samples=None, outpath_grids=None, prompt: str = "", styles: List[str] = None, seed: int = -1, subseed: int = -1, subseed_strength: float = 0, seed_resize_from_h: int = -1, seed_resize_from_w: int = -1, seed_enable_extras: bool = True, sampler_name: str = None, hr_sampler_name: str = None, batch_size: int = 1, n_iter: int = 1, steps: int = 50, cfg_scale: float = 7.0, image_cfg_scale: float = None, clip_skip: int = 1, width: int = 512, height: int = 512, full_quality: bool = True, restore_faces: bool = False, tiling: bool = False, do_not_save_samples: bool = False, do_not_save_grid: bool = False, extra_generation_params: Dict[Any, Any] = None, overlay_images: Any = None, negative_prompt: str = None, eta: float = None, do_not_reload_embeddings: bool = False, denoising_strength: float = 0, diffusers_guidance_rescale: float = 0.7, resize_mode: int = 0, resize_name: str = 'None', scale_by: float = 0, selected_scale_tab: int = 0, hdr_clamp: bool = False, hdr_boundary: float = 4.0, hdr_threshold: float = 3.5, hdr_center: bool = False, hdr_channel_shift: float = 0.8, hdr_full_shift: float = 0.8, hdr_maximize: bool = False, hdr_max_center: float = 0.6, hdr_max_boundry: float = 1.0, override_settings: Dict[str, Any] = None, override_settings_restore_afterwards: bool = True, sampler_index: int = None, script_args: list = None): # pylint: disable=unused-argument self.outpath_samples: str = outpath_samples self.outpath_grids: str = outpath_grids self.prompt: str = prompt @@ -148,7 +148,7 @@ class StableDiffusionProcessing: self.seed_resize_from_h: int = seed_resize_from_h self.seed_resize_from_w: int = seed_resize_from_w self.sampler_name: str = sampler_name - self.latent_sampler: str = latent_sampler + self.hr_sampler_name: str = hr_sampler_name self.batch_size: int = batch_size self.n_iter: int = n_iter self.steps: int = steps @@ -633,7 +633,7 @@ def create_infotext(p: StableDiffusionProcessing, all_prompts=None, all_seeds=No args["Hires resize"] = f"{p.hr_resize_x}x{p.hr_resize_y}" args["Hires size"] = f"{p.hr_upscale_to_x}x{p.hr_upscale_to_y}" args["Denoising strength"] = p.denoising_strength - args["Latent sampler"] = p.latent_sampler + args["Hires sampler"] = p.hr_sampler_name args["Image CFG scale"] = p.image_cfg_scale args["CFG rescale"] = p.diffusers_guidance_rescale if 'refine' in p.ops: @@ -643,7 +643,7 @@ def create_infotext(p: StableDiffusionProcessing, all_prompts=None, all_seeds=No args['Refiner steps'] = p.refiner_steps args['Refiner start'] = p.refiner_start args["Hires steps"] = p.hr_second_pass_steps - args["Latent sampler"] = p.latent_sampler + args["Hires sampler"] = p.hr_sampler_name args["CFG rescale"] = p.diffusers_guidance_rescale if 'img2img' in p.ops or 'inpaint' in p.ops: args["Init image size"] = f"{getattr(p, 'init_img_width', 0)}x{getattr(p, 'init_img_height', 0)}" @@ -1129,7 +1129,7 @@ class StableDiffusionProcessingTxt2Img(StableDiffusionProcessing): self.is_hr_pass = True hypertile_set(self, hr=True) shared.state.job_count = 2 * self.n_iter - shared.log.debug(f'Init hires: upscaler="{self.hr_upscaler}" sampler="{self.latent_sampler}" resize={self.hr_resize_x}x{self.hr_resize_y} upscale={self.hr_upscale_to_x}x{self.hr_upscale_to_y}') + shared.log.debug(f'Init hires: upscaler="{self.hr_upscaler}" sampler="{self.hr_sampler_name}" resize={self.hr_resize_x}x{self.hr_resize_y} upscale={self.hr_upscale_to_x}x{self.hr_upscale_to_y}') def sample(self, conditioning, unconditional_conditioning, seeds, subseeds, subseed_strength, prompts): @@ -1198,14 +1198,14 @@ class StableDiffusionProcessingTxt2Img(StableDiffusionProcessing): image_conditioning = self.img2img_image_conditioning(decode_first_stage(self.sd_model, samples.to(dtype=devices.dtype_vae), self.full_quality), samples) else: image_conditioning = self.txt2img_image_conditioning(samples.to(dtype=devices.dtype_vae)) - if self.latent_sampler == "PLMS": - self.latent_sampler = 'UniPC' + if self.hr_sampler_name == "PLMS": + self.hr_sampler_name = 'UniPC' if self.hr_force or latent_scale_mode is not None: shared.state.job = 'hires' if self.denoising_strength > 0: self.ops.append('hires') devices.torch_gc() # GC now before running the next img2img to prevent running out of memory - self.sampler = modules.sd_samplers.create_sampler(self.latent_sampler or self.sampler_name, self.sd_model) + self.sampler = modules.sd_samplers.create_sampler(self.hr_sampler_name or self.sampler_name, self.sd_model) if hasattr(self.sampler, "initialize"): self.sampler.initialize(self) samples = samples[:, :, self.truncate_y//2:samples.shape[2]-(self.truncate_y+1)//2, self.truncate_x//2:samples.shape[3]-(self.truncate_x+1)//2] diff --git a/modules/processing_diffusers.py b/modules/processing_diffusers.py index fb797faff..521c710e2 100644 --- a/modules/processing_diffusers.py +++ b/modules/processing_diffusers.py @@ -357,7 +357,7 @@ def process_diffusers(p: StableDiffusionProcessing): devices.torch_gc(force=True) def update_sampler(sd_model, second_pass=False): - sampler_selection = p.latent_sampler if second_pass else p.sampler_name + sampler_selection = p.hr_sampler_name if second_pass else p.sampler_name if sd_model.__class__.__name__ in ['AmusedPipeline']: return # models with their own schedulers if hasattr(sd_model, 'scheduler') and sampler_selection != 'Default': diff --git a/modules/txt2img.py b/modules/txt2img.py index 98004c492..5f88cb74c 100644 --- a/modules/txt2img.py +++ b/modules/txt2img.py @@ -11,7 +11,7 @@ debug('Trace: PROCESS') def txt2img(id_task, prompt, negative_prompt, prompt_styles, - steps, sampler_index, latent_index, + steps, sampler_index, hr_sampler_index, full_quality, restore_faces, tiling, n_iter, batch_size, cfg_scale, image_cfg_scale, diffusers_guidance_rescale, @@ -25,7 +25,7 @@ def txt2img(id_task, override_settings_texts, *args): - debug(f'txt2img: id_task={id_task}|prompt={prompt}|negative={negative_prompt}|styles={prompt_styles}|steps={steps}|sampler_index={sampler_index}|latent_index={latent_index}|full_quality={full_quality}|restore_faces={restore_faces}|tiling={tiling}|batch_count={n_iter}|batch_size={batch_size}|cfg_scale={cfg_scale}|clip_skip={clip_skip}|seed={seed}|subseed={subseed}|subseed_strength={subseed_strength}|seed_resize_from_h={seed_resize_from_h}|seed_resize_from_w={seed_resize_from_w}|height={height}|width={width}|enable_hr={enable_hr}|denoising_strength={denoising_strength}|hr_scale={hr_scale}|hr_upscaler={hr_upscaler}|hr_force={hr_force}|hr_second_pass_steps={hr_second_pass_steps}|hr_resize_x={hr_resize_x}|hr_resize_y={hr_resize_y}|image_cfg_scale={image_cfg_scale}|diffusers_guidance_rescale={diffusers_guidance_rescale}|refiner_steps={refiner_steps}|refiner_start={refiner_start}|refiner_prompt={refiner_prompt}|refiner_negative={refiner_negative}|override_settings={override_settings_texts}') + debug(f'txt2img: id_task={id_task}|prompt={prompt}|negative={negative_prompt}|styles={prompt_styles}|steps={steps}|sampler_index={sampler_index}|hr_sampler_index={hr_sampler_index}|full_quality={full_quality}|restore_faces={restore_faces}|tiling={tiling}|batch_count={n_iter}|batch_size={batch_size}|cfg_scale={cfg_scale}|clip_skip={clip_skip}|seed={seed}|subseed={subseed}|subseed_strength={subseed_strength}|seed_resize_from_h={seed_resize_from_h}|seed_resize_from_w={seed_resize_from_w}|height={height}|width={width}|enable_hr={enable_hr}|denoising_strength={denoising_strength}|hr_scale={hr_scale}|hr_upscaler={hr_upscaler}|hr_force={hr_force}|hr_second_pass_steps={hr_second_pass_steps}|hr_resize_x={hr_resize_x}|hr_resize_y={hr_resize_y}|image_cfg_scale={image_cfg_scale}|diffusers_guidance_rescale={diffusers_guidance_rescale}|refiner_steps={refiner_steps}|refiner_start={refiner_start}|refiner_prompt={refiner_prompt}|refiner_negative={refiner_negative}|override_settings={override_settings_texts}') if shared.sd_model is None: shared.log.warning('Model not loaded') @@ -34,8 +34,8 @@ def txt2img(id_task, override_settings = create_override_settings_dict(override_settings_texts) if sampler_index is None: sampler_index = 0 - if latent_index is None: - latent_index = 0 + if hr_sampler_index is None: + hr_sampler_index = 0 p = processing.StableDiffusionProcessingTxt2Img( sd_model=shared.sd_model, @@ -51,7 +51,7 @@ def txt2img(id_task, seed_resize_from_w=seed_resize_from_w, seed_enable_extras=True, sampler_name = processing.get_sampler_name(sampler_index), - latent_sampler = processing.get_sampler_name(latent_index), + hr_sampler_name = processing.get_sampler_name(hr_sampler_index), batch_size=batch_size, n_iter=n_iter, steps=steps, diff --git a/modules/ui.py b/modules/ui.py index 12324ff4a..363387bb7 100644 --- a/modules/ui.py +++ b/modules/ui.py @@ -465,7 +465,7 @@ def create_hires_inputs(tab): with FormRow(elem_id=f"{tab}_hires_row1"): enable_hr = gr.Checkbox(label='Enable second pass', value=False, elem_id=f"{tab}_enable_hr") with FormRow(elem_id=f"{tab}_hires_row2"): - latent_index = gr.Dropdown(label='Secondary sampler', elem_id=f"{tab}_sampling_alt", choices=[x.name for x in modules.sd_samplers.samplers], value='Default', type="index") + hr_sampler_index = gr.Dropdown(label='Secondary sampler', elem_id=f"{tab}_sampling_alt", choices=[x.name for x in modules.sd_samplers.samplers], value='Default', type="index") denoising_strength = gr.Slider(minimum=0.0, maximum=0.99, step=0.01, label='Denoising strength', value=0.5, elem_id=f"{tab}_denoising_strength") with FormRow(elem_id=f"{tab}_hires_finalres", variant="compact"): hr_final_resolution = FormHTML(value="", elem_id=f"{tab}_hr_finalres", label="Upscaled resolution", interactive=False) @@ -486,7 +486,7 @@ def create_hires_inputs(tab): refiner_prompt = gr.Textbox(value='', label='Secondary prompt', elem_id=f"{tab}_refiner_prompt") with FormRow(elem_id="txt2img_refiner_row4", variant="compact"): refiner_negative = gr.Textbox(value='', label='Secondary negative prompt', elem_id=f"{tab}_refiner_neg_prompt") - return enable_hr, latent_index, denoising_strength, hr_final_resolution, hr_upscaler, hr_force, hr_second_pass_steps, hr_scale, hr_resize_x, hr_resize_y, refiner_steps, refiner_start, refiner_prompt, refiner_negative + return enable_hr, hr_sampler_index, denoising_strength, hr_final_resolution, hr_upscaler, hr_force, hr_second_pass_steps, hr_scale, hr_resize_x, hr_resize_y, refiner_steps, refiner_start, refiner_prompt, refiner_negative def get_value_for_setting(key): @@ -543,7 +543,7 @@ def create_ui(startup_timer = None): batch_count, batch_size = create_batch_inputs('txt2img') seed, reuse_seed, subseed, reuse_subseed, subseed_strength, seed_resize_from_h, seed_resize_from_w = create_seed_inputs('txt2img') cfg_scale, clip_skip, image_cfg_scale, diffusers_guidance_rescale, full_quality, restore_faces, tiling, hdr_clamp, hdr_boundary, hdr_threshold, hdr_center, hdr_channel_shift, hdr_full_shift, hdr_maximize, hdr_max_center, hdr_max_boundry = create_advanced_inputs('txt2img') - enable_hr, latent_index, denoising_strength, hr_final_resolution, hr_upscaler, hr_force, hr_second_pass_steps, hr_scale, hr_resize_x, hr_resize_y, refiner_steps, refiner_start, refiner_prompt, refiner_negative = create_hires_inputs('txt2img') + enable_hr, hr_sampler_index, denoising_strength, hr_final_resolution, hr_upscaler, hr_force, hr_second_pass_steps, hr_scale, hr_resize_x, hr_resize_y, refiner_steps, refiner_start, refiner_prompt, refiner_negative = create_hires_inputs('txt2img') override_settings = create_override_inputs('txt2img') txt2img_script_inputs = modules.scripts.scripts_txt2img.setup_ui() @@ -567,7 +567,7 @@ def create_ui(startup_timer = None): txt2img_args = [ dummy_component, txt2img_prompt, txt2img_negative_prompt, txt2img_prompt_styles, - steps, sampler_index, latent_index, + steps, sampler_index, hr_sampler_index, full_quality, restore_faces, tiling, batch_count, batch_size, cfg_scale, image_cfg_scale, diffusers_guidance_rescale, @@ -623,7 +623,7 @@ def create_ui(startup_timer = None): (tiling, "Tiling"), # second pass (enable_hr, "Second pass"), - (latent_index, "Latent sampler"), + (hr_sampler_index, "Hires sampler"), (denoising_strength, "Denoising strength"), (hr_upscaler, "Hires upscaler"), (hr_force, "Hires force"), @@ -794,7 +794,7 @@ def create_ui(startup_timer = None): init_img_inpaint, init_mask_inpaint, steps, - sampler_index, latent_index, + sampler_index, hr_sampler_index, mask_blur, mask_alpha, inpainting_fill, full_quality, restore_faces, tiling, @@ -1025,8 +1025,8 @@ def create_ui(startup_timer = None): shared.log.warning("OpenVINO: Setting backend to Diffusers") shared.opts.sd_backend = "diffusers" try: - opts.save(shared.config_filename) if len(changed) > 0: + opts.save(shared.config_filename) log.info(f'Settings: changed={len(changed)} {changed}') except RuntimeError: log.error(f'Settings failed: change={len(changed)} {changed}') diff --git a/modules/ui_control.py b/modules/ui_control.py index 42aab6457..1d547bfb5 100644 --- a/modules/ui_control.py +++ b/modules/ui_control.py @@ -355,7 +355,7 @@ def create_ui(_blocks: gr.Blocks=None): input_mode = gr.Label(value='select', visible=False) input_image = gr.Image(label="Input", show_label=False, type="pil", source="upload", interactive=True, tool="editor", height=gr_height, visible=True, image_mode='RGB', elem_id='control_input_select') input_resize = gr.Image(label="Input", show_label=False, type="pil", source="upload", interactive=True, tool="select", height=gr_height, visible=False, image_mode='RGB', elem_id='control_input_resize') - input_inpaint = gr.Image(label="Input", show_label=False, type="pil", source="upload", interactive=True, tool="sketch", height=gr_height, visible=False, image_mode='RGB', elem_id='control_input_inpaint') + input_inpaint = gr.Image(label="Input", show_label=False, type="pil", source="upload", interactive=True, tool="sketch", height=gr_height, visible=False, image_mode='RGB', elem_id='control_input_inpaint', brush_radius=64, mask_opacity=0.6) with gr.Row(): input_buttons = [gr.Button('Select', visible=True, interactive=False), gr.Button('Inpaint', visible=True, interactive=True), gr.Button('Outpaint', visible=True, interactive=True)] with gr.Tab('Video', id='in-video') as tab_video: diff --git a/scripts/xyz_grid.py b/scripts/xyz_grid.py index f6fc5d553..d51494e2a 100644 --- a/scripts/xyz_grid.py +++ b/scripts/xyz_grid.py @@ -62,12 +62,12 @@ def apply_sampler(p, x, xs): else: p.sampler_name = sampler_name -def apply_latent_sampler(p, x, xs): - latent_sampler = sd_samplers.samplers_map.get(x.lower(), None) - if latent_sampler is None: +def apply_hr_sampler_name(p, x, xs): + hr_sampler_name = sd_samplers.samplers_map.get(x.lower(), None) + if hr_sampler_name is None: shared.log.warning(f"XYZ grid: unknown sampler: {x}") else: - p.latent_sampler = latent_sampler + p.hr_sampler_name = hr_sampler_name def confirm_samplers(p, xs): for x in xs: @@ -249,7 +249,7 @@ axis_options = [ AxisOption("[Sampler] ETA", float, apply_field("eta")), AxisOption("[Sampler] Solver order", int, apply_setting("schedulers_solver_order")), AxisOption("[Second pass] Upscaler", str, apply_field("hr_upscaler"), choices=lambda: [*shared.latent_upscale_modes, *[x.name for x in shared.sd_upscalers]]), - AxisOption("[Second pass] Sampler", str, apply_latent_sampler, fmt=format_value, confirm=confirm_samplers, choices=lambda: [x.name for x in sd_samplers.samplers]), + AxisOption("[Second pass] Sampler", str, apply_hr_sampler_name, fmt=format_value, confirm=confirm_samplers, choices=lambda: [x.name for x in sd_samplers.samplers]), AxisOption("[Second pass] Denoising Strength", float, apply_field("denoising_strength")), AxisOption("[Second pass] Hires steps", int, apply_field("hr_second_pass_steps")), AxisOption("[Second pass] CFG scale", float, apply_field("image_cfg_scale")),