experimental sampler monkeypatch

Signed-off-by: Vladimir Mandic <mandic00@live.com>
This commit is contained in:
Vladimir Mandic
2025-08-02 07:06:34 -04:00
parent f7e433bd07
commit 461bed5720
3 changed files with 9 additions and 3 deletions
+2 -2
View File
@@ -138,10 +138,10 @@ def process_batch(p, input_files, input_dir, output_dir, inpaint_mask_dir, args)
if output_dir == '':
output_dir = shared.opts.outdir_img2img_samples
os.makedirs(output_dir, exist_ok=True)
geninfo, items = images.read_info_from_image(image)
info, items = images.read_info_from_image(image)
for k, v in items.items():
image.info[k] = v
images.save_image(image, path=output_dir, basename=basename, seed=None, prompt=None, extension=ext, info=geninfo, grid=False, pnginfo_section_name="extras", existing_info=image.info, forced_filename=forced_filename)
images.save_image(image, path=output_dir, basename=basename, seed=None, prompt=None, extension=ext, info=info, grid=False, pnginfo_section_name="extras", existing_info=image.info, forced_filename=forced_filename)
processed = scripts_manager.scripts_img2img.after(p, processed, *args)
shared.log.debug(f'Processed: images={len(batch_image_files)} memory={memory_stats()} batch')
+1 -1
View File
@@ -98,7 +98,7 @@ def create_sampler(name, model):
# validate sampler prediction type
if (model is not None) and (is_flow and not requires_flow):
shared.log.error(f'Sampler: "{sampler.name}" cls={sampler.sampler.__class__.__name__} pipe={model.__class__.__name__} model requires sampler with discrete prediction')
return restore_default(model)
# return restore_default(model)
if (model is not None) and (not is_flow and requires_flow):
shared.log.error(f'Sampler: "{sampler.name}" cls={sampler.sampler.__class__.__name__} pipe={model.__class__.__name__} model requires sampler with flow prediction')
return restore_default(model)
+6
View File
@@ -317,6 +317,12 @@ class DiffusionSampler:
self.sampler = None
return
# monkey-patch to allow sdxl pipeline to execute flowmatch samplers
if not hasattr(sampler, 'scale_model_input'):
sampler.scale_model_input = lambda x, _y: x
if not hasattr(sampler, 'init_noise_sigma'):
sampler.init_noise_sigma = 1.0
self.sampler = sampler
# shared.log.debug_log(f'Sampler: class="{self.sampler.__class__.__name__}" config={self.sampler.config}')