mirror of
https://github.com/vladmandic/automatic
synced 2026-09-20 01:31:13 +02:00
experimental sampler monkeypatch
Signed-off-by: Vladimir Mandic <mandic00@live.com>
This commit is contained in:
+2
-2
@@ -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')
|
||||
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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}')
|
||||
|
||||
Reference in New Issue
Block a user