diffusers 0.27.1__py3-none-any.whl → 0.27.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (25) hide show
  1. diffusers/__init__.py +1 -1
  2. diffusers/models/unets/unet_2d_condition.py +1 -0
  3. diffusers/pipelines/deprecated/stable_diffusion_variants/pipeline_stable_diffusion_inpaint_legacy.py +0 -3
  4. diffusers/pipelines/stable_cascade/pipeline_stable_cascade.py +18 -4
  5. diffusers/pipelines/stable_diffusion_diffedit/pipeline_stable_diffusion_diffedit.py +0 -3
  6. diffusers/schedulers/scheduling_consistency_models.py +4 -0
  7. diffusers/schedulers/scheduling_deis_multistep.py +5 -1
  8. diffusers/schedulers/scheduling_dpmsolver_multistep.py +5 -1
  9. diffusers/schedulers/scheduling_dpmsolver_sde.py +4 -0
  10. diffusers/schedulers/scheduling_dpmsolver_singlestep.py +5 -1
  11. diffusers/schedulers/scheduling_edm_dpmsolver_multistep.py +4 -0
  12. diffusers/schedulers/scheduling_edm_euler.py +4 -0
  13. diffusers/schedulers/scheduling_euler_ancestral_discrete.py +4 -0
  14. diffusers/schedulers/scheduling_euler_discrete.py +4 -0
  15. diffusers/schedulers/scheduling_heun_discrete.py +4 -0
  16. diffusers/schedulers/scheduling_k_dpm_2_ancestral_discrete.py +4 -0
  17. diffusers/schedulers/scheduling_k_dpm_2_discrete.py +4 -0
  18. diffusers/schedulers/scheduling_lms_discrete.py +4 -0
  19. diffusers/schedulers/scheduling_unipc_multistep.py +5 -1
  20. {diffusers-0.27.1.dist-info → diffusers-0.27.2.dist-info}/METADATA +44 -44
  21. {diffusers-0.27.1.dist-info → diffusers-0.27.2.dist-info}/RECORD +25 -25
  22. {diffusers-0.27.1.dist-info → diffusers-0.27.2.dist-info}/WHEEL +1 -1
  23. {diffusers-0.27.1.dist-info → diffusers-0.27.2.dist-info}/LICENSE +0 -0
  24. {diffusers-0.27.1.dist-info → diffusers-0.27.2.dist-info}/entry_points.txt +0 -0
  25. {diffusers-0.27.1.dist-info → diffusers-0.27.2.dist-info}/top_level.txt +0 -0
diffusers/__init__.py CHANGED
@@ -1,4 +1,4 @@
1
- __version__ = "0.27.1"
1
+ __version__ = "0.27.2"
2
2
 
3
3
  from typing import TYPE_CHECKING
4
4
 
@@ -1178,6 +1178,7 @@ class UNet2DConditionModel(ModelMixin, ConfigMixin, UNet2DConditionLoadersMixin,
1178
1178
  # we're popping the `scale` instead of getting it because otherwise `scale` will be propagated
1179
1179
  # to the internal blocks and will raise deprecation warnings. this will be confusing for our users.
1180
1180
  if cross_attention_kwargs is not None:
1181
+ cross_attention_kwargs = cross_attention_kwargs.copy()
1181
1182
  lora_scale = cross_attention_kwargs.pop("scale", 1.0)
1182
1183
  else:
1183
1184
  lora_scale = 1.0
@@ -528,15 +528,12 @@ class StableDiffusionInpaintPipelineLegacy(
528
528
  f" {negative_prompt_embeds.shape}."
529
529
  )
530
530
 
531
- # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion_img2img.StableDiffusionImg2ImgPipeline.get_timesteps
532
531
  def get_timesteps(self, num_inference_steps, strength, device):
533
532
  # get the original timestep using init_timestep
534
533
  init_timestep = min(int(num_inference_steps * strength), num_inference_steps)
535
534
 
536
535
  t_start = max(num_inference_steps - init_timestep, 0)
537
536
  timesteps = self.scheduler.timesteps[t_start * self.scheduler.order :]
538
- if hasattr(self.scheduler, "set_begin_index"):
539
- self.scheduler.set_begin_index(t_start * self.scheduler.order)
540
537
 
541
538
  return timesteps, num_inference_steps - t_start
542
539
 
@@ -100,8 +100,10 @@ class StableCascadeDecoderPipeline(DiffusionPipeline):
100
100
  )
101
101
  self.register_to_config(latent_dim_scale=latent_dim_scale)
102
102
 
103
- def prepare_latents(self, image_embeddings, num_images_per_prompt, dtype, device, generator, latents, scheduler):
104
- batch_size, channels, height, width = image_embeddings.shape
103
+ def prepare_latents(
104
+ self, batch_size, image_embeddings, num_images_per_prompt, dtype, device, generator, latents, scheduler
105
+ ):
106
+ _, channels, height, width = image_embeddings.shape
105
107
  latents_shape = (
106
108
  batch_size * num_images_per_prompt,
107
109
  4,
@@ -383,7 +385,19 @@ class StableCascadeDecoderPipeline(DiffusionPipeline):
383
385
  )
384
386
  if isinstance(image_embeddings, list):
385
387
  image_embeddings = torch.cat(image_embeddings, dim=0)
386
- batch_size = image_embeddings.shape[0]
388
+
389
+ if prompt is not None and isinstance(prompt, str):
390
+ batch_size = 1
391
+ elif prompt is not None and isinstance(prompt, list):
392
+ batch_size = len(prompt)
393
+ else:
394
+ batch_size = prompt_embeds.shape[0]
395
+
396
+ # Compute the effective number of images per prompt
397
+ # We must account for the fact that the image embeddings from the prior can be generated with num_images_per_prompt > 1
398
+ # This results in a case where a single prompt is associated with multiple image embeddings
399
+ # Divide the number of image embeddings by the batch size to determine if this is the case.
400
+ num_images_per_prompt = num_images_per_prompt * (image_embeddings.shape[0] // batch_size)
387
401
 
388
402
  # 2. Encode caption
389
403
  if prompt_embeds is None and negative_prompt_embeds is None:
@@ -417,7 +431,7 @@ class StableCascadeDecoderPipeline(DiffusionPipeline):
417
431
 
418
432
  # 5. Prepare latents
419
433
  latents = self.prepare_latents(
420
- image_embeddings, num_images_per_prompt, dtype, device, generator, latents, self.scheduler
434
+ batch_size, image_embeddings, num_images_per_prompt, dtype, device, generator, latents, self.scheduler
421
435
  )
422
436
 
423
437
  # 6. Run denoising loop
@@ -716,15 +716,12 @@ class StableDiffusionDiffEditPipeline(
716
716
  f" `source_negative_prompt_embeds` {source_negative_prompt_embeds.shape}."
717
717
  )
718
718
 
719
- # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion_img2img.StableDiffusionImg2ImgPipeline.get_timesteps
720
719
  def get_timesteps(self, num_inference_steps, strength, device):
721
720
  # get the original timestep using init_timestep
722
721
  init_timestep = min(int(num_inference_steps * strength), num_inference_steps)
723
722
 
724
723
  t_start = max(num_inference_steps - init_timestep, 0)
725
724
  timesteps = self.scheduler.timesteps[t_start * self.scheduler.order :]
726
- if hasattr(self.scheduler, "set_begin_index"):
727
- self.scheduler.set_begin_index(t_start * self.scheduler.order)
728
725
 
729
726
  return timesteps, num_inference_steps - t_start
730
727
 
@@ -434,7 +434,11 @@ class CMStochasticIterativeScheduler(SchedulerMixin, ConfigMixin):
434
434
  # self.begin_index is None when scheduler is used for training, or pipeline does not implement set_begin_index
435
435
  if self.begin_index is None:
436
436
  step_indices = [self.index_for_timestep(t, schedule_timesteps) for t in timesteps]
437
+ elif self.step_index is not None:
438
+ # add_noise is called after first denoising step (for inpainting)
439
+ step_indices = [self.step_index] * timesteps.shape[0]
437
440
  else:
441
+ # add noise is called bevore first denoising step to create inital latent(img2img)
438
442
  step_indices = [self.begin_index] * timesteps.shape[0]
439
443
 
440
444
  sigma = sigmas[step_indices].flatten()
@@ -768,10 +768,14 @@ class DEISMultistepScheduler(SchedulerMixin, ConfigMixin):
768
768
  schedule_timesteps = self.timesteps.to(original_samples.device)
769
769
  timesteps = timesteps.to(original_samples.device)
770
770
 
771
- # begin_index is None when the scheduler is used for training
771
+ # begin_index is None when the scheduler is used for training or pipeline does not implement set_begin_index
772
772
  if self.begin_index is None:
773
773
  step_indices = [self.index_for_timestep(t, schedule_timesteps) for t in timesteps]
774
+ elif self.step_index is not None:
775
+ # add_noise is called after first denoising step (for inpainting)
776
+ step_indices = [self.step_index] * timesteps.shape[0]
774
777
  else:
778
+ # add noise is called bevore first denoising step to create inital latent(img2img)
775
779
  step_indices = [self.begin_index] * timesteps.shape[0]
776
780
 
777
781
  sigma = sigmas[step_indices].flatten()
@@ -1011,10 +1011,14 @@ class DPMSolverMultistepScheduler(SchedulerMixin, ConfigMixin):
1011
1011
  schedule_timesteps = self.timesteps.to(original_samples.device)
1012
1012
  timesteps = timesteps.to(original_samples.device)
1013
1013
 
1014
- # begin_index is None when the scheduler is used for training
1014
+ # begin_index is None when the scheduler is used for training or pipeline does not implement set_begin_index
1015
1015
  if self.begin_index is None:
1016
1016
  step_indices = [self.index_for_timestep(t, schedule_timesteps) for t in timesteps]
1017
+ elif self.step_index is not None:
1018
+ # add_noise is called after first denoising step (for inpainting)
1019
+ step_indices = [self.step_index] * timesteps.shape[0]
1017
1020
  else:
1021
+ # add noise is called bevore first denoising step to create inital latent(img2img)
1018
1022
  step_indices = [self.begin_index] * timesteps.shape[0]
1019
1023
 
1020
1024
  sigma = sigmas[step_indices].flatten()
@@ -543,7 +543,11 @@ class DPMSolverSDEScheduler(SchedulerMixin, ConfigMixin):
543
543
  # self.begin_index is None when scheduler is used for training, or pipeline does not implement set_begin_index
544
544
  if self.begin_index is None:
545
545
  step_indices = [self.index_for_timestep(t, schedule_timesteps) for t in timesteps]
546
+ elif self.step_index is not None:
547
+ # add_noise is called after first denoising step (for inpainting)
548
+ step_indices = [self.step_index] * timesteps.shape[0]
546
549
  else:
550
+ # add noise is called bevore first denoising step to create inital latent(img2img)
547
551
  step_indices = [self.begin_index] * timesteps.shape[0]
548
552
 
549
553
  sigma = sigmas[step_indices].flatten()
@@ -961,10 +961,14 @@ class DPMSolverSinglestepScheduler(SchedulerMixin, ConfigMixin):
961
961
  schedule_timesteps = self.timesteps.to(original_samples.device)
962
962
  timesteps = timesteps.to(original_samples.device)
963
963
 
964
- # begin_index is None when the scheduler is used for training
964
+ # begin_index is None when the scheduler is used for training or pipeline does not implement set_begin_index
965
965
  if self.begin_index is None:
966
966
  step_indices = [self.index_for_timestep(t, schedule_timesteps) for t in timesteps]
967
+ elif self.step_index is not None:
968
+ # add_noise is called after first denoising step (for inpainting)
969
+ step_indices = [self.step_index] * timesteps.shape[0]
967
970
  else:
971
+ # add noise is called bevore first denoising step to create inital latent(img2img)
968
972
  step_indices = [self.begin_index] * timesteps.shape[0]
969
973
 
970
974
  sigma = sigmas[step_indices].flatten()
@@ -669,7 +669,11 @@ class EDMDPMSolverMultistepScheduler(SchedulerMixin, ConfigMixin):
669
669
  # self.begin_index is None when scheduler is used for training, or pipeline does not implement set_begin_index
670
670
  if self.begin_index is None:
671
671
  step_indices = [self.index_for_timestep(t, schedule_timesteps) for t in timesteps]
672
+ elif self.step_index is not None:
673
+ # add_noise is called after first denoising step (for inpainting)
674
+ step_indices = [self.step_index] * timesteps.shape[0]
672
675
  else:
676
+ # add noise is called bevore first denoising step to create inital latent(img2img)
673
677
  step_indices = [self.begin_index] * timesteps.shape[0]
674
678
 
675
679
  sigma = sigmas[step_indices].flatten()
@@ -367,7 +367,11 @@ class EDMEulerScheduler(SchedulerMixin, ConfigMixin):
367
367
  # self.begin_index is None when scheduler is used for training, or pipeline does not implement set_begin_index
368
368
  if self.begin_index is None:
369
369
  step_indices = [self.index_for_timestep(t, schedule_timesteps) for t in timesteps]
370
+ elif self.step_index is not None:
371
+ # add_noise is called after first denoising step (for inpainting)
372
+ step_indices = [self.step_index] * timesteps.shape[0]
370
373
  else:
374
+ # add noise is called bevore first denoising step to create inital latent(img2img)
371
375
  step_indices = [self.begin_index] * timesteps.shape[0]
372
376
 
373
377
  sigma = sigmas[step_indices].flatten()
@@ -467,7 +467,11 @@ class EulerAncestralDiscreteScheduler(SchedulerMixin, ConfigMixin):
467
467
  # self.begin_index is None when scheduler is used for training, or pipeline does not implement set_begin_index
468
468
  if self.begin_index is None:
469
469
  step_indices = [self.index_for_timestep(t, schedule_timesteps) for t in timesteps]
470
+ elif self.step_index is not None:
471
+ # add_noise is called after first denoising step (for inpainting)
472
+ step_indices = [self.step_index] * timesteps.shape[0]
470
473
  else:
474
+ # add noise is called bevore first denoising step to create inital latent(img2img)
471
475
  step_indices = [self.begin_index] * timesteps.shape[0]
472
476
 
473
477
  sigma = sigmas[step_indices].flatten()
@@ -562,7 +562,11 @@ class EulerDiscreteScheduler(SchedulerMixin, ConfigMixin):
562
562
  # self.begin_index is None when scheduler is used for training, or pipeline does not implement set_begin_index
563
563
  if self.begin_index is None:
564
564
  step_indices = [self.index_for_timestep(t, schedule_timesteps) for t in timesteps]
565
+ elif self.step_index is not None:
566
+ # add_noise is called after first denoising step (for inpainting)
567
+ step_indices = [self.step_index] * timesteps.shape[0]
565
568
  else:
569
+ # add noise is called bevore first denoising step to create inital latent(img2img)
566
570
  step_indices = [self.begin_index] * timesteps.shape[0]
567
571
 
568
572
  sigma = sigmas[step_indices].flatten()
@@ -468,7 +468,11 @@ class HeunDiscreteScheduler(SchedulerMixin, ConfigMixin):
468
468
  # self.begin_index is None when scheduler is used for training, or pipeline does not implement set_begin_index
469
469
  if self.begin_index is None:
470
470
  step_indices = [self.index_for_timestep(t, schedule_timesteps) for t in timesteps]
471
+ elif self.step_index is not None:
472
+ # add_noise is called after first denoising step (for inpainting)
473
+ step_indices = [self.step_index] * timesteps.shape[0]
471
474
  else:
475
+ # add noise is called bevore first denoising step to create inital latent(img2img)
472
476
  step_indices = [self.begin_index] * timesteps.shape[0]
473
477
 
474
478
  sigma = sigmas[step_indices].flatten()
@@ -494,7 +494,11 @@ class KDPM2AncestralDiscreteScheduler(SchedulerMixin, ConfigMixin):
494
494
  # self.begin_index is None when scheduler is used for training, or pipeline does not implement set_begin_index
495
495
  if self.begin_index is None:
496
496
  step_indices = [self.index_for_timestep(t, schedule_timesteps) for t in timesteps]
497
+ elif self.step_index is not None:
498
+ # add_noise is called after first denoising step (for inpainting)
499
+ step_indices = [self.step_index] * timesteps.shape[0]
497
500
  else:
501
+ # add noise is called bevore first denoising step to create inital latent(img2img)
498
502
  step_indices = [self.begin_index] * timesteps.shape[0]
499
503
 
500
504
  sigma = sigmas[step_indices].flatten()
@@ -469,7 +469,11 @@ class KDPM2DiscreteScheduler(SchedulerMixin, ConfigMixin):
469
469
  # self.begin_index is None when scheduler is used for training, or pipeline does not implement set_begin_index
470
470
  if self.begin_index is None:
471
471
  step_indices = [self.index_for_timestep(t, schedule_timesteps) for t in timesteps]
472
+ elif self.step_index is not None:
473
+ # add_noise is called after first denoising step (for inpainting)
474
+ step_indices = [self.step_index] * timesteps.shape[0]
472
475
  else:
476
+ # add noise is called bevore first denoising step to create inital latent(img2img)
473
477
  step_indices = [self.begin_index] * timesteps.shape[0]
474
478
 
475
479
  sigma = sigmas[step_indices].flatten()
@@ -461,7 +461,11 @@ class LMSDiscreteScheduler(SchedulerMixin, ConfigMixin):
461
461
  # self.begin_index is None when scheduler is used for training, or pipeline does not implement set_begin_index
462
462
  if self.begin_index is None:
463
463
  step_indices = [self.index_for_timestep(t, schedule_timesteps) for t in timesteps]
464
+ elif self.step_index is not None:
465
+ # add_noise is called after first denoising step (for inpainting)
466
+ step_indices = [self.step_index] * timesteps.shape[0]
464
467
  else:
468
+ # add noise is called bevore first denoising step to create inital latent(img2img)
465
469
  step_indices = [self.begin_index] * timesteps.shape[0]
466
470
 
467
471
  sigma = sigmas[step_indices].flatten()
@@ -862,10 +862,14 @@ class UniPCMultistepScheduler(SchedulerMixin, ConfigMixin):
862
862
  schedule_timesteps = self.timesteps.to(original_samples.device)
863
863
  timesteps = timesteps.to(original_samples.device)
864
864
 
865
- # begin_index is None when the scheduler is used for training
865
+ # begin_index is None when the scheduler is used for training or pipeline does not implement set_begin_index
866
866
  if self.begin_index is None:
867
867
  step_indices = [self.index_for_timestep(t, schedule_timesteps) for t in timesteps]
868
+ elif self.step_index is not None:
869
+ # add_noise is called after first denoising step (for inpainting)
870
+ step_indices = [self.step_index] * timesteps.shape[0]
868
871
  else:
872
+ # add noise is called bevore first denoising step to create inital latent(img2img)
869
873
  step_indices = [self.begin_index] * timesteps.shape[0]
870
874
 
871
875
  sigma = sigmas[step_indices].flatten()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: diffusers
3
- Version: 0.27.1
3
+ Version: 0.27.2
4
4
  Summary: State-of-the-art diffusion in PyTorch and JAX.
5
5
  Home-page: https://github.com/huggingface/diffusers
6
6
  Author: The Hugging Face team (past and future) with the help of all our contributors (https://github.com/huggingface/diffusers/graphs/contributors)
@@ -23,81 +23,81 @@ Description-Content-Type: text/markdown
23
23
  License-File: LICENSE
24
24
  Requires-Dist: importlib-metadata
25
25
  Requires-Dist: filelock
26
- Requires-Dist: huggingface-hub (>=0.20.2)
26
+ Requires-Dist: huggingface-hub >=0.20.2
27
27
  Requires-Dist: numpy
28
- Requires-Dist: regex (!=2019.12.17)
28
+ Requires-Dist: regex !=2019.12.17
29
29
  Requires-Dist: requests
30
- Requires-Dist: safetensors (>=0.3.1)
30
+ Requires-Dist: safetensors >=0.3.1
31
31
  Requires-Dist: Pillow
32
32
  Provides-Extra: dev
33
- Requires-Dist: urllib3 (<=2.0.0) ; extra == 'dev'
34
- Requires-Dist: isort (>=5.5.4) ; extra == 'dev'
35
- Requires-Dist: ruff (==0.1.5) ; extra == 'dev'
36
- Requires-Dist: hf-doc-builder (>=0.3.0) ; extra == 'dev'
37
- Requires-Dist: compel (==0.1.8) ; extra == 'dev'
38
- Requires-Dist: GitPython (<3.1.19) ; extra == 'dev'
33
+ Requires-Dist: urllib3 <=2.0.0 ; extra == 'dev'
34
+ Requires-Dist: isort >=5.5.4 ; extra == 'dev'
35
+ Requires-Dist: ruff ==0.1.5 ; extra == 'dev'
36
+ Requires-Dist: hf-doc-builder >=0.3.0 ; extra == 'dev'
37
+ Requires-Dist: compel ==0.1.8 ; extra == 'dev'
38
+ Requires-Dist: GitPython <3.1.19 ; extra == 'dev'
39
39
  Requires-Dist: datasets ; extra == 'dev'
40
40
  Requires-Dist: Jinja2 ; extra == 'dev'
41
- Requires-Dist: invisible-watermark (>=0.2.0) ; extra == 'dev'
42
- Requires-Dist: k-diffusion (>=0.0.12) ; extra == 'dev'
41
+ Requires-Dist: invisible-watermark >=0.2.0 ; extra == 'dev'
42
+ Requires-Dist: k-diffusion >=0.0.12 ; extra == 'dev'
43
43
  Requires-Dist: librosa ; extra == 'dev'
44
44
  Requires-Dist: parameterized ; extra == 'dev'
45
45
  Requires-Dist: pytest ; extra == 'dev'
46
46
  Requires-Dist: pytest-timeout ; extra == 'dev'
47
47
  Requires-Dist: pytest-xdist ; extra == 'dev'
48
- Requires-Dist: requests-mock (==1.10.0) ; extra == 'dev'
49
- Requires-Dist: safetensors (>=0.3.1) ; extra == 'dev'
50
- Requires-Dist: sentencepiece (!=0.1.92,>=0.1.91) ; extra == 'dev'
48
+ Requires-Dist: requests-mock ==1.10.0 ; extra == 'dev'
49
+ Requires-Dist: safetensors >=0.3.1 ; extra == 'dev'
50
+ Requires-Dist: sentencepiece !=0.1.92,>=0.1.91 ; extra == 'dev'
51
51
  Requires-Dist: scipy ; extra == 'dev'
52
52
  Requires-Dist: torchvision ; extra == 'dev'
53
- Requires-Dist: transformers (>=4.25.1) ; extra == 'dev'
54
- Requires-Dist: accelerate (>=0.11.0) ; extra == 'dev'
55
- Requires-Dist: protobuf (<4,>=3.20.3) ; extra == 'dev'
53
+ Requires-Dist: transformers >=4.25.1 ; extra == 'dev'
54
+ Requires-Dist: accelerate >=0.11.0 ; extra == 'dev'
55
+ Requires-Dist: protobuf <4,>=3.20.3 ; extra == 'dev'
56
56
  Requires-Dist: tensorboard ; extra == 'dev'
57
- Requires-Dist: peft (>=0.6.0) ; extra == 'dev'
58
- Requires-Dist: torch (>=1.4) ; extra == 'dev'
59
- Requires-Dist: jax (>=0.4.1) ; extra == 'dev'
60
- Requires-Dist: jaxlib (>=0.4.1) ; extra == 'dev'
61
- Requires-Dist: flax (>=0.4.1) ; extra == 'dev'
57
+ Requires-Dist: peft >=0.6.0 ; extra == 'dev'
58
+ Requires-Dist: torch >=1.4 ; extra == 'dev'
59
+ Requires-Dist: jax >=0.4.1 ; extra == 'dev'
60
+ Requires-Dist: jaxlib >=0.4.1 ; extra == 'dev'
61
+ Requires-Dist: flax >=0.4.1 ; extra == 'dev'
62
62
  Provides-Extra: docs
63
- Requires-Dist: hf-doc-builder (>=0.3.0) ; extra == 'docs'
63
+ Requires-Dist: hf-doc-builder >=0.3.0 ; extra == 'docs'
64
64
  Provides-Extra: flax
65
- Requires-Dist: jax (>=0.4.1) ; extra == 'flax'
66
- Requires-Dist: jaxlib (>=0.4.1) ; extra == 'flax'
67
- Requires-Dist: flax (>=0.4.1) ; extra == 'flax'
65
+ Requires-Dist: jax >=0.4.1 ; extra == 'flax'
66
+ Requires-Dist: jaxlib >=0.4.1 ; extra == 'flax'
67
+ Requires-Dist: flax >=0.4.1 ; extra == 'flax'
68
68
  Provides-Extra: quality
69
- Requires-Dist: urllib3 (<=2.0.0) ; extra == 'quality'
70
- Requires-Dist: isort (>=5.5.4) ; extra == 'quality'
71
- Requires-Dist: ruff (==0.1.5) ; extra == 'quality'
72
- Requires-Dist: hf-doc-builder (>=0.3.0) ; extra == 'quality'
69
+ Requires-Dist: urllib3 <=2.0.0 ; extra == 'quality'
70
+ Requires-Dist: isort >=5.5.4 ; extra == 'quality'
71
+ Requires-Dist: ruff ==0.1.5 ; extra == 'quality'
72
+ Requires-Dist: hf-doc-builder >=0.3.0 ; extra == 'quality'
73
73
  Provides-Extra: test
74
- Requires-Dist: compel (==0.1.8) ; extra == 'test'
75
- Requires-Dist: GitPython (<3.1.19) ; extra == 'test'
74
+ Requires-Dist: compel ==0.1.8 ; extra == 'test'
75
+ Requires-Dist: GitPython <3.1.19 ; extra == 'test'
76
76
  Requires-Dist: datasets ; extra == 'test'
77
77
  Requires-Dist: Jinja2 ; extra == 'test'
78
- Requires-Dist: invisible-watermark (>=0.2.0) ; extra == 'test'
79
- Requires-Dist: k-diffusion (>=0.0.12) ; extra == 'test'
78
+ Requires-Dist: invisible-watermark >=0.2.0 ; extra == 'test'
79
+ Requires-Dist: k-diffusion >=0.0.12 ; extra == 'test'
80
80
  Requires-Dist: librosa ; extra == 'test'
81
81
  Requires-Dist: parameterized ; extra == 'test'
82
82
  Requires-Dist: pytest ; extra == 'test'
83
83
  Requires-Dist: pytest-timeout ; extra == 'test'
84
84
  Requires-Dist: pytest-xdist ; extra == 'test'
85
- Requires-Dist: requests-mock (==1.10.0) ; extra == 'test'
86
- Requires-Dist: safetensors (>=0.3.1) ; extra == 'test'
87
- Requires-Dist: sentencepiece (!=0.1.92,>=0.1.91) ; extra == 'test'
85
+ Requires-Dist: requests-mock ==1.10.0 ; extra == 'test'
86
+ Requires-Dist: safetensors >=0.3.1 ; extra == 'test'
87
+ Requires-Dist: sentencepiece !=0.1.92,>=0.1.91 ; extra == 'test'
88
88
  Requires-Dist: scipy ; extra == 'test'
89
89
  Requires-Dist: torchvision ; extra == 'test'
90
- Requires-Dist: transformers (>=4.25.1) ; extra == 'test'
90
+ Requires-Dist: transformers >=4.25.1 ; extra == 'test'
91
91
  Provides-Extra: torch
92
- Requires-Dist: torch (>=1.4) ; extra == 'torch'
93
- Requires-Dist: accelerate (>=0.11.0) ; extra == 'torch'
92
+ Requires-Dist: torch >=1.4 ; extra == 'torch'
93
+ Requires-Dist: accelerate >=0.11.0 ; extra == 'torch'
94
94
  Provides-Extra: training
95
- Requires-Dist: accelerate (>=0.11.0) ; extra == 'training'
95
+ Requires-Dist: accelerate >=0.11.0 ; extra == 'training'
96
96
  Requires-Dist: datasets ; extra == 'training'
97
- Requires-Dist: protobuf (<4,>=3.20.3) ; extra == 'training'
97
+ Requires-Dist: protobuf <4,>=3.20.3 ; extra == 'training'
98
98
  Requires-Dist: tensorboard ; extra == 'training'
99
99
  Requires-Dist: Jinja2 ; extra == 'training'
100
- Requires-Dist: peft (>=0.6.0) ; extra == 'training'
100
+ Requires-Dist: peft >=0.6.0 ; extra == 'training'
101
101
 
102
102
  <!---
103
103
  Copyright 2022 - The HuggingFace Team. All rights reserved.
@@ -1,4 +1,4 @@
1
- diffusers/__init__.py,sha256=qUH9dx99G-SkMhdkpHkhBFS2KStkEmpMqSCD8IG0eso,28672
1
+ diffusers/__init__.py,sha256=VBEUBZoiU245pY8e-ZqkKOoWpBy2xKg8KjUO9I3B_v4,28672
2
2
  diffusers/configuration_utils.py,sha256=LiREW2fL18a184byyg3mZBuIm8IPEQAwrLJUmWtcGkM,31927
3
3
  diffusers/dependency_versions_check.py,sha256=J_ZAEhVN6uLWAOUZCJrcGJ7PYxUek4f_nwGTFM7LTk8,1271
4
4
  diffusers/dependency_versions_table.py,sha256=P-wcoeAnOJBNuNj175VsgHxYyeQlaL1ocF3mkUgS68s,1485
@@ -77,7 +77,7 @@ diffusers/models/unets/unet_1d_blocks.py,sha256=dS9aNLkQxTUNb0TUaXyyyeUFuNY2gusL
77
77
  diffusers/models/unets/unet_2d.py,sha256=1n6idSaeb99NFAjUYmg2sVTfdE_g--3TYHazjlWUEl0,16581
78
78
  diffusers/models/unets/unet_2d_blocks.py,sha256=dpMrkQPJuBY2Ax7vYQUJumK9OOrT5al_IxkBIuK2Y3A,147891
79
79
  diffusers/models/unets/unet_2d_blocks_flax.py,sha256=k6IGsqPXIm_WczW_HQzVqlu0UuKdmeC7JQGBk21gTVM,15572
80
- diffusers/models/unets/unet_2d_condition.py,sha256=h5nxNvjZapxDtyO_c4k_ztiX2xSC0BzdhC0Dxp4Gk4s,66972
80
+ diffusers/models/unets/unet_2d_condition.py,sha256=omXUwCuhQfjv1afejFqfO7XxOPiljXMk0F8wZHz_UrY,67039
81
81
  diffusers/models/unets/unet_2d_condition_flax.py,sha256=foKH3jZM6iRZpt2E1uTclvNp9du8tAmkrSVyOmav4bI,22269
82
82
  diffusers/models/unets/unet_3d_blocks.py,sha256=cyUbQjEl-5hPupcgD6FlL9JTn_Mv9wLcVyM_OJ8c7TM,89511
83
83
  diffusers/models/unets/unet_3d_condition.py,sha256=rSXChafZKifbDPPo4Cyam_RyCab52MLexIGpO94w7qQ,34691
@@ -166,7 +166,7 @@ diffusers/pipelines/deprecated/spectrogram_diffusion/pipeline_spectrogram_diffus
166
166
  diffusers/pipelines/deprecated/stable_diffusion_variants/__init__.py,sha256=mnIQupN59oc3JmKGaQZia7MO92E08wswJrP9QITzWQs,2111
167
167
  diffusers/pipelines/deprecated/stable_diffusion_variants/pipeline_cycle_diffusion.py,sha256=UTaPKyxt7PsLzt3-FtXkE91YQSgBBrbOPbfhbxJimss,47812
168
168
  diffusers/pipelines/deprecated/stable_diffusion_variants/pipeline_onnx_stable_diffusion_inpaint_legacy.py,sha256=MtocKuS-glZL1ubF_Tk5iKVXjXIZb5blTOrcInv0Ax0,27814
169
- diffusers/pipelines/deprecated/stable_diffusion_variants/pipeline_stable_diffusion_inpaint_legacy.py,sha256=Ct_MEJ1uVJMFCbP6fuDguGlt8k6hmGVWG2Jz7yF6GDg,42610
169
+ diffusers/pipelines/deprecated/stable_diffusion_variants/pipeline_stable_diffusion_inpaint_legacy.py,sha256=iu8EoeWyzatIc_6Hmf358CvUgDN79NoU8yC5XvLu3oU,42346
170
170
  diffusers/pipelines/deprecated/stable_diffusion_variants/pipeline_stable_diffusion_model_editing.py,sha256=EmTmyjms3t5POXCCue5ky0Hc4bVABvnZpSG4ax6kUQA,41304
171
171
  diffusers/pipelines/deprecated/stable_diffusion_variants/pipeline_stable_diffusion_paradigms.py,sha256=rk_HndXcW5y_9RcfBStE0H7XmkoIkUNVRpgPFL8p4HE,40999
172
172
  diffusers/pipelines/deprecated/stable_diffusion_variants/pipeline_stable_diffusion_pix2pix_zero.py,sha256=sFEGJraThOwdOTBnGVSuSXnmjF4HJiAmoGJLAXCbVxg,63419
@@ -232,7 +232,7 @@ diffusers/pipelines/shap_e/pipeline_shap_e.py,sha256=hHIzOdsftfqOBbcrwJqADtA2B8u
232
232
  diffusers/pipelines/shap_e/pipeline_shap_e_img2img.py,sha256=sTEEugcsYVBltWjfZWwp3K6-7-m8uG6turYKYirBK84,12951
233
233
  diffusers/pipelines/shap_e/renderer.py,sha256=7Q2F48rD4lAI-idP5x66dsBmd0TQSUUPcF8xZ-6reuQ,39148
234
234
  diffusers/pipelines/stable_cascade/__init__.py,sha256=buKExLbA-qdePd19JSEF29AhOCIaDgqFfLajEmo-Kg4,1672
235
- diffusers/pipelines/stable_cascade/pipeline_stable_cascade.py,sha256=XHBz_sElWMj6ODnp1x_9oGDx9H7ki0MHjuavsF3d37M,23653
235
+ diffusers/pipelines/stable_cascade/pipeline_stable_cascade.py,sha256=muD14xWY-QQzd_JjuwsB-m5hVKO933vn3lRibr6w170,24370
236
236
  diffusers/pipelines/stable_cascade/pipeline_stable_cascade_combined.py,sha256=-eTFBpzXDIc1Rag5r--V1cg6rJfUr-Db0NLJI2zm8c0,17569
237
237
  diffusers/pipelines/stable_cascade/pipeline_stable_cascade_prior.py,sha256=cWCJzeIptg5Wa2ECP7DJfIQuYkboGprbwJZm_fmWP8o,31270
238
238
  diffusers/pipelines/stable_diffusion/__init__.py,sha256=1f_Sh21VZhxvaeODVJbQMc_WD0qEWjyDHSrk9boZrGc,9314
@@ -262,7 +262,7 @@ diffusers/pipelines/stable_diffusion/stable_unclip_image_normalizer.py,sha256=PU
262
262
  diffusers/pipelines/stable_diffusion_attend_and_excite/__init__.py,sha256=VpZ5FPx9ACTOT4qiEqun2QYeUtx9Rp0YVDwqhYe28QM,1390
263
263
  diffusers/pipelines/stable_diffusion_attend_and_excite/pipeline_stable_diffusion_attend_and_excite.py,sha256=WzxjC0nLW4U9wy-lCQuwc921xMhy8GjeX8UhJRmWkTc,50905
264
264
  diffusers/pipelines/stable_diffusion_diffedit/__init__.py,sha256=JlcUNahRBm0uaPzappogqfjyLDsNW6IeyOfuLs4af5M,1358
265
- diffusers/pipelines/stable_diffusion_diffedit/pipeline_stable_diffusion_diffedit.py,sha256=qy14CsF--dBSvvkwLjhpsAM11iRV8dGmN92VuMxiwk8,78317
265
+ diffusers/pipelines/stable_diffusion_diffedit/pipeline_stable_diffusion_diffedit.py,sha256=UOGWHJHOCOS0wHOrgqaiG40ffuZ5Np98BsqKqIcm8i0,78053
266
266
  diffusers/pipelines/stable_diffusion_gligen/__init__.py,sha256=b4dZB5bUuZmEAcg7MmCyWZpyxNmMrlrByEQW_xwGGgI,1568
267
267
  diffusers/pipelines/stable_diffusion_gligen/pipeline_stable_diffusion_gligen.py,sha256=iLCgxXdcZoACp-nXeKicadA1-P4aahz8bD8o_q7wdNA,42994
268
268
  diffusers/pipelines/stable_diffusion_gligen/pipeline_stable_diffusion_gligen_text_image.py,sha256=mDDFTr7D4H7i0h3ex98Hu4qBIX0wPIt7KTTYrOIsWtU,51187
@@ -317,7 +317,7 @@ diffusers/pipelines/wuerstchen/pipeline_wuerstchen_prior.py,sha256=N2iabh9Sm9jhl
317
317
  diffusers/schedulers/__init__.py,sha256=QhyrpbHn7BntT-jNMNsCUkh8-rVpjgL3ExvSNXoYtK4,10029
318
318
  diffusers/schedulers/scheduling_amused.py,sha256=z9WvPx0FKP4eXns9k8yj15FyJKuHDnBBBXcaxQ0mUNM,6615
319
319
  diffusers/schedulers/scheduling_consistency_decoder.py,sha256=hKIGNVDy7-mFmvp0L1GTaF-YSQ6hFi_xcnv9cMuHaG0,6871
320
- diffusers/schedulers/scheduling_consistency_models.py,sha256=GBf-ReBb3TbgbqaYibT-pbaGDDcFPRj3iQLU7lzdYKA,18631
320
+ diffusers/schedulers/scheduling_consistency_models.py,sha256=AbKznEkhWwz5rn-skJMZb5DTSuen4P_ylMAKf8O6EdA,18912
321
321
  diffusers/schedulers/scheduling_ddim.py,sha256=RNvEVUd9T0RFCo9tNco9NLQJFv10S_6TBAIbOsomHuo,24954
322
322
  diffusers/schedulers/scheduling_ddim_flax.py,sha256=rfQR1qrp9n8f4pp2Md19wkELk5Xm2QTGwvLauOk9Gn4,13110
323
323
  diffusers/schedulers/scheduling_ddim_inverse.py,sha256=QzOwi115Sn3Ilmr0f3wHXvXRQRcNsLUiWEf4GtjSEH4,17847
@@ -326,24 +326,24 @@ diffusers/schedulers/scheduling_ddpm.py,sha256=EPFRnOA-3bZ1mRc3tl_3C3R-X-WozInc_
326
326
  diffusers/schedulers/scheduling_ddpm_flax.py,sha256=4Ewhe0kE9l73oENsLYADBJktuEThYGaZLHhTi7yyq3o,12463
327
327
  diffusers/schedulers/scheduling_ddpm_parallel.py,sha256=-EGmiJaTbfgp_Fj0UtYaX7DvZ11bFNQpO2rL6HdVob0,31248
328
328
  diffusers/schedulers/scheduling_ddpm_wuerstchen.py,sha256=TOs2SXvgbD2aYrTEUGIBQ1hu5GQ_HV_ROGS5n1IQX_c,8999
329
- diffusers/schedulers/scheduling_deis_multistep.py,sha256=aQX8wPMM_Ug45IQT786FXwOt6pLOJdMxuUqUq0QF1wU,34644
330
- diffusers/schedulers/scheduling_dpmsolver_multistep.py,sha256=xwlwLtj0nbxCHezeEQgi_oIID0o9Fpil88i_RwGKhmg,47657
329
+ diffusers/schedulers/scheduling_deis_multistep.py,sha256=9FJYhHOFYOeY8CADqmlsrXiKelVaArd_y9_IcWzplp4,34972
330
+ diffusers/schedulers/scheduling_dpmsolver_multistep.py,sha256=3Qb1bhvh-lh-xXb8ibJKHCGW1RMdFmtiW3GABTYkp0I,47985
331
331
  diffusers/schedulers/scheduling_dpmsolver_multistep_flax.py,sha256=WkTcIei0fhpO1nnXW-zN4NKoi350A2Ztg6obyJ1pI_4,28731
332
332
  diffusers/schedulers/scheduling_dpmsolver_multistep_inverse.py,sha256=53DK70CqXwxD8FHU92KTBYM2eiEOAO7xVFvwPZYAhiw,43521
333
- diffusers/schedulers/scheduling_dpmsolver_sde.py,sha256=VMhmb4nSUTuyUOGhoDvbUQFssAI9avgk-3eivWQjvec,24047
334
- diffusers/schedulers/scheduling_dpmsolver_singlestep.py,sha256=qtXgQTXenl4zbsb995OsY_zbT6poMRwwdlBwsDV2JiA,44644
335
- diffusers/schedulers/scheduling_edm_dpmsolver_multistep.py,sha256=4v1GgMxhoArENVRff4MYz1kCeXtNOXFiOUGxrrfmiO0,30260
336
- diffusers/schedulers/scheduling_edm_euler.py,sha256=UR5mZRN3fFuEAWfarWXPWiKxnkhMsEpEc7ERWNsbmy0,15765
337
- diffusers/schedulers/scheduling_euler_ancestral_discrete.py,sha256=_pD6659oK10Q65LgqC8ops3J63ifLdL9sJPtJTaRh08,20947
338
- diffusers/schedulers/scheduling_euler_discrete.py,sha256=jMm6kxGSIjV_Su_oqRfjoR0q7LaxY5dbqnCiQeSzF_8,25098
333
+ diffusers/schedulers/scheduling_dpmsolver_sde.py,sha256=NTQffFEzD7lf0Ntc5nJjG4ZmIg41jK96XTNl2CVuSWM,24328
334
+ diffusers/schedulers/scheduling_dpmsolver_singlestep.py,sha256=TsclOP3lhNnHpnMQU0bDGDYKQ9T1RMHvRrdOFJDX_1Q,44972
335
+ diffusers/schedulers/scheduling_edm_dpmsolver_multistep.py,sha256=nFm9fXjvMBXNL_R_PAiFeAO3UdOeSruhWYgwAEhkOj8,30541
336
+ diffusers/schedulers/scheduling_edm_euler.py,sha256=NMqkM-XihuGFG1gs-4xfCfmZZKCiTAX4QNDAX-gKDCA,16046
337
+ diffusers/schedulers/scheduling_euler_ancestral_discrete.py,sha256=AQmNlKm5fEl1Ax5PjJBmqWTwgpa3lDF3xY3-2GMilhE,21228
338
+ diffusers/schedulers/scheduling_euler_discrete.py,sha256=GNXLKaQmnMOz2vhhInQMK8qxiewcIeT0y8paSBoH-uo,25379
339
339
  diffusers/schedulers/scheduling_euler_discrete_flax.py,sha256=Bsi5Yz6QiTS77pSMJdkoB8IhemE8h_xVkru9MUb4GHM,10801
340
- diffusers/schedulers/scheduling_heun_discrete.py,sha256=zX7CXX3jyXhS_yoGVeXIguMm349f_jXZCwMQFveiKvA,20804
340
+ diffusers/schedulers/scheduling_heun_discrete.py,sha256=TGv1ef8yGD11UpoTlqRPRl_csyrpQf-X2Y_BYwtJHpI,21085
341
341
  diffusers/schedulers/scheduling_ipndm.py,sha256=ZMdXOgzcJDNmYjTN7Op0syLcFUMQQo8RD6zk6v_dLo0,8782
342
- diffusers/schedulers/scheduling_k_dpm_2_ancestral_discrete.py,sha256=BGA6rrwNaOluiaTKHck3Q8rxhye082XmHUTGjywKeLk,22269
343
- diffusers/schedulers/scheduling_k_dpm_2_discrete.py,sha256=F04afpywB_Aa3xRmOweZI7MLzI07OKkfObcZje3a2Yk,20957
342
+ diffusers/schedulers/scheduling_k_dpm_2_ancestral_discrete.py,sha256=xNHvEVSJBtYoJXCaUrtnF04nerckBU5t1ytl7II56SU,22550
343
+ diffusers/schedulers/scheduling_k_dpm_2_discrete.py,sha256=jm3ujNVcakpxlUVeUMiPj5z4AoySNI1WoZ91zOQO0LE,21238
344
344
  diffusers/schedulers/scheduling_karras_ve_flax.py,sha256=frO1wwwWo1WnC7ojS8B5CTvK0EFx1DBWzcr_MwMZGsM,9636
345
345
  diffusers/schedulers/scheduling_lcm.py,sha256=ZSJd7oomjQmX6JrbDmyH_JaxdaknSLrtzM3E649-3m0,32342
346
- diffusers/schedulers/scheduling_lms_discrete.py,sha256=Zw1yVMUHFGdEs3tLyZK18LJs663azMuHEQrA3XxCV2s,20456
346
+ diffusers/schedulers/scheduling_lms_discrete.py,sha256=A7T3QHLNAZOF5ImsW0PmCexNvlWXKymUAG8RbWQQfA8,20737
347
347
  diffusers/schedulers/scheduling_lms_discrete_flax.py,sha256=OoO3816H2AWXGLpA3AeREFffh4yhDa-qbPHrtStfCGo,11077
348
348
  diffusers/schedulers/scheduling_pndm.py,sha256=lRvjFygTdAey9l6sGEWWfQHxshYCAaWAAOdrm9MD0LI,21814
349
349
  diffusers/schedulers/scheduling_pndm_flax.py,sha256=Yzsf1yQH1ycnyIOzWAbDJw1g-oBgjGY3ejgD1gdaZ48,21539
@@ -353,7 +353,7 @@ diffusers/schedulers/scheduling_sde_ve.py,sha256=5S6UDX4Seo9Rgyq49gyHj2XfttJOz54
353
353
  diffusers/schedulers/scheduling_sde_ve_flax.py,sha256=8nZWyB7tUTtXafpQpiAOFGVHGPK9KNNdPHX71XtZsVo,12134
354
354
  diffusers/schedulers/scheduling_tcd.py,sha256=aGv-975qTaYw-2C74Lu_8CrDaQlz5QECyZ-cM9cyo1M,34398
355
355
  diffusers/schedulers/scheduling_unclip.py,sha256=MLqcpFMhQuKoS5QWrIvDSmR0jYnP_rbVy4Y-xBBpLwQ,15046
356
- diffusers/schedulers/scheduling_unipc_multistep.py,sha256=yPXrQssBJGwuBRq9zsevYRd6upxODbqGkri8_U5fxz8,37206
356
+ diffusers/schedulers/scheduling_unipc_multistep.py,sha256=TeL0GWEnsRAgmwCbQWgRy_OMb-sWse_iBeabNCncg_c,37534
357
357
  diffusers/schedulers/scheduling_utils.py,sha256=gXqWv_kWyGd0sKhQ67FnPo4pZvBIi93Cz9rjuNsdR6Y,8407
358
358
  diffusers/schedulers/scheduling_utils_flax.py,sha256=x8cJYTp0OskUa8ciCqK6J51gLZRWfg08zwf8hGi03NU,12368
359
359
  diffusers/schedulers/scheduling_vq_diffusion.py,sha256=4F-Rb8I03PRtyVDLkW3G5IpR60p5QSVL39vf0lkEXxM,23009
@@ -391,9 +391,9 @@ diffusers/utils/state_dict_utils.py,sha256=JXLPkeJcmC6b-68oAhFkq2k6sdmUeVrlnhahu
391
391
  diffusers/utils/testing_utils.py,sha256=3hpnggU5-5_m6k1eiqorHNwq7lonLzLSkyb4mMwaF6A,34708
392
392
  diffusers/utils/torch_utils.py,sha256=waQgGB87DZ5EqL8ZjwYYtsXtZfPj8xGNB7Fg_7JGtvQ,6233
393
393
  diffusers/utils/versions.py,sha256=-e7XW1TzZ-tsRo9PMQHp-hNGYHuVDFzLtwg3uAJzqdI,4333
394
- diffusers-0.27.1.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
395
- diffusers-0.27.1.dist-info/METADATA,sha256=vYhY5zC_YTysgL3oA8gNenDOrizPL0GBmnkE1GB6koo,19038
396
- diffusers-0.27.1.dist-info/WHEEL,sha256=2wepM1nk4DS4eFpYrW1TTqPcoGNfHhhO_i5m4cOimbo,92
397
- diffusers-0.27.1.dist-info/entry_points.txt,sha256=_1bvshKV_6_b63_FAkcUs9W6tUKGeIoQ3SHEZsovEWs,72
398
- diffusers-0.27.1.dist-info/top_level.txt,sha256=axJl2884vMSvhzrFrSoht36QXA_6gZN9cKtg4xOO72o,10
399
- diffusers-0.27.1.dist-info/RECORD,,
394
+ diffusers-0.27.2.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
395
+ diffusers-0.27.2.dist-info/METADATA,sha256=hwgdk95ShKSM6rjGR5xvsMYb7Cb6hn13LY4TW4HOsR0,18952
396
+ diffusers-0.27.2.dist-info/WHEEL,sha256=yQN5g4mg4AybRjkgi-9yy4iQEFibGQmlz78Pik5Or-A,92
397
+ diffusers-0.27.2.dist-info/entry_points.txt,sha256=_1bvshKV_6_b63_FAkcUs9W6tUKGeIoQ3SHEZsovEWs,72
398
+ diffusers-0.27.2.dist-info/top_level.txt,sha256=axJl2884vMSvhzrFrSoht36QXA_6gZN9cKtg4xOO72o,10
399
+ diffusers-0.27.2.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.38.4)
2
+ Generator: bdist_wheel (0.41.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5