diffusers 0.27.2__tar.gz → 0.28.1__tar.gz

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 (429) hide show
  1. {diffusers-0.27.2/src/diffusers.egg-info → diffusers-0.28.1}/PKG-INFO +79 -5
  2. {diffusers-0.27.2 → diffusers-0.28.1}/README.md +3 -3
  3. {diffusers-0.27.2 → diffusers-0.28.1}/pyproject.toml +5 -3
  4. {diffusers-0.27.2 → diffusers-0.28.1}/setup.py +15 -10
  5. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/__init__.py +26 -1
  6. diffusers-0.28.1/src/diffusers/callbacks.py +156 -0
  7. diffusers-0.28.1/src/diffusers/commands/env.py +188 -0
  8. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/configuration_utils.py +33 -11
  9. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/dependency_versions_table.py +2 -1
  10. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/image_processor.py +158 -45
  11. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/loaders/__init__.py +2 -5
  12. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/loaders/autoencoder.py +4 -4
  13. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/loaders/controlnet.py +4 -4
  14. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/loaders/ip_adapter.py +80 -22
  15. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/loaders/lora.py +134 -20
  16. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/loaders/lora_conversion_utils.py +46 -43
  17. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/loaders/peft.py +4 -3
  18. diffusers-0.28.1/src/diffusers/loaders/single_file.py +549 -0
  19. diffusers-0.28.1/src/diffusers/loaders/single_file_model.py +290 -0
  20. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/loaders/single_file_utils.py +616 -672
  21. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/loaders/textual_inversion.py +41 -20
  22. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/loaders/unet.py +168 -115
  23. diffusers-0.28.1/src/diffusers/loaders/unet_loader_utils.py +163 -0
  24. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/__init__.py +8 -0
  25. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/activations.py +23 -3
  26. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/attention.py +10 -11
  27. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/attention_processor.py +475 -148
  28. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/autoencoders/autoencoder_asym_kl.py +14 -16
  29. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/autoencoders/autoencoder_kl.py +18 -19
  30. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/autoencoders/autoencoder_kl_temporal_decoder.py +11 -11
  31. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/autoencoders/autoencoder_tiny.py +16 -16
  32. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/autoencoders/consistency_decoder_vae.py +36 -11
  33. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/autoencoders/vae.py +23 -24
  34. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/controlnet.py +12 -9
  35. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/controlnet_flax.py +4 -4
  36. diffusers-0.28.1/src/diffusers/models/controlnet_xs.py +1915 -0
  37. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/downsampling.py +17 -18
  38. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/embeddings.py +363 -32
  39. diffusers-0.28.1/src/diffusers/models/model_loading_utils.py +177 -0
  40. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/modeling_flax_pytorch_utils.py +2 -1
  41. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/modeling_flax_utils.py +4 -4
  42. diffusers-0.28.1/src/diffusers/models/modeling_outputs.py +31 -0
  43. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/modeling_pytorch_flax_utils.py +1 -1
  44. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/modeling_utils.py +175 -99
  45. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/normalization.py +2 -1
  46. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/resnet.py +18 -23
  47. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/transformer_temporal.py +3 -3
  48. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/transformers/__init__.py +3 -0
  49. diffusers-0.28.1/src/diffusers/models/transformers/dit_transformer_2d.py +240 -0
  50. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/transformers/dual_transformer_2d.py +4 -4
  51. diffusers-0.28.1/src/diffusers/models/transformers/hunyuan_transformer_2d.py +427 -0
  52. diffusers-0.28.1/src/diffusers/models/transformers/pixart_transformer_2d.py +336 -0
  53. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/transformers/prior_transformer.py +7 -7
  54. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/transformers/t5_film_transformer.py +17 -19
  55. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/transformers/transformer_2d.py +292 -184
  56. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/transformers/transformer_temporal.py +10 -10
  57. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/unets/unet_1d.py +5 -5
  58. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/unets/unet_1d_blocks.py +29 -29
  59. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/unets/unet_2d.py +6 -6
  60. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/unets/unet_2d_blocks.py +137 -128
  61. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/unets/unet_2d_condition.py +19 -15
  62. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/unets/unet_2d_condition_flax.py +6 -5
  63. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/unets/unet_3d_blocks.py +79 -77
  64. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/unets/unet_3d_condition.py +13 -9
  65. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/unets/unet_i2vgen_xl.py +14 -13
  66. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/unets/unet_kandinsky3.py +1 -1
  67. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/unets/unet_motion_model.py +114 -14
  68. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/unets/unet_spatio_temporal_condition.py +15 -14
  69. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/unets/unet_stable_cascade.py +16 -13
  70. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/upsampling.py +17 -20
  71. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/vq_model.py +16 -15
  72. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/__init__.py +27 -3
  73. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/amused/pipeline_amused.py +12 -12
  74. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/amused/pipeline_amused_img2img.py +14 -12
  75. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/amused/pipeline_amused_inpaint.py +13 -11
  76. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/animatediff/__init__.py +2 -0
  77. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/animatediff/pipeline_animatediff.py +24 -46
  78. diffusers-0.28.1/src/diffusers/pipelines/animatediff/pipeline_animatediff_sdxl.py +1284 -0
  79. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/animatediff/pipeline_animatediff_video2video.py +82 -72
  80. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/animatediff/pipeline_output.py +3 -2
  81. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/audioldm/pipeline_audioldm.py +14 -14
  82. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/audioldm2/modeling_audioldm2.py +54 -35
  83. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/audioldm2/pipeline_audioldm2.py +120 -36
  84. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/auto_pipeline.py +21 -17
  85. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/blip_diffusion/blip_image_processing.py +1 -1
  86. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/blip_diffusion/modeling_blip2.py +5 -5
  87. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/blip_diffusion/modeling_ctx_clip.py +1 -1
  88. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/blip_diffusion/pipeline_blip_diffusion.py +2 -2
  89. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/consistency_models/pipeline_consistency_models.py +5 -5
  90. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/controlnet/multicontrolnet.py +4 -8
  91. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/controlnet/pipeline_controlnet.py +87 -52
  92. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/controlnet/pipeline_controlnet_blip_diffusion.py +2 -2
  93. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/controlnet/pipeline_controlnet_img2img.py +50 -43
  94. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/controlnet/pipeline_controlnet_inpaint.py +52 -40
  95. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/controlnet/pipeline_controlnet_inpaint_sd_xl.py +80 -47
  96. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/controlnet/pipeline_controlnet_sd_xl.py +147 -49
  97. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/controlnet/pipeline_controlnet_sd_xl_img2img.py +89 -55
  98. diffusers-0.28.1/src/diffusers/pipelines/controlnet_xs/__init__.py +68 -0
  99. diffusers-0.28.1/src/diffusers/pipelines/controlnet_xs/pipeline_controlnet_xs.py +911 -0
  100. diffusers-0.28.1/src/diffusers/pipelines/controlnet_xs/pipeline_controlnet_xs_sd_xl.py +1115 -0
  101. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deepfloyd_if/pipeline_if.py +14 -28
  102. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deepfloyd_if/pipeline_if_img2img.py +18 -33
  103. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deepfloyd_if/pipeline_if_img2img_superresolution.py +21 -39
  104. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deepfloyd_if/pipeline_if_inpainting.py +20 -36
  105. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deepfloyd_if/pipeline_if_inpainting_superresolution.py +23 -39
  106. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deepfloyd_if/pipeline_if_superresolution.py +17 -32
  107. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/alt_diffusion/modeling_roberta_series.py +11 -11
  108. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/alt_diffusion/pipeline_alt_diffusion.py +43 -20
  109. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/alt_diffusion/pipeline_alt_diffusion_img2img.py +36 -18
  110. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/repaint/pipeline_repaint.py +2 -2
  111. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/spectrogram_diffusion/pipeline_spectrogram_diffusion.py +7 -7
  112. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/stable_diffusion_variants/pipeline_cycle_diffusion.py +12 -12
  113. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/stable_diffusion_variants/pipeline_stable_diffusion_inpaint_legacy.py +18 -18
  114. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/stable_diffusion_variants/pipeline_stable_diffusion_model_editing.py +20 -15
  115. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/stable_diffusion_variants/pipeline_stable_diffusion_paradigms.py +20 -15
  116. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/stable_diffusion_variants/pipeline_stable_diffusion_pix2pix_zero.py +30 -25
  117. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/versatile_diffusion/modeling_text_unet.py +69 -59
  118. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/versatile_diffusion/pipeline_versatile_diffusion.py +13 -13
  119. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/versatile_diffusion/pipeline_versatile_diffusion_dual_guided.py +10 -5
  120. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/versatile_diffusion/pipeline_versatile_diffusion_image_variation.py +11 -6
  121. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/versatile_diffusion/pipeline_versatile_diffusion_text_to_image.py +10 -5
  122. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/vq_diffusion/pipeline_vq_diffusion.py +5 -5
  123. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/dit/pipeline_dit.py +7 -4
  124. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/free_init_utils.py +39 -38
  125. {diffusers-0.27.2/src/diffusers/pipelines/pixart_alpha → diffusers-0.28.1/src/diffusers/pipelines/hunyuandit}/__init__.py +2 -2
  126. diffusers-0.28.1/src/diffusers/pipelines/hunyuandit/pipeline_hunyuandit.py +881 -0
  127. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/i2vgen_xl/pipeline_i2vgen_xl.py +33 -48
  128. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/kandinsky/pipeline_kandinsky.py +8 -8
  129. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/kandinsky/pipeline_kandinsky_combined.py +23 -20
  130. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/kandinsky/pipeline_kandinsky_img2img.py +11 -11
  131. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/kandinsky/pipeline_kandinsky_inpaint.py +12 -12
  132. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/kandinsky/pipeline_kandinsky_prior.py +10 -10
  133. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2.py +6 -6
  134. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_combined.py +32 -29
  135. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_controlnet.py +10 -10
  136. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_controlnet_img2img.py +10 -10
  137. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_img2img.py +6 -6
  138. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_inpainting.py +8 -8
  139. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_prior.py +7 -7
  140. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_prior_emb2emb.py +6 -6
  141. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/kandinsky3/convert_kandinsky3_unet.py +3 -3
  142. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/kandinsky3/pipeline_kandinsky3.py +20 -33
  143. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/kandinsky3/pipeline_kandinsky3_img2img.py +24 -35
  144. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/latent_consistency_models/pipeline_latent_consistency_img2img.py +48 -30
  145. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/latent_consistency_models/pipeline_latent_consistency_text2img.py +50 -28
  146. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/latent_diffusion/pipeline_latent_diffusion.py +11 -11
  147. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/ledits_pp/pipeline_leditspp_stable_diffusion.py +61 -67
  148. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/ledits_pp/pipeline_leditspp_stable_diffusion_xl.py +70 -69
  149. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/ledits_pp/pipeline_output.py +2 -2
  150. diffusers-0.28.1/src/diffusers/pipelines/marigold/__init__.py +50 -0
  151. diffusers-0.28.1/src/diffusers/pipelines/marigold/marigold_image_processing.py +561 -0
  152. diffusers-0.28.1/src/diffusers/pipelines/marigold/pipeline_marigold_depth.py +813 -0
  153. diffusers-0.28.1/src/diffusers/pipelines/marigold/pipeline_marigold_normals.py +690 -0
  154. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/musicldm/pipeline_musicldm.py +14 -14
  155. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/paint_by_example/pipeline_paint_by_example.py +17 -12
  156. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/pia/pipeline_pia.py +39 -125
  157. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/pipeline_flax_utils.py +4 -4
  158. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/pipeline_loading_utils.py +269 -23
  159. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/pipeline_utils.py +266 -37
  160. diffusers-0.28.1/src/diffusers/pipelines/pixart_alpha/__init__.py +55 -0
  161. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/pixart_alpha/pipeline_pixart_alpha.py +69 -79
  162. diffusers-0.28.1/src/diffusers/pipelines/pixart_alpha/pipeline_pixart_sigma.py +880 -0
  163. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/semantic_stable_diffusion/pipeline_semantic_stable_diffusion.py +10 -5
  164. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/shap_e/pipeline_shap_e.py +3 -3
  165. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/shap_e/pipeline_shap_e_img2img.py +14 -14
  166. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/shap_e/renderer.py +1 -1
  167. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_cascade/pipeline_stable_cascade.py +18 -18
  168. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_cascade/pipeline_stable_cascade_combined.py +23 -19
  169. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_cascade/pipeline_stable_cascade_prior.py +33 -32
  170. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/__init__.py +0 -1
  171. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/convert_from_ckpt.py +18 -11
  172. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/pipeline_onnx_stable_diffusion.py +2 -2
  173. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/pipeline_onnx_stable_diffusion_upscale.py +6 -6
  174. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion.py +73 -39
  175. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_depth2img.py +24 -17
  176. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_image_variation.py +13 -8
  177. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_img2img.py +66 -36
  178. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_inpaint.py +82 -46
  179. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_instruct_pix2pix.py +123 -28
  180. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_latent_upscale.py +6 -6
  181. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_upscale.py +16 -16
  182. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_unclip.py +24 -19
  183. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_unclip_img2img.py +37 -31
  184. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/safety_checker.py +2 -1
  185. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_attend_and_excite/pipeline_stable_diffusion_attend_and_excite.py +23 -15
  186. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_diffedit/pipeline_stable_diffusion_diffedit.py +44 -39
  187. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_gligen/pipeline_stable_diffusion_gligen.py +23 -18
  188. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_gligen/pipeline_stable_diffusion_gligen_text_image.py +19 -14
  189. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_k_diffusion/pipeline_stable_diffusion_k_diffusion.py +20 -15
  190. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_k_diffusion/pipeline_stable_diffusion_xl_k_diffusion.py +24 -19
  191. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_ldm3d/pipeline_stable_diffusion_ldm3d.py +65 -32
  192. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_panorama/pipeline_stable_diffusion_panorama.py +274 -38
  193. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_safe/pipeline_stable_diffusion_safe.py +10 -5
  194. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_safe/safety_checker.py +1 -1
  195. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_sag/pipeline_stable_diffusion_sag.py +92 -25
  196. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_xl/pipeline_stable_diffusion_xl.py +88 -44
  197. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_xl/pipeline_stable_diffusion_xl_img2img.py +108 -56
  198. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_xl/pipeline_stable_diffusion_xl_inpaint.py +96 -51
  199. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_xl/pipeline_stable_diffusion_xl_instruct_pix2pix.py +45 -25
  200. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_xl/watermark.py +9 -3
  201. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_video_diffusion/pipeline_stable_video_diffusion.py +110 -57
  202. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/t2i_adapter/pipeline_stable_diffusion_adapter.py +59 -30
  203. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/t2i_adapter/pipeline_stable_diffusion_xl_adapter.py +71 -42
  204. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/text_to_video_synthesis/pipeline_output.py +3 -2
  205. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/text_to_video_synthesis/pipeline_text_to_video_synth.py +18 -41
  206. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/text_to_video_synthesis/pipeline_text_to_video_synth_img2img.py +21 -85
  207. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/text_to_video_synthesis/pipeline_text_to_video_zero.py +28 -19
  208. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/text_to_video_synthesis/pipeline_text_to_video_zero_sdxl.py +39 -33
  209. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/unclip/pipeline_unclip.py +6 -6
  210. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/unclip/pipeline_unclip_image_variation.py +6 -6
  211. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/unidiffuser/modeling_text_decoder.py +1 -1
  212. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/unidiffuser/modeling_uvit.py +9 -9
  213. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/unidiffuser/pipeline_unidiffuser.py +23 -23
  214. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/wuerstchen/modeling_paella_vq_model.py +5 -5
  215. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/wuerstchen/modeling_wuerstchen_common.py +5 -10
  216. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/wuerstchen/modeling_wuerstchen_prior.py +4 -6
  217. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/wuerstchen/pipeline_wuerstchen.py +4 -4
  218. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/wuerstchen/pipeline_wuerstchen_combined.py +12 -12
  219. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/wuerstchen/pipeline_wuerstchen_prior.py +10 -10
  220. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/__init__.py +2 -2
  221. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/deprecated/__init__.py +1 -1
  222. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/deprecated/scheduling_karras_ve.py +25 -25
  223. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_amused.py +5 -5
  224. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_consistency_decoder.py +11 -11
  225. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_consistency_models.py +20 -26
  226. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_ddim.py +22 -24
  227. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_ddim_flax.py +2 -1
  228. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_ddim_inverse.py +16 -16
  229. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_ddim_parallel.py +28 -30
  230. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_ddpm.py +20 -22
  231. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_ddpm_flax.py +7 -3
  232. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_ddpm_parallel.py +26 -28
  233. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_ddpm_wuerstchen.py +14 -14
  234. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_deis_multistep.py +42 -42
  235. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_dpmsolver_multistep.py +103 -77
  236. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_dpmsolver_multistep_flax.py +2 -2
  237. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_dpmsolver_multistep_inverse.py +46 -46
  238. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_dpmsolver_sde.py +23 -23
  239. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_dpmsolver_singlestep.py +86 -65
  240. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_edm_dpmsolver_multistep.py +75 -54
  241. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_edm_euler.py +50 -31
  242. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_euler_ancestral_discrete.py +23 -29
  243. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_euler_discrete.py +160 -68
  244. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_heun_discrete.py +57 -39
  245. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_ipndm.py +8 -8
  246. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_k_dpm_2_ancestral_discrete.py +19 -19
  247. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_k_dpm_2_discrete.py +19 -19
  248. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_karras_ve_flax.py +6 -6
  249. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_lcm.py +21 -23
  250. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_lms_discrete.py +24 -26
  251. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_pndm.py +20 -20
  252. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_repaint.py +20 -20
  253. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_sasolver.py +55 -54
  254. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_sde_ve.py +19 -19
  255. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_tcd.py +39 -30
  256. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_unclip.py +15 -15
  257. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_unipc_multistep.py +111 -41
  258. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_utils.py +14 -5
  259. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_utils_flax.py +3 -3
  260. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_vq_diffusion.py +10 -10
  261. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/training_utils.py +56 -1
  262. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/__init__.py +7 -0
  263. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/doc_utils.py +1 -0
  264. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/dummy_pt_objects.py +75 -0
  265. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/dummy_torch_and_transformers_objects.py +105 -0
  266. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/dynamic_modules_utils.py +24 -11
  267. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/hub_utils.py +3 -2
  268. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/import_utils.py +91 -0
  269. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/loading_utils.py +2 -2
  270. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/logging.py +1 -1
  271. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/peft_utils.py +32 -5
  272. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/state_dict_utils.py +11 -2
  273. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/testing_utils.py +71 -6
  274. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/torch_utils.py +1 -0
  275. diffusers-0.28.1/src/diffusers/video_processor.py +113 -0
  276. {diffusers-0.27.2 → diffusers-0.28.1/src/diffusers.egg-info}/PKG-INFO +79 -5
  277. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers.egg-info/SOURCES.txt +20 -0
  278. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers.egg-info/requires.txt +3 -3
  279. diffusers-0.27.2/src/diffusers/commands/env.py +0 -84
  280. diffusers-0.27.2/src/diffusers/loaders/single_file.py +0 -318
  281. diffusers-0.27.2/src/diffusers/models/modeling_outputs.py +0 -17
  282. {diffusers-0.27.2 → diffusers-0.28.1}/LICENSE +0 -0
  283. {diffusers-0.27.2 → diffusers-0.28.1}/MANIFEST.in +0 -0
  284. {diffusers-0.27.2 → diffusers-0.28.1}/setup.cfg +0 -0
  285. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/commands/__init__.py +0 -0
  286. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/commands/diffusers_cli.py +0 -0
  287. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/commands/fp16_safetensors.py +0 -0
  288. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/dependency_versions_check.py +0 -0
  289. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/experimental/__init__.py +0 -0
  290. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/experimental/rl/__init__.py +0 -0
  291. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/experimental/rl/value_guided_sampling.py +0 -0
  292. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/loaders/utils.py +0 -0
  293. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/adapter.py +0 -0
  294. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/attention_flax.py +0 -0
  295. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/autoencoders/__init__.py +0 -0
  296. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/dual_transformer_2d.py +0 -0
  297. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/embeddings_flax.py +0 -0
  298. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/lora.py +0 -0
  299. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/prior_transformer.py +0 -0
  300. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/resnet_flax.py +0 -0
  301. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/t5_film_transformer.py +0 -0
  302. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/transformer_2d.py +0 -0
  303. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/unet_1d.py +0 -0
  304. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/unet_1d_blocks.py +0 -0
  305. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/unet_2d.py +0 -0
  306. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/unet_2d_blocks.py +0 -0
  307. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/unet_2d_condition.py +0 -0
  308. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/unets/__init__.py +0 -0
  309. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/unets/unet_2d_blocks_flax.py +0 -0
  310. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/unets/uvit_2d.py +0 -0
  311. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/models/vae_flax.py +0 -0
  312. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/optimization.py +0 -0
  313. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/amused/__init__.py +0 -0
  314. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/audioldm/__init__.py +0 -0
  315. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/audioldm2/__init__.py +0 -0
  316. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/blip_diffusion/__init__.py +0 -0
  317. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/consistency_models/__init__.py +0 -0
  318. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/controlnet/__init__.py +0 -0
  319. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/controlnet/pipeline_flax_controlnet.py +0 -0
  320. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/dance_diffusion/__init__.py +0 -0
  321. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/dance_diffusion/pipeline_dance_diffusion.py +0 -0
  322. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/ddim/__init__.py +0 -0
  323. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/ddim/pipeline_ddim.py +0 -0
  324. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/ddpm/__init__.py +0 -0
  325. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/ddpm/pipeline_ddpm.py +0 -0
  326. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deepfloyd_if/__init__.py +0 -0
  327. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deepfloyd_if/pipeline_output.py +0 -0
  328. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deepfloyd_if/safety_checker.py +0 -0
  329. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deepfloyd_if/timesteps.py +0 -0
  330. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deepfloyd_if/watermark.py +0 -0
  331. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/__init__.py +0 -0
  332. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/alt_diffusion/__init__.py +0 -0
  333. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/alt_diffusion/pipeline_output.py +0 -0
  334. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/audio_diffusion/__init__.py +0 -0
  335. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/audio_diffusion/mel.py +0 -0
  336. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/audio_diffusion/pipeline_audio_diffusion.py +0 -0
  337. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/latent_diffusion_uncond/__init__.py +0 -0
  338. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/latent_diffusion_uncond/pipeline_latent_diffusion_uncond.py +0 -0
  339. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/pndm/__init__.py +0 -0
  340. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/pndm/pipeline_pndm.py +0 -0
  341. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/repaint/__init__.py +0 -0
  342. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/score_sde_ve/__init__.py +0 -0
  343. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/score_sde_ve/pipeline_score_sde_ve.py +0 -0
  344. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/spectrogram_diffusion/__init__.py +0 -0
  345. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/spectrogram_diffusion/continuous_encoder.py +0 -0
  346. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/spectrogram_diffusion/midi_utils.py +0 -0
  347. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/spectrogram_diffusion/notes_encoder.py +0 -0
  348. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/stable_diffusion_variants/__init__.py +0 -0
  349. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/stable_diffusion_variants/pipeline_onnx_stable_diffusion_inpaint_legacy.py +0 -0
  350. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/stochastic_karras_ve/__init__.py +0 -0
  351. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/stochastic_karras_ve/pipeline_stochastic_karras_ve.py +0 -0
  352. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/versatile_diffusion/__init__.py +0 -0
  353. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/deprecated/vq_diffusion/__init__.py +0 -0
  354. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/dit/__init__.py +0 -0
  355. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/i2vgen_xl/__init__.py +0 -0
  356. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/kandinsky/__init__.py +0 -0
  357. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/kandinsky/text_encoder.py +0 -0
  358. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/kandinsky2_2/__init__.py +0 -0
  359. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/kandinsky3/__init__.py +0 -0
  360. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/latent_consistency_models/__init__.py +0 -0
  361. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/latent_diffusion/__init__.py +0 -0
  362. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/latent_diffusion/pipeline_latent_diffusion_superresolution.py +0 -0
  363. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/ledits_pp/__init__.py +0 -0
  364. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/musicldm/__init__.py +0 -0
  365. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/onnx_utils.py +0 -0
  366. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/paint_by_example/__init__.py +0 -0
  367. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/paint_by_example/image_encoder.py +0 -0
  368. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/pia/__init__.py +0 -0
  369. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/semantic_stable_diffusion/__init__.py +0 -0
  370. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/semantic_stable_diffusion/pipeline_output.py +0 -0
  371. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/shap_e/__init__.py +0 -0
  372. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/shap_e/camera.py +0 -0
  373. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_cascade/__init__.py +0 -0
  374. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/clip_image_project_model.py +0 -0
  375. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/pipeline_flax_stable_diffusion.py +0 -0
  376. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/pipeline_flax_stable_diffusion_img2img.py +0 -0
  377. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/pipeline_flax_stable_diffusion_inpaint.py +0 -0
  378. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/pipeline_onnx_stable_diffusion_img2img.py +0 -0
  379. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/pipeline_onnx_stable_diffusion_inpaint.py +0 -0
  380. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/pipeline_output.py +0 -0
  381. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/safety_checker_flax.py +0 -0
  382. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion/stable_unclip_image_normalizer.py +0 -0
  383. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_attend_and_excite/__init__.py +0 -0
  384. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_diffedit/__init__.py +0 -0
  385. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_gligen/__init__.py +0 -0
  386. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_k_diffusion/__init__.py +0 -0
  387. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_ldm3d/__init__.py +0 -0
  388. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_panorama/__init__.py +0 -0
  389. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_safe/__init__.py +0 -0
  390. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_safe/pipeline_output.py +0 -0
  391. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_sag/__init__.py +0 -0
  392. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_xl/__init__.py +0 -0
  393. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_xl/pipeline_flax_stable_diffusion_xl.py +0 -0
  394. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_diffusion_xl/pipeline_output.py +0 -0
  395. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/stable_video_diffusion/__init__.py +0 -0
  396. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/t2i_adapter/__init__.py +0 -0
  397. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/text_to_video_synthesis/__init__.py +0 -0
  398. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/unclip/__init__.py +0 -0
  399. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/unclip/text_proj.py +0 -0
  400. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/unidiffuser/__init__.py +0 -0
  401. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/wuerstchen/__init__.py +0 -0
  402. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/pipelines/wuerstchen/modeling_wuerstchen_diffnext.py +0 -0
  403. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/py.typed +0 -0
  404. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/deprecated/scheduling_sde_vp.py +0 -0
  405. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_euler_discrete_flax.py +0 -0
  406. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_lms_discrete_flax.py +0 -0
  407. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_pndm_flax.py +0 -0
  408. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/schedulers/scheduling_sde_ve_flax.py +0 -0
  409. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/accelerate_utils.py +0 -0
  410. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/constants.py +0 -0
  411. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/deprecation_utils.py +0 -0
  412. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/dummy_flax_and_transformers_objects.py +0 -0
  413. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/dummy_flax_objects.py +0 -0
  414. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/dummy_note_seq_objects.py +0 -0
  415. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/dummy_onnx_objects.py +0 -0
  416. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/dummy_torch_and_librosa_objects.py +0 -0
  417. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/dummy_torch_and_scipy_objects.py +0 -0
  418. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/dummy_torch_and_torchsde_objects.py +0 -0
  419. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/dummy_torch_and_transformers_and_k_diffusion_objects.py +0 -0
  420. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/dummy_torch_and_transformers_and_onnx_objects.py +0 -0
  421. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/dummy_transformers_and_torch_and_note_seq_objects.py +0 -0
  422. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/export_utils.py +0 -0
  423. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/model_card_template.md +0 -0
  424. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/outputs.py +0 -0
  425. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/pil_utils.py +0 -0
  426. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers/utils/versions.py +0 -0
  427. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers.egg-info/dependency_links.txt +0 -0
  428. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers.egg-info/entry_points.txt +0 -0
  429. {diffusers-0.27.2 → diffusers-0.28.1}/src/diffusers.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: diffusers
3
- Version: 0.27.2
3
+ Version: 0.28.1
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)
@@ -20,14 +20,88 @@ Classifier: Programming Language :: Python :: 3.9
20
20
  Classifier: Programming Language :: Python :: 3.10
21
21
  Requires-Python: >=3.8.0
22
22
  Description-Content-Type: text/markdown
23
+ License-File: LICENSE
24
+ Requires-Dist: importlib_metadata
25
+ Requires-Dist: filelock
26
+ Requires-Dist: huggingface-hub>=0.20.2
27
+ Requires-Dist: numpy
28
+ Requires-Dist: regex!=2019.12.17
29
+ Requires-Dist: requests
30
+ Requires-Dist: safetensors>=0.3.1
31
+ Requires-Dist: Pillow
23
32
  Provides-Extra: quality
33
+ Requires-Dist: urllib3<=2.0.0; extra == "quality"
34
+ Requires-Dist: isort>=5.5.4; extra == "quality"
35
+ Requires-Dist: ruff==0.1.5; extra == "quality"
36
+ Requires-Dist: hf-doc-builder>=0.3.0; extra == "quality"
24
37
  Provides-Extra: docs
38
+ Requires-Dist: hf-doc-builder>=0.3.0; extra == "docs"
25
39
  Provides-Extra: training
40
+ Requires-Dist: accelerate>=0.29.3; extra == "training"
41
+ Requires-Dist: datasets; extra == "training"
42
+ Requires-Dist: protobuf<4,>=3.20.3; extra == "training"
43
+ Requires-Dist: tensorboard; extra == "training"
44
+ Requires-Dist: Jinja2; extra == "training"
45
+ Requires-Dist: peft>=0.6.0; extra == "training"
26
46
  Provides-Extra: test
47
+ Requires-Dist: compel==0.1.8; extra == "test"
48
+ Requires-Dist: GitPython<3.1.19; extra == "test"
49
+ Requires-Dist: datasets; extra == "test"
50
+ Requires-Dist: Jinja2; extra == "test"
51
+ Requires-Dist: invisible-watermark>=0.2.0; extra == "test"
52
+ Requires-Dist: k-diffusion>=0.0.12; extra == "test"
53
+ Requires-Dist: librosa; extra == "test"
54
+ Requires-Dist: parameterized; extra == "test"
55
+ Requires-Dist: pytest; extra == "test"
56
+ Requires-Dist: pytest-timeout; extra == "test"
57
+ Requires-Dist: pytest-xdist; extra == "test"
58
+ Requires-Dist: requests-mock==1.10.0; extra == "test"
59
+ Requires-Dist: safetensors>=0.3.1; extra == "test"
60
+ Requires-Dist: sentencepiece!=0.1.92,>=0.1.91; extra == "test"
61
+ Requires-Dist: scipy; extra == "test"
62
+ Requires-Dist: torchvision; extra == "test"
63
+ Requires-Dist: transformers>=4.25.1; extra == "test"
27
64
  Provides-Extra: torch
65
+ Requires-Dist: torch>=1.4; extra == "torch"
66
+ Requires-Dist: accelerate>=0.29.3; extra == "torch"
28
67
  Provides-Extra: flax
68
+ Requires-Dist: jax>=0.4.1; extra == "flax"
69
+ Requires-Dist: jaxlib>=0.4.1; extra == "flax"
70
+ Requires-Dist: flax>=0.4.1; extra == "flax"
29
71
  Provides-Extra: dev
30
- License-File: LICENSE
72
+ Requires-Dist: urllib3<=2.0.0; extra == "dev"
73
+ Requires-Dist: isort>=5.5.4; extra == "dev"
74
+ Requires-Dist: ruff==0.1.5; extra == "dev"
75
+ Requires-Dist: hf-doc-builder>=0.3.0; extra == "dev"
76
+ Requires-Dist: compel==0.1.8; extra == "dev"
77
+ Requires-Dist: GitPython<3.1.19; extra == "dev"
78
+ Requires-Dist: datasets; extra == "dev"
79
+ Requires-Dist: Jinja2; extra == "dev"
80
+ Requires-Dist: invisible-watermark>=0.2.0; extra == "dev"
81
+ Requires-Dist: k-diffusion>=0.0.12; extra == "dev"
82
+ Requires-Dist: librosa; extra == "dev"
83
+ Requires-Dist: parameterized; extra == "dev"
84
+ Requires-Dist: pytest; extra == "dev"
85
+ Requires-Dist: pytest-timeout; extra == "dev"
86
+ Requires-Dist: pytest-xdist; extra == "dev"
87
+ Requires-Dist: requests-mock==1.10.0; extra == "dev"
88
+ Requires-Dist: safetensors>=0.3.1; extra == "dev"
89
+ Requires-Dist: sentencepiece!=0.1.92,>=0.1.91; extra == "dev"
90
+ Requires-Dist: scipy; extra == "dev"
91
+ Requires-Dist: torchvision; extra == "dev"
92
+ Requires-Dist: transformers>=4.25.1; extra == "dev"
93
+ Requires-Dist: accelerate>=0.29.3; extra == "dev"
94
+ Requires-Dist: datasets; extra == "dev"
95
+ Requires-Dist: protobuf<4,>=3.20.3; extra == "dev"
96
+ Requires-Dist: tensorboard; extra == "dev"
97
+ Requires-Dist: Jinja2; extra == "dev"
98
+ Requires-Dist: peft>=0.6.0; extra == "dev"
99
+ Requires-Dist: hf-doc-builder>=0.3.0; extra == "dev"
100
+ Requires-Dist: torch>=1.4; extra == "dev"
101
+ Requires-Dist: accelerate>=0.29.3; extra == "dev"
102
+ Requires-Dist: jax>=0.4.1; extra == "dev"
103
+ Requires-Dist: jaxlib>=0.4.1; extra == "dev"
104
+ Requires-Dist: flax>=0.4.1; extra == "dev"
31
105
 
32
106
  <!---
33
107
  Copyright 2022 - The HuggingFace Team. All rights reserved.
@@ -108,7 +182,7 @@ Please refer to the [How to use Stable Diffusion in Apple Silicon](https://huggi
108
182
 
109
183
  ## Quickstart
110
184
 
111
- Generating outputs is super easy with 🤗 Diffusers. To generate an image from text, use the `from_pretrained` method to load any pretrained diffusion model (browse the [Hub](https://huggingface.co/models?library=diffusers&sort=downloads) for 19000+ checkpoints):
185
+ Generating outputs is super easy with 🤗 Diffusers. To generate an image from text, use the `from_pretrained` method to load any pretrained diffusion model (browse the [Hub](https://huggingface.co/models?library=diffusers&sort=downloads) for 25.000+ checkpoints):
112
186
 
113
187
  ```python
114
188
  from diffusers import DiffusionPipeline
@@ -250,7 +324,7 @@ Also, say 👋 in our public Discord channel <a href="https://discord.gg/G7tWnz9
250
324
  - https://github.com/deep-floyd/IF
251
325
  - https://github.com/bentoml/BentoML
252
326
  - https://github.com/bmaltais/kohya_ss
253
- - +8000 other amazing GitHub repositories 💪
327
+ - +11.000 other amazing GitHub repositories 💪
254
328
 
255
329
  Thank you for using us ❤️.
256
330
 
@@ -269,7 +343,7 @@ We also want to thank @heejkoo for the very helpful overview of papers, code and
269
343
 
270
344
  ```bibtex
271
345
  @misc{von-platen-etal-2022-diffusers,
272
- author = {Patrick von Platen and Suraj Patil and Anton Lozhkov and Pedro Cuenca and Nathan Lambert and Kashif Rasul and Mishig Davaadorj and Thomas Wolf},
346
+ author = {Patrick von Platen and Suraj Patil and Anton Lozhkov and Pedro Cuenca and Nathan Lambert and Kashif Rasul and Mishig Davaadorj and Dhruv Nair and Sayak Paul and William Berman and Yiyi Xu and Steven Liu and Thomas Wolf},
273
347
  title = {Diffusers: State-of-the-art diffusion models},
274
348
  year = {2022},
275
349
  publisher = {GitHub},
@@ -77,7 +77,7 @@ Please refer to the [How to use Stable Diffusion in Apple Silicon](https://huggi
77
77
 
78
78
  ## Quickstart
79
79
 
80
- Generating outputs is super easy with 🤗 Diffusers. To generate an image from text, use the `from_pretrained` method to load any pretrained diffusion model (browse the [Hub](https://huggingface.co/models?library=diffusers&sort=downloads) for 19000+ checkpoints):
80
+ Generating outputs is super easy with 🤗 Diffusers. To generate an image from text, use the `from_pretrained` method to load any pretrained diffusion model (browse the [Hub](https://huggingface.co/models?library=diffusers&sort=downloads) for 25.000+ checkpoints):
81
81
 
82
82
  ```python
83
83
  from diffusers import DiffusionPipeline
@@ -219,7 +219,7 @@ Also, say 👋 in our public Discord channel <a href="https://discord.gg/G7tWnz9
219
219
  - https://github.com/deep-floyd/IF
220
220
  - https://github.com/bentoml/BentoML
221
221
  - https://github.com/bmaltais/kohya_ss
222
- - +8000 other amazing GitHub repositories 💪
222
+ - +11.000 other amazing GitHub repositories 💪
223
223
 
224
224
  Thank you for using us ❤️.
225
225
 
@@ -238,7 +238,7 @@ We also want to thank @heejkoo for the very helpful overview of papers, code and
238
238
 
239
239
  ```bibtex
240
240
  @misc{von-platen-etal-2022-diffusers,
241
- author = {Patrick von Platen and Suraj Patil and Anton Lozhkov and Pedro Cuenca and Nathan Lambert and Kashif Rasul and Mishig Davaadorj and Thomas Wolf},
241
+ author = {Patrick von Platen and Suraj Patil and Anton Lozhkov and Pedro Cuenca and Nathan Lambert and Kashif Rasul and Mishig Davaadorj and Dhruv Nair and Sayak Paul and William Berman and Yiyi Xu and Steven Liu and Thomas Wolf},
242
242
  title = {Diffusers: State-of-the-art diffusion models},
243
243
  year = {2022},
244
244
  publisher = {GitHub},
@@ -1,15 +1,17 @@
1
1
  [tool.ruff]
2
+ line-length = 119
3
+
4
+ [tool.ruff.lint]
2
5
  # Never enforce `E501` (line length violations).
3
6
  ignore = ["C901", "E501", "E741", "F402", "F823"]
4
7
  select = ["C", "E", "F", "I", "W"]
5
- line-length = 119
6
8
 
7
9
  # Ignore import violations in all `__init__.py` files.
8
- [tool.ruff.per-file-ignores]
10
+ [tool.ruff.lint.per-file-ignores]
9
11
  "__init__.py" = ["E402", "F401", "F403", "F811"]
10
12
  "src/diffusers/utils/dummy_*.py" = ["F401"]
11
13
 
12
- [tool.ruff.isort]
14
+ [tool.ruff.lint.isort]
13
15
  lines-after-imports = 2
14
16
  known-first-party = ["diffusers"]
15
17
 
@@ -23,13 +23,14 @@ To create the package for PyPI.
23
23
  If releasing on a special branch, copy the updated README.md on the main branch for the commit you will make
24
24
  for the post-release and run `make fix-copies` on the main branch as well.
25
25
 
26
- 2. Run Tests for Amazon Sagemaker. The documentation is located in `./tests/sagemaker/README.md`, otherwise @philschmid.
26
+ 2. Unpin specific versions from setup.py that use a git install.
27
27
 
28
- 3. Unpin specific versions from setup.py that use a git install.
29
-
30
- 4. Checkout the release branch (v<RELEASE>-release, for example v4.19-release), and commit these changes with the
28
+ 3. Checkout the release branch (v<RELEASE>-release, for example v4.19-release), and commit these changes with the
31
29
  message: "Release: <RELEASE>" and push.
32
30
 
31
+ 4. Manually trigger the "Nightly and release tests on main/release branch" workflow from the release branch. Wait for
32
+ the tests to complete. We can safely ignore the known test failures.
33
+
33
34
  5. Wait for the tests on main to be completed and be green (otherwise revert and fix bugs).
34
35
 
35
36
  6. Add a tag in git to mark the release: "git tag v<RELEASE> -m 'Adds tag v<RELEASE> for PyPI'"
@@ -72,7 +73,11 @@ To create the package for PyPI.
72
73
  9. Upload the final version to the actual PyPI:
73
74
  twine upload dist/* -r pypi
74
75
 
75
- 10. Prepare the release notes and publish them on GitHub once everything is looking hunky-dory.
76
+ 10. Prepare the release notes and publish them on GitHub once everything is looking hunky-dory. You can use the following
77
+ Space to fetch all the commits applicable for the release: https://huggingface.co/spaces/lysandre/github-release. Repo should
78
+ be `huggingface/diffusers`. `tag` should be the previous release tag (v0.26.1, for example), and `branch` should be
79
+ the latest release branch (v0.27.0-release, for example). It denotes all commits that have happened on branch
80
+ v0.27.0-release after the tag v0.26.1 was created.
76
81
 
77
82
  11. Run `make post-release` (or, for a patch release, `make post-patch`). If you were on a branch for the release,
78
83
  you need to go back to main before executing this.
@@ -81,9 +86,8 @@ To create the package for PyPI.
81
86
  import os
82
87
  import re
83
88
  import sys
84
- from distutils.core import Command
85
89
 
86
- from setuptools import find_packages, setup
90
+ from setuptools import Command, find_packages, setup
87
91
 
88
92
 
89
93
  # IMPORTANT:
@@ -91,7 +95,7 @@ from setuptools import find_packages, setup
91
95
  # 2. once modified, run: `make deps_table_update` to update src/diffusers/dependency_versions_table.py
92
96
  _deps = [
93
97
  "Pillow", # keep the PIL.Image.Resampling deprecation away
94
- "accelerate>=0.11.0",
98
+ "accelerate>=0.29.3",
95
99
  "compel==0.1.8",
96
100
  "datasets",
97
101
  "filelock",
@@ -130,6 +134,7 @@ _deps = [
130
134
  "torchvision",
131
135
  "transformers>=4.25.1",
132
136
  "urllib3<=2.0.0",
137
+ "black",
133
138
  ]
134
139
 
135
140
  # this is a lookup table with items like:
@@ -163,7 +168,7 @@ def deps_list(*pkgs):
163
168
 
164
169
  class DepsTableUpdateCommand(Command):
165
170
  """
166
- A custom distutils command that updates the dependency table.
171
+ A custom command that updates the dependency table.
167
172
  usage: python setup.py deps_table_update
168
173
  """
169
174
 
@@ -249,7 +254,7 @@ version_range_max = max(sys.version_info[1], 10) + 1
249
254
 
250
255
  setup(
251
256
  name="diffusers",
252
- version="0.27.2", # expected format is one of x.y.z.dev0, or x.y.z.rc1 or x.y.z (no to dashes, yes to dots)
257
+ version="0.28.1", # expected format is one of x.y.z.dev0, or x.y.z.rc1 or x.y.z (no to dashes, yes to dots)
253
258
  description="State-of-the-art diffusion in PyTorch and JAX.",
254
259
  long_description=open("README.md", "r", encoding="utf-8").read(),
255
260
  long_description_content_type="text/markdown",
@@ -1,4 +1,4 @@
1
- __version__ = "0.27.2"
1
+ __version__ = "0.28.1"
2
2
 
3
3
  from typing import TYPE_CHECKING
4
4
 
@@ -27,6 +27,7 @@ from .utils import (
27
27
 
28
28
  _import_structure = {
29
29
  "configuration_utils": ["ConfigMixin"],
30
+ "loaders": ["FromOriginalModelMixin"],
30
31
  "models": [],
31
32
  "pipelines": [],
32
33
  "schedulers": [],
@@ -80,11 +81,15 @@ else:
80
81
  "AutoencoderTiny",
81
82
  "ConsistencyDecoderVAE",
82
83
  "ControlNetModel",
84
+ "ControlNetXSAdapter",
85
+ "DiTTransformer2DModel",
86
+ "HunyuanDiT2DModel",
83
87
  "I2VGenXLUNet",
84
88
  "Kandinsky3UNet",
85
89
  "ModelMixin",
86
90
  "MotionAdapter",
87
91
  "MultiAdapter",
92
+ "PixArtTransformer2DModel",
88
93
  "PriorTransformer",
89
94
  "StableCascadeUNet",
90
95
  "T2IAdapter",
@@ -94,6 +99,7 @@ else:
94
99
  "UNet2DConditionModel",
95
100
  "UNet2DModel",
96
101
  "UNet3DConditionModel",
102
+ "UNetControlNetXSModel",
97
103
  "UNetMotionModel",
98
104
  "UNetSpatioTemporalConditionModel",
99
105
  "UVit2DModel",
@@ -214,6 +220,7 @@ else:
214
220
  "AmusedInpaintPipeline",
215
221
  "AmusedPipeline",
216
222
  "AnimateDiffPipeline",
223
+ "AnimateDiffSDXLPipeline",
217
224
  "AnimateDiffVideoToVideoPipeline",
218
225
  "AudioLDM2Pipeline",
219
226
  "AudioLDM2ProjectionModel",
@@ -223,6 +230,7 @@ else:
223
230
  "BlipDiffusionPipeline",
224
231
  "CLIPImageProjection",
225
232
  "CycleDiffusionPipeline",
233
+ "HunyuanDiTPipeline",
226
234
  "I2VGenXLPipeline",
227
235
  "IFImg2ImgPipeline",
228
236
  "IFImg2ImgSuperResolutionPipeline",
@@ -255,10 +263,13 @@ else:
255
263
  "LDMTextToImagePipeline",
256
264
  "LEditsPPPipelineStableDiffusion",
257
265
  "LEditsPPPipelineStableDiffusionXL",
266
+ "MarigoldDepthPipeline",
267
+ "MarigoldNormalsPipeline",
258
268
  "MusicLDMPipeline",
259
269
  "PaintByExamplePipeline",
260
270
  "PIAPipeline",
261
271
  "PixArtAlphaPipeline",
272
+ "PixArtSigmaPipeline",
262
273
  "SemanticStableDiffusionPipeline",
263
274
  "ShapEImg2ImgPipeline",
264
275
  "ShapEPipeline",
@@ -270,6 +281,7 @@ else:
270
281
  "StableDiffusionControlNetImg2ImgPipeline",
271
282
  "StableDiffusionControlNetInpaintPipeline",
272
283
  "StableDiffusionControlNetPipeline",
284
+ "StableDiffusionControlNetXSPipeline",
273
285
  "StableDiffusionDepth2ImgPipeline",
274
286
  "StableDiffusionDiffEditPipeline",
275
287
  "StableDiffusionGLIGENPipeline",
@@ -293,6 +305,7 @@ else:
293
305
  "StableDiffusionXLControlNetImg2ImgPipeline",
294
306
  "StableDiffusionXLControlNetInpaintPipeline",
295
307
  "StableDiffusionXLControlNetPipeline",
308
+ "StableDiffusionXLControlNetXSPipeline",
296
309
  "StableDiffusionXLImg2ImgPipeline",
297
310
  "StableDiffusionXLInpaintPipeline",
298
311
  "StableDiffusionXLInstructPix2PixPipeline",
@@ -474,11 +487,15 @@ if TYPE_CHECKING or DIFFUSERS_SLOW_IMPORT:
474
487
  AutoencoderTiny,
475
488
  ConsistencyDecoderVAE,
476
489
  ControlNetModel,
490
+ ControlNetXSAdapter,
491
+ DiTTransformer2DModel,
492
+ HunyuanDiT2DModel,
477
493
  I2VGenXLUNet,
478
494
  Kandinsky3UNet,
479
495
  ModelMixin,
480
496
  MotionAdapter,
481
497
  MultiAdapter,
498
+ PixArtTransformer2DModel,
482
499
  PriorTransformer,
483
500
  T2IAdapter,
484
501
  T5FilmDecoder,
@@ -487,6 +504,7 @@ if TYPE_CHECKING or DIFFUSERS_SLOW_IMPORT:
487
504
  UNet2DConditionModel,
488
505
  UNet2DModel,
489
506
  UNet3DConditionModel,
507
+ UNetControlNetXSModel,
490
508
  UNetMotionModel,
491
509
  UNetSpatioTemporalConditionModel,
492
510
  UVit2DModel,
@@ -588,6 +606,7 @@ if TYPE_CHECKING or DIFFUSERS_SLOW_IMPORT:
588
606
  AmusedInpaintPipeline,
589
607
  AmusedPipeline,
590
608
  AnimateDiffPipeline,
609
+ AnimateDiffSDXLPipeline,
591
610
  AnimateDiffVideoToVideoPipeline,
592
611
  AudioLDM2Pipeline,
593
612
  AudioLDM2ProjectionModel,
@@ -595,6 +614,7 @@ if TYPE_CHECKING or DIFFUSERS_SLOW_IMPORT:
595
614
  AudioLDMPipeline,
596
615
  CLIPImageProjection,
597
616
  CycleDiffusionPipeline,
617
+ HunyuanDiTPipeline,
598
618
  I2VGenXLPipeline,
599
619
  IFImg2ImgPipeline,
600
620
  IFImg2ImgSuperResolutionPipeline,
@@ -627,10 +647,13 @@ if TYPE_CHECKING or DIFFUSERS_SLOW_IMPORT:
627
647
  LDMTextToImagePipeline,
628
648
  LEditsPPPipelineStableDiffusion,
629
649
  LEditsPPPipelineStableDiffusionXL,
650
+ MarigoldDepthPipeline,
651
+ MarigoldNormalsPipeline,
630
652
  MusicLDMPipeline,
631
653
  PaintByExamplePipeline,
632
654
  PIAPipeline,
633
655
  PixArtAlphaPipeline,
656
+ PixArtSigmaPipeline,
634
657
  SemanticStableDiffusionPipeline,
635
658
  ShapEImg2ImgPipeline,
636
659
  ShapEPipeline,
@@ -642,6 +665,7 @@ if TYPE_CHECKING or DIFFUSERS_SLOW_IMPORT:
642
665
  StableDiffusionControlNetImg2ImgPipeline,
643
666
  StableDiffusionControlNetInpaintPipeline,
644
667
  StableDiffusionControlNetPipeline,
668
+ StableDiffusionControlNetXSPipeline,
645
669
  StableDiffusionDepth2ImgPipeline,
646
670
  StableDiffusionDiffEditPipeline,
647
671
  StableDiffusionGLIGENPipeline,
@@ -665,6 +689,7 @@ if TYPE_CHECKING or DIFFUSERS_SLOW_IMPORT:
665
689
  StableDiffusionXLControlNetImg2ImgPipeline,
666
690
  StableDiffusionXLControlNetInpaintPipeline,
667
691
  StableDiffusionXLControlNetPipeline,
692
+ StableDiffusionXLControlNetXSPipeline,
668
693
  StableDiffusionXLImg2ImgPipeline,
669
694
  StableDiffusionXLInpaintPipeline,
670
695
  StableDiffusionXLInstructPix2PixPipeline,
@@ -0,0 +1,156 @@
1
+ from typing import Any, Dict, List
2
+
3
+ from .configuration_utils import ConfigMixin, register_to_config
4
+ from .utils import CONFIG_NAME
5
+
6
+
7
+ class PipelineCallback(ConfigMixin):
8
+ """
9
+ Base class for all the official callbacks used in a pipeline. This class provides a structure for implementing
10
+ custom callbacks and ensures that all callbacks have a consistent interface.
11
+
12
+ Please implement the following:
13
+ `tensor_inputs`: This should return a list of tensor inputs specific to your callback. You will only be able to
14
+ include
15
+ variables listed in the `._callback_tensor_inputs` attribute of your pipeline class.
16
+ `callback_fn`: This method defines the core functionality of your callback.
17
+ """
18
+
19
+ config_name = CONFIG_NAME
20
+
21
+ @register_to_config
22
+ def __init__(self, cutoff_step_ratio=1.0, cutoff_step_index=None):
23
+ super().__init__()
24
+
25
+ if (cutoff_step_ratio is None and cutoff_step_index is None) or (
26
+ cutoff_step_ratio is not None and cutoff_step_index is not None
27
+ ):
28
+ raise ValueError("Either cutoff_step_ratio or cutoff_step_index should be provided, not both or none.")
29
+
30
+ if cutoff_step_ratio is not None and (
31
+ not isinstance(cutoff_step_ratio, float) or not (0.0 <= cutoff_step_ratio <= 1.0)
32
+ ):
33
+ raise ValueError("cutoff_step_ratio must be a float between 0.0 and 1.0.")
34
+
35
+ @property
36
+ def tensor_inputs(self) -> List[str]:
37
+ raise NotImplementedError(f"You need to set the attribute `tensor_inputs` for {self.__class__}")
38
+
39
+ def callback_fn(self, pipeline, step_index, timesteps, callback_kwargs) -> Dict[str, Any]:
40
+ raise NotImplementedError(f"You need to implement the method `callback_fn` for {self.__class__}")
41
+
42
+ def __call__(self, pipeline, step_index, timestep, callback_kwargs) -> Dict[str, Any]:
43
+ return self.callback_fn(pipeline, step_index, timestep, callback_kwargs)
44
+
45
+
46
+ class MultiPipelineCallbacks:
47
+ """
48
+ This class is designed to handle multiple pipeline callbacks. It accepts a list of PipelineCallback objects and
49
+ provides a unified interface for calling all of them.
50
+ """
51
+
52
+ def __init__(self, callbacks: List[PipelineCallback]):
53
+ self.callbacks = callbacks
54
+
55
+ @property
56
+ def tensor_inputs(self) -> List[str]:
57
+ return [input for callback in self.callbacks for input in callback.tensor_inputs]
58
+
59
+ def __call__(self, pipeline, step_index, timestep, callback_kwargs) -> Dict[str, Any]:
60
+ """
61
+ Calls all the callbacks in order with the given arguments and returns the final callback_kwargs.
62
+ """
63
+ for callback in self.callbacks:
64
+ callback_kwargs = callback(pipeline, step_index, timestep, callback_kwargs)
65
+
66
+ return callback_kwargs
67
+
68
+
69
+ class SDCFGCutoffCallback(PipelineCallback):
70
+ """
71
+ Callback function for Stable Diffusion Pipelines. After certain number of steps (set by `cutoff_step_ratio` or
72
+ `cutoff_step_index`), this callback will disable the CFG.
73
+
74
+ Note: This callback mutates the pipeline by changing the `_guidance_scale` attribute to 0.0 after the cutoff step.
75
+ """
76
+
77
+ tensor_inputs = ["prompt_embeds"]
78
+
79
+ def callback_fn(self, pipeline, step_index, timestep, callback_kwargs) -> Dict[str, Any]:
80
+ cutoff_step_ratio = self.config.cutoff_step_ratio
81
+ cutoff_step_index = self.config.cutoff_step_index
82
+
83
+ # Use cutoff_step_index if it's not None, otherwise use cutoff_step_ratio
84
+ cutoff_step = (
85
+ cutoff_step_index if cutoff_step_index is not None else int(pipeline.num_timesteps * cutoff_step_ratio)
86
+ )
87
+
88
+ if step_index == cutoff_step:
89
+ prompt_embeds = callback_kwargs[self.tensor_inputs[0]]
90
+ prompt_embeds = prompt_embeds[-1:] # "-1" denotes the embeddings for conditional text tokens.
91
+
92
+ pipeline._guidance_scale = 0.0
93
+
94
+ callback_kwargs[self.tensor_inputs[0]] = prompt_embeds
95
+ return callback_kwargs
96
+
97
+
98
+ class SDXLCFGCutoffCallback(PipelineCallback):
99
+ """
100
+ Callback function for Stable Diffusion XL Pipelines. After certain number of steps (set by `cutoff_step_ratio` or
101
+ `cutoff_step_index`), this callback will disable the CFG.
102
+
103
+ Note: This callback mutates the pipeline by changing the `_guidance_scale` attribute to 0.0 after the cutoff step.
104
+ """
105
+
106
+ tensor_inputs = ["prompt_embeds", "add_text_embeds", "add_time_ids"]
107
+
108
+ def callback_fn(self, pipeline, step_index, timestep, callback_kwargs) -> Dict[str, Any]:
109
+ cutoff_step_ratio = self.config.cutoff_step_ratio
110
+ cutoff_step_index = self.config.cutoff_step_index
111
+
112
+ # Use cutoff_step_index if it's not None, otherwise use cutoff_step_ratio
113
+ cutoff_step = (
114
+ cutoff_step_index if cutoff_step_index is not None else int(pipeline.num_timesteps * cutoff_step_ratio)
115
+ )
116
+
117
+ if step_index == cutoff_step:
118
+ prompt_embeds = callback_kwargs[self.tensor_inputs[0]]
119
+ prompt_embeds = prompt_embeds[-1:] # "-1" denotes the embeddings for conditional text tokens.
120
+
121
+ add_text_embeds = callback_kwargs[self.tensor_inputs[1]]
122
+ add_text_embeds = add_text_embeds[-1:] # "-1" denotes the embeddings for conditional pooled text tokens
123
+
124
+ add_time_ids = callback_kwargs[self.tensor_inputs[2]]
125
+ add_time_ids = add_time_ids[-1:] # "-1" denotes the embeddings for conditional added time vector
126
+
127
+ pipeline._guidance_scale = 0.0
128
+
129
+ callback_kwargs[self.tensor_inputs[0]] = prompt_embeds
130
+ callback_kwargs[self.tensor_inputs[1]] = add_text_embeds
131
+ callback_kwargs[self.tensor_inputs[2]] = add_time_ids
132
+ return callback_kwargs
133
+
134
+
135
+ class IPAdapterScaleCutoffCallback(PipelineCallback):
136
+ """
137
+ Callback function for any pipeline that inherits `IPAdapterMixin`. After certain number of steps (set by
138
+ `cutoff_step_ratio` or `cutoff_step_index`), this callback will set the IP Adapter scale to `0.0`.
139
+
140
+ Note: This callback mutates the IP Adapter attention processors by setting the scale to 0.0 after the cutoff step.
141
+ """
142
+
143
+ tensor_inputs = []
144
+
145
+ def callback_fn(self, pipeline, step_index, timestep, callback_kwargs) -> Dict[str, Any]:
146
+ cutoff_step_ratio = self.config.cutoff_step_ratio
147
+ cutoff_step_index = self.config.cutoff_step_index
148
+
149
+ # Use cutoff_step_index if it's not None, otherwise use cutoff_step_ratio
150
+ cutoff_step = (
151
+ cutoff_step_index if cutoff_step_index is not None else int(pipeline.num_timesteps * cutoff_step_ratio)
152
+ )
153
+
154
+ if step_index == cutoff_step:
155
+ pipeline.set_ip_adapter_scale(0.0)
156
+ return callback_kwargs