manbeast3b commited on
Commit
9acaa72
·
verified ·
1 Parent(s): 3f8b957

Update src/pipeline.py

Browse files
Files changed (1) hide show
  1. src/pipeline.py +21 -21
src/pipeline.py CHANGED
@@ -27,7 +27,7 @@ def load_pipeline(pipeline=None) -> StableDiffusionXLPipeline:
27
 
28
  pipeline.scheduler = SchedulerWrapper(DDIMScheduler.from_config(pipeline.scheduler.config))
29
 
30
- # pipeline = compile_pipe(pipeline)
31
  load_pipe(pipeline, dir="/home/sandbox/.cache/huggingface/hub/models--RobertML--cached-pipe-02/snapshots/58d70deae87034cce351b780b48841f9746d4ad7")
32
 
33
  for _ in range(1):
@@ -64,31 +64,31 @@ def load_pipeline(pipeline=None) -> StableDiffusionXLPipeline:
64
  return sched._step(*args, **kwargs)
65
  sched.step = step_and_preview
66
 
67
- image_preview = None
68
- @torch.no_grad()
69
- def add_final_speed_comparison(pipe, compress):
70
- if not hasattr(pipe.vae, "_decode_without_taesd_preview"):
71
- pipe.vae._decode_without_taesd_preview = pipe.vae.decode
72
- def decode_latents_and_compare_speeds(latents, *args, **kwargs):
73
- global image_preview
74
- tick_sd = time.time()
75
- res_sd = pipe.vae._decode_without_taesd_preview(latents, *args, **kwargs)[0].cpu()
76
- tock_sd = tick_taesd = time.time()
77
- latents = latents.float()
78
- res_taesd = compress(latents.mul(pipe.vae.config.scaling_factor)).mul_(2).sub_(1).cpu()
79
- tock_taesd = time.time()
80
- # Image.fromarray(latents[0, :3].mul(0.25).add(0.5).clamp(0, 1).mul(255).round().byte().permute(1, 2, 0).cpu().numpy())
81
- print(f"SD-VAE (left) takes \033[34m{tock_sd - tick_sd:.4f}s\033[0m; TAESD (right) takes \033[36m{tock_taesd - tick_taesd:.4f}s\033[0m")
82
- image_preview = torch.cat([res_sd, res_taesd], -1)
83
- return (res_sd,)
84
- pipe.vae.decode = decode_latents_and_compare_speeds
85
 
86
- add_final_speed_comparison(pipeline, instance)
87
  add_taesd_previewing(pipeline, instance)
88
  decode = pipeline(prompt="telestereography, unstrengthen, preadministrator, copatroness, hyperpersonal, paramountness, paranoid, guaniferous", output_type="pil", num_inference_steps=20,guidance_scale = 5.0).images[0]
89
  preview_images_new[0].save("../preview_images_new_1.gif", save_all=True, append_images=preview_images_new[1:], duration=100, loop=0)
90
  # preview_images_original[0].save("../preview_images_original_1.gif", save_all=True, append_images=preview_images_original[1:], duration=100, loop=0)
91
- image_preview.save("../preview_image_decoded_1.jpg")
92
 
93
  import sys
94
  sys.exit(1)
 
27
 
28
  pipeline.scheduler = SchedulerWrapper(DDIMScheduler.from_config(pipeline.scheduler.config))
29
 
30
+ pipeline = compile_pipe(pipeline)
31
  load_pipe(pipeline, dir="/home/sandbox/.cache/huggingface/hub/models--RobertML--cached-pipe-02/snapshots/58d70deae87034cce351b780b48841f9746d4ad7")
32
 
33
  for _ in range(1):
 
64
  return sched._step(*args, **kwargs)
65
  sched.step = step_and_preview
66
 
67
+ # image_preview = None
68
+ # @torch.no_grad()
69
+ # def add_final_speed_comparison(pipe, compress):
70
+ # if not hasattr(pipe.vae, "_decode_without_taesd_preview"):
71
+ # pipe.vae._decode_without_taesd_preview = pipe.vae.decode
72
+ # def decode_latents_and_compare_speeds(latents, *args, **kwargs):
73
+ # global image_preview
74
+ # tick_sd = time.time()
75
+ # res_sd = pipe.vae._decode_without_taesd_preview(latents, *args, **kwargs)[0].cpu()
76
+ # tock_sd = tick_taesd = time.time()
77
+ # latents = latents.float()
78
+ # res_taesd = compress(latents.mul(pipe.vae.config.scaling_factor)).mul_(2).sub_(1).cpu()
79
+ # tock_taesd = time.time()
80
+ # # Image.fromarray(latents[0, :3].mul(0.25).add(0.5).clamp(0, 1).mul(255).round().byte().permute(1, 2, 0).cpu().numpy())
81
+ # print(f"SD-VAE (left) takes \033[34m{tock_sd - tick_sd:.4f}s\033[0m; TAESD (right) takes \033[36m{tock_taesd - tick_taesd:.4f}s\033[0m")
82
+ # image_preview = torch.cat([res_sd, res_taesd], -1)
83
+ # return (res_sd,)
84
+ # pipe.vae.decode = decode_latents_and_compare_speeds
85
 
86
+ # add_final_speed_comparison(pipeline, instance)
87
  add_taesd_previewing(pipeline, instance)
88
  decode = pipeline(prompt="telestereography, unstrengthen, preadministrator, copatroness, hyperpersonal, paramountness, paranoid, guaniferous", output_type="pil", num_inference_steps=20,guidance_scale = 5.0).images[0]
89
  preview_images_new[0].save("../preview_images_new_1.gif", save_all=True, append_images=preview_images_new[1:], duration=100, loop=0)
90
  # preview_images_original[0].save("../preview_images_original_1.gif", save_all=True, append_images=preview_images_original[1:], duration=100, loop=0)
91
+ # image_preview.save("../preview_image_decoded_1.jpg")
92
 
93
  import sys
94
  sys.exit(1)