diffusers 0.23.0__tar.gz → 0.24.0__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.
- {diffusers-0.23.0/src/diffusers.egg-info → diffusers-0.24.0}/PKG-INFO +42 -21
- {diffusers-0.23.0 → diffusers-0.24.0}/README.md +32 -15
- diffusers-0.24.0/pyproject.toml +27 -0
- diffusers-0.24.0/setup.cfg +4 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/setup.py +40 -35
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/__init__.py +16 -2
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/configuration_utils.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/dependency_versions_check.py +1 -14
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/dependency_versions_table.py +5 -4
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/image_processor.py +186 -14
- diffusers-0.24.0/src/diffusers/loaders/__init__.py +82 -0
- diffusers-0.24.0/src/diffusers/loaders/ip_adapter.py +157 -0
- diffusers-0.24.0/src/diffusers/loaders/lora.py +1415 -0
- diffusers-0.24.0/src/diffusers/loaders/lora_conversion_utils.py +284 -0
- diffusers-0.24.0/src/diffusers/loaders/single_file.py +631 -0
- diffusers-0.24.0/src/diffusers/loaders/textual_inversion.py +459 -0
- diffusers-0.24.0/src/diffusers/loaders/unet.py +735 -0
- diffusers-0.24.0/src/diffusers/loaders/utils.py +59 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/__init__.py +12 -1
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/attention.py +165 -14
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/attention_flax.py +9 -1
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/attention_processor.py +286 -1
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/autoencoder_asym_kl.py +14 -9
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/autoencoder_kl.py +3 -18
- diffusers-0.24.0/src/diffusers/models/autoencoder_kl_temporal_decoder.py +402 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/autoencoder_tiny.py +20 -24
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/consistency_decoder_vae.py +37 -30
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/controlnet.py +59 -39
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/controlnet_flax.py +19 -18
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/embeddings_flax.py +2 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/lora.py +131 -1
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/modeling_flax_utils.py +2 -1
- diffusers-0.24.0/src/diffusers/models/modeling_outputs.py +17 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/modeling_utils.py +27 -19
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/normalization.py +2 -2
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/resnet.py +390 -59
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/transformer_2d.py +20 -3
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/transformer_temporal.py +183 -1
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/unet_2d_blocks_flax.py +5 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/unet_2d_condition.py +9 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/unet_2d_condition_flax.py +13 -13
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/unet_3d_blocks.py +957 -173
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/unet_3d_condition.py +16 -8
- diffusers-0.24.0/src/diffusers/models/unet_kandi3.py +589 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/unet_motion_model.py +48 -33
- diffusers-0.24.0/src/diffusers/models/unet_spatio_temporal_condition.py +489 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/vae.py +63 -13
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/vae_flax.py +7 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/vq_model.py +3 -1
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/optimization.py +16 -9
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/__init__.py +65 -12
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/alt_diffusion/pipeline_alt_diffusion.py +93 -23
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/alt_diffusion/pipeline_alt_diffusion_img2img.py +97 -25
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/animatediff/pipeline_animatediff.py +34 -4
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/audioldm/pipeline_audioldm.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/auto_pipeline.py +6 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/consistency_models/pipeline_consistency_models.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/controlnet/pipeline_controlnet.py +217 -31
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/controlnet/pipeline_controlnet_img2img.py +101 -32
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/controlnet/pipeline_controlnet_inpaint.py +136 -39
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/controlnet/pipeline_controlnet_inpaint_sd_xl.py +119 -37
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/controlnet/pipeline_controlnet_sd_xl.py +196 -35
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/controlnet/pipeline_controlnet_sd_xl_img2img.py +102 -31
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/dance_diffusion/pipeline_dance_diffusion.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/ddim/pipeline_ddim.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/ddpm/pipeline_ddpm.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/deepfloyd_if/pipeline_if.py +13 -1
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/deepfloyd_if/pipeline_if_img2img.py +13 -1
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/deepfloyd_if/pipeline_if_img2img_superresolution.py +13 -1
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/deepfloyd_if/pipeline_if_inpainting.py +13 -1
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/deepfloyd_if/pipeline_if_inpainting_superresolution.py +13 -1
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/deepfloyd_if/pipeline_if_superresolution.py +13 -1
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/dit/pipeline_dit.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2.py +1 -1
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_combined.py +3 -3
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_img2img.py +1 -1
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_inpainting.py +1 -1
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_prior.py +1 -1
- diffusers-0.24.0/src/diffusers/pipelines/kandinsky3/__init__.py +49 -0
- diffusers-0.24.0/src/diffusers/pipelines/kandinsky3/kandinsky3_pipeline.py +452 -0
- diffusers-0.24.0/src/diffusers/pipelines/kandinsky3/kandinsky3img2img_pipeline.py +460 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/latent_consistency_models/pipeline_latent_consistency_img2img.py +65 -6
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/latent_consistency_models/pipeline_latent_consistency_text2img.py +55 -3
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/latent_diffusion/pipeline_latent_diffusion.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/musicldm/pipeline_musicldm.py +1 -1
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/paint_by_example/pipeline_paint_by_example.py +7 -2
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/pipeline_flax_utils.py +4 -2
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/pipeline_utils.py +33 -13
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/pixart_alpha/pipeline_pixart_alpha.py +196 -36
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/score_sde_ve/pipeline_score_sde_ve.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/spectrogram_diffusion/pipeline_spectrogram_diffusion.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/__init__.py +64 -21
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/convert_from_ckpt.py +8 -3
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_cycle_diffusion.py +18 -2
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_flax_stable_diffusion.py +2 -2
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_onnx_stable_diffusion_img2img.py +2 -4
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_onnx_stable_diffusion_inpaint.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_onnx_stable_diffusion_inpaint_legacy.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion.py +88 -9
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_attend_and_excite.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_depth2img.py +8 -3
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_diffedit.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_gligen.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_gligen_text_image.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_image_variation.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_img2img.py +92 -9
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_inpaint.py +92 -9
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_inpaint_legacy.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_instruct_pix2pix.py +17 -13
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_k_diffusion.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_latent_upscale.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_ldm3d.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_model_editing.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_panorama.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_paradigms.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_pix2pix_zero.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_sag.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_upscale.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion_xl/pipeline_stable_diffusion_xl.py +103 -8
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion_xl/pipeline_stable_diffusion_xl_img2img.py +113 -8
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion_xl/pipeline_stable_diffusion_xl_inpaint.py +115 -9
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion_xl/pipeline_stable_diffusion_xl_instruct_pix2pix.py +16 -12
- diffusers-0.24.0/src/diffusers/pipelines/stable_video_diffusion/__init__.py +58 -0
- diffusers-0.24.0/src/diffusers/pipelines/stable_video_diffusion/pipeline_stable_video_diffusion.py +649 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/t2i_adapter/pipeline_stable_diffusion_adapter.py +108 -12
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/t2i_adapter/pipeline_stable_diffusion_xl_adapter.py +109 -14
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/text_to_video_synthesis/__init__.py +2 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/text_to_video_synthesis/pipeline_text_to_video_synth.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/text_to_video_synthesis/pipeline_text_to_video_synth_img2img.py +18 -3
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/text_to_video_synthesis/pipeline_text_to_video_zero.py +4 -2
- diffusers-0.24.0/src/diffusers/pipelines/text_to_video_synthesis/pipeline_text_to_video_zero_sdxl.py +872 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/versatile_diffusion/modeling_text_unet.py +29 -40
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/versatile_diffusion/pipeline_versatile_diffusion_dual_guided.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/versatile_diffusion/pipeline_versatile_diffusion_image_variation.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/versatile_diffusion/pipeline_versatile_diffusion_text_to_image.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/wuerstchen/modeling_wuerstchen_common.py +14 -4
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/wuerstchen/modeling_wuerstchen_prior.py +9 -5
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/wuerstchen/pipeline_wuerstchen.py +1 -1
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/wuerstchen/pipeline_wuerstchen_combined.py +2 -2
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/wuerstchen/pipeline_wuerstchen_prior.py +1 -1
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/__init__.py +2 -4
- diffusers-0.24.0/src/diffusers/schedulers/deprecated/__init__.py +50 -0
- {diffusers-0.23.0/src/diffusers/schedulers → diffusers-0.24.0/src/diffusers/schedulers/deprecated}/scheduling_karras_ve.py +4 -4
- {diffusers-0.23.0/src/diffusers/schedulers → diffusers-0.24.0/src/diffusers/schedulers/deprecated}/scheduling_sde_vp.py +4 -6
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_ddim.py +1 -3
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_ddim_inverse.py +1 -3
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_ddim_parallel.py +1 -3
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_ddpm.py +1 -3
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_ddpm_parallel.py +1 -3
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_deis_multistep.py +15 -5
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_dpmsolver_multistep.py +15 -5
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_dpmsolver_multistep_inverse.py +15 -5
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_dpmsolver_sde.py +1 -3
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_dpmsolver_singlestep.py +15 -5
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_euler_ancestral_discrete.py +1 -3
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_euler_discrete.py +40 -13
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_heun_discrete.py +15 -5
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_k_dpm_2_ancestral_discrete.py +15 -5
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_k_dpm_2_discrete.py +15 -5
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_lcm.py +123 -29
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_lms_discrete.py +1 -3
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_pndm.py +1 -3
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_repaint.py +1 -3
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_unipc_multistep.py +15 -5
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/__init__.py +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/constants.py +11 -6
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/dummy_pt_objects.py +45 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/dummy_torch_and_transformers_objects.py +60 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/dynamic_modules_utils.py +4 -4
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/export_utils.py +8 -3
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/logging.py +10 -10
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/outputs.py +5 -5
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/peft_utils.py +88 -44
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/torch_utils.py +2 -2
- diffusers-0.24.0/src/diffusers/utils/versions.py +117 -0
- {diffusers-0.23.0 → diffusers-0.24.0/src/diffusers.egg-info}/PKG-INFO +42 -21
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers.egg-info/SOURCES.txt +23 -5
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers.egg-info/entry_points.txt +1 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers.egg-info/requires.txt +28 -26
- diffusers-0.23.0/pyproject.toml +0 -18
- diffusers-0.23.0/setup.cfg +0 -24
- diffusers-0.23.0/src/diffusers/loaders.py +0 -3336
- {diffusers-0.23.0 → diffusers-0.24.0}/LICENSE +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/MANIFEST.in +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/commands/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/commands/diffusers_cli.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/commands/env.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/commands/fp16_safetensors.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/experimental/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/experimental/rl/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/experimental/rl/value_guided_sampling.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/activations.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/adapter.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/dual_transformer_2d.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/embeddings.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/modeling_flax_pytorch_utils.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/modeling_pytorch_flax_utils.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/prior_transformer.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/resnet_flax.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/t5_film_transformer.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/unet_1d.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/unet_1d_blocks.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/unet_2d.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/models/unet_2d_blocks.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/alt_diffusion/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/alt_diffusion/modeling_roberta_series.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/alt_diffusion/pipeline_output.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/animatediff/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/audio_diffusion/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/audio_diffusion/mel.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/audio_diffusion/pipeline_audio_diffusion.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/audioldm/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/audioldm2/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/audioldm2/modeling_audioldm2.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/audioldm2/pipeline_audioldm2.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/blip_diffusion/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/blip_diffusion/blip_image_processing.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/blip_diffusion/modeling_blip2.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/blip_diffusion/modeling_ctx_clip.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/blip_diffusion/pipeline_blip_diffusion.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/consistency_models/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/controlnet/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/controlnet/multicontrolnet.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/controlnet/pipeline_controlnet_blip_diffusion.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/controlnet/pipeline_flax_controlnet.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/dance_diffusion/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/ddim/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/ddpm/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/deepfloyd_if/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/deepfloyd_if/pipeline_output.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/deepfloyd_if/safety_checker.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/deepfloyd_if/timesteps.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/deepfloyd_if/watermark.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/dit/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/kandinsky/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/kandinsky/pipeline_kandinsky.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/kandinsky/pipeline_kandinsky_combined.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/kandinsky/pipeline_kandinsky_img2img.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/kandinsky/pipeline_kandinsky_inpaint.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/kandinsky/pipeline_kandinsky_prior.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/kandinsky/text_encoder.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/kandinsky2_2/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_controlnet.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_controlnet_img2img.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_prior_emb2emb.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/latent_consistency_models/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/latent_diffusion/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/latent_diffusion/pipeline_latent_diffusion_superresolution.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/latent_diffusion_uncond/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/latent_diffusion_uncond/pipeline_latent_diffusion_uncond.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/musicldm/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/onnx_utils.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/paint_by_example/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/paint_by_example/image_encoder.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/pixart_alpha/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/pndm/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/pndm/pipeline_pndm.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/repaint/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/repaint/pipeline_repaint.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/score_sde_ve/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/semantic_stable_diffusion/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/semantic_stable_diffusion/pipeline_output.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/semantic_stable_diffusion/pipeline_semantic_stable_diffusion.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/shap_e/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/shap_e/camera.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/shap_e/pipeline_shap_e.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/shap_e/pipeline_shap_e_img2img.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/shap_e/renderer.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/spectrogram_diffusion/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/spectrogram_diffusion/continous_encoder.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/spectrogram_diffusion/midi_utils.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/spectrogram_diffusion/notes_encoder.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/clip_image_project_model.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_flax_stable_diffusion_img2img.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_flax_stable_diffusion_inpaint.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_onnx_stable_diffusion.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_onnx_stable_diffusion_upscale.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_output.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_unclip.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/pipeline_stable_unclip_img2img.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/safety_checker.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/safety_checker_flax.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion/stable_unclip_image_normalizer.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion_safe/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion_safe/pipeline_output.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion_safe/pipeline_stable_diffusion_safe.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion_safe/safety_checker.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion_xl/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion_xl/pipeline_flax_stable_diffusion_xl.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion_xl/pipeline_output.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stable_diffusion_xl/watermark.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stochastic_karras_ve/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/stochastic_karras_ve/pipeline_stochastic_karras_ve.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/t2i_adapter/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/text_to_video_synthesis/pipeline_output.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/unclip/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/unclip/pipeline_unclip.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/unclip/pipeline_unclip_image_variation.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/unclip/text_proj.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/unidiffuser/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/unidiffuser/modeling_text_decoder.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/unidiffuser/modeling_uvit.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/unidiffuser/pipeline_unidiffuser.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/versatile_diffusion/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/versatile_diffusion/pipeline_versatile_diffusion.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/vq_diffusion/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/vq_diffusion/pipeline_vq_diffusion.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/wuerstchen/__init__.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/wuerstchen/modeling_paella_vq_model.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/pipelines/wuerstchen/modeling_wuerstchen_diffnext.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/py.typed +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_consistency_decoder.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_consistency_models.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_ddim_flax.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_ddpm_flax.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_ddpm_wuerstchen.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_dpmsolver_multistep_flax.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_euler_discrete_flax.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_ipndm.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_karras_ve_flax.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_lms_discrete_flax.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_pndm_flax.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_sde_ve.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_sde_ve_flax.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_unclip.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_utils.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_utils_flax.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/schedulers/scheduling_vq_diffusion.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/training_utils.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/accelerate_utils.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/deprecation_utils.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/doc_utils.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/dummy_flax_and_transformers_objects.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/dummy_flax_objects.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/dummy_note_seq_objects.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/dummy_onnx_objects.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/dummy_torch_and_librosa_objects.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/dummy_torch_and_scipy_objects.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/dummy_torch_and_torchsde_objects.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/dummy_torch_and_transformers_and_k_diffusion_objects.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/dummy_torch_and_transformers_and_onnx_objects.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/dummy_transformers_and_torch_and_note_seq_objects.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/hub_utils.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/import_utils.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/loading_utils.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/model_card_template.md +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/pil_utils.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/state_dict_utils.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers/utils/testing_utils.py +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers.egg-info/dependency_links.txt +0 -0
- {diffusers-0.23.0 → diffusers-0.24.0}/src/diffusers.egg-info/top_level.txt +0 -0
|
@@ -1,33 +1,51 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: diffusers
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.24.0
|
|
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 HuggingFace team
|
|
7
7
|
Author-email: patrick@huggingface.co
|
|
8
8
|
License: Apache
|
|
9
9
|
Keywords: deep learning diffusion jax pytorch stable diffusion audioldm
|
|
10
|
+
Platform: UNKNOWN
|
|
10
11
|
Classifier: Development Status :: 5 - Production/Stable
|
|
11
12
|
Classifier: Intended Audience :: Developers
|
|
12
13
|
Classifier: Intended Audience :: Education
|
|
13
14
|
Classifier: Intended Audience :: Science/Research
|
|
14
15
|
Classifier: License :: OSI Approved :: Apache Software License
|
|
15
16
|
Classifier: Operating System :: OS Independent
|
|
17
|
+
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
16
18
|
Classifier: Programming Language :: Python :: 3
|
|
17
19
|
Classifier: Programming Language :: Python :: 3.8
|
|
18
20
|
Classifier: Programming Language :: Python :: 3.9
|
|
19
|
-
Classifier:
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
20
22
|
Requires-Python: >=3.8.0
|
|
21
23
|
Description-Content-Type: text/markdown
|
|
22
|
-
Provides-Extra:
|
|
24
|
+
Provides-Extra: dev
|
|
23
25
|
Provides-Extra: docs
|
|
24
|
-
Provides-Extra:
|
|
26
|
+
Provides-Extra: flax
|
|
27
|
+
Provides-Extra: quality
|
|
25
28
|
Provides-Extra: test
|
|
26
29
|
Provides-Extra: torch
|
|
27
|
-
Provides-Extra:
|
|
28
|
-
Provides-Extra: dev
|
|
30
|
+
Provides-Extra: training
|
|
29
31
|
License-File: LICENSE
|
|
30
32
|
|
|
33
|
+
<!---
|
|
34
|
+
Copyright 2022 - The HuggingFace Team. All rights reserved.
|
|
35
|
+
|
|
36
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
37
|
+
you may not use this file except in compliance with the License.
|
|
38
|
+
You may obtain a copy of the License at
|
|
39
|
+
|
|
40
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
41
|
+
|
|
42
|
+
Unless required by applicable law or agreed to in writing, software
|
|
43
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
44
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
45
|
+
See the License for the specific language governing permissions and
|
|
46
|
+
limitations under the License.
|
|
47
|
+
-->
|
|
48
|
+
|
|
31
49
|
<p align="center">
|
|
32
50
|
<br>
|
|
33
51
|
<img src="https://raw.githubusercontent.com/huggingface/diffusers/main/docs/source/en/imgs/diffusers_library.jpg" width="400"/>
|
|
@@ -44,7 +62,10 @@ License-File: LICENSE
|
|
|
44
62
|
<img alt="GitHub release" src="https://static.pepy.tech/badge/diffusers/month">
|
|
45
63
|
</a>
|
|
46
64
|
<a href="CODE_OF_CONDUCT.md">
|
|
47
|
-
<img alt="Contributor Covenant" src="https://img.shields.io/badge/Contributor%20Covenant-2.
|
|
65
|
+
<img alt="Contributor Covenant" src="https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg">
|
|
66
|
+
</a>
|
|
67
|
+
<a href="https://twitter.com/diffuserslib">
|
|
68
|
+
<img alt="X account" src="https://img.shields.io/twitter/url/https/twitter.com/diffuserslib.svg?style=social&label=Follow%20%40diffuserslib">
|
|
48
69
|
</a>
|
|
49
70
|
</p>
|
|
50
71
|
|
|
@@ -54,11 +75,11 @@ License-File: LICENSE
|
|
|
54
75
|
|
|
55
76
|
- State-of-the-art [diffusion pipelines](https://huggingface.co/docs/diffusers/api/pipelines/overview) that can be run in inference with just a few lines of code.
|
|
56
77
|
- Interchangeable noise [schedulers](https://huggingface.co/docs/diffusers/api/schedulers/overview) for different diffusion speeds and output quality.
|
|
57
|
-
- Pretrained [models](https://huggingface.co/docs/diffusers/api/models) that can be used as building blocks, and combined with schedulers, for creating your own end-to-end diffusion systems.
|
|
78
|
+
- Pretrained [models](https://huggingface.co/docs/diffusers/api/models/overview) that can be used as building blocks, and combined with schedulers, for creating your own end-to-end diffusion systems.
|
|
58
79
|
|
|
59
80
|
## Installation
|
|
60
81
|
|
|
61
|
-
We recommend installing 🤗 Diffusers in a virtual environment from
|
|
82
|
+
We recommend installing 🤗 Diffusers in a virtual environment from PyPI or Conda. For more details about installing [PyTorch](https://pytorch.org/get-started/locally/) and [Flax](https://flax.readthedocs.io/en/latest/#installation), please refer to their official documentation.
|
|
62
83
|
|
|
63
84
|
### PyTorch
|
|
64
85
|
|
|
@@ -88,7 +109,7 @@ Please refer to the [How to use Stable Diffusion in Apple Silicon](https://huggi
|
|
|
88
109
|
|
|
89
110
|
## Quickstart
|
|
90
111
|
|
|
91
|
-
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
|
|
112
|
+
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 15000+ checkpoints):
|
|
92
113
|
|
|
93
114
|
```python
|
|
94
115
|
from diffusers import DiffusionPipeline
|
|
@@ -105,14 +126,13 @@ You can also dig into the models and schedulers toolbox to build your own diffus
|
|
|
105
126
|
from diffusers import DDPMScheduler, UNet2DModel
|
|
106
127
|
from PIL import Image
|
|
107
128
|
import torch
|
|
108
|
-
import numpy as np
|
|
109
129
|
|
|
110
130
|
scheduler = DDPMScheduler.from_pretrained("google/ddpm-cat-256")
|
|
111
131
|
model = UNet2DModel.from_pretrained("google/ddpm-cat-256").to("cuda")
|
|
112
132
|
scheduler.set_timesteps(50)
|
|
113
133
|
|
|
114
134
|
sample_size = model.config.sample_size
|
|
115
|
-
noise = torch.randn((1, 3, sample_size, sample_size)
|
|
135
|
+
noise = torch.randn((1, 3, sample_size, sample_size), device="cuda")
|
|
116
136
|
input = noise
|
|
117
137
|
|
|
118
138
|
for t in scheduler.timesteps:
|
|
@@ -147,8 +167,7 @@ You can look out for [issues](https://github.com/huggingface/diffusers/issues) y
|
|
|
147
167
|
- See [New model/pipeline](https://github.com/huggingface/diffusers/issues?q=is%3Aopen+is%3Aissue+label%3A%22New+pipeline%2Fmodel%22) to contribute exciting new diffusion models / diffusion pipelines
|
|
148
168
|
- See [New scheduler](https://github.com/huggingface/diffusers/issues?q=is%3Aopen+is%3Aissue+label%3A%22New+scheduler%22)
|
|
149
169
|
|
|
150
|
-
Also, say 👋 in our public Discord channel <a href="https://discord.gg/G7tWnz98XR"><img alt="Join us on Discord" src="https://img.shields.io/discord/823813159592001537?color=5865F2&logo=discord&logoColor=white"></a>. We discuss the hottest trends about diffusion models, help each other with contributions, personal projects or
|
|
151
|
-
just hang out ☕.
|
|
170
|
+
Also, say 👋 in our public Discord channel <a href="https://discord.gg/G7tWnz98XR"><img alt="Join us on Discord" src="https://img.shields.io/discord/823813159592001537?color=5865F2&logo=discord&logoColor=white"></a>. We discuss the hottest trends about diffusion models, help each other with contributions, personal projects or just hang out ☕.
|
|
152
171
|
|
|
153
172
|
|
|
154
173
|
## Popular Tasks & Pipelines
|
|
@@ -171,12 +190,12 @@ just hang out ☕.
|
|
|
171
190
|
</tr>
|
|
172
191
|
<tr>
|
|
173
192
|
<td>Text-to-Image</td>
|
|
174
|
-
<td><a href="https://huggingface.co/docs/diffusers/api/pipelines/unclip">
|
|
193
|
+
<td><a href="https://huggingface.co/docs/diffusers/api/pipelines/unclip">unCLIP</a></td>
|
|
175
194
|
<td><a href="https://huggingface.co/kakaobrain/karlo-v1-alpha"> kakaobrain/karlo-v1-alpha </a></td>
|
|
176
195
|
</tr>
|
|
177
196
|
<tr>
|
|
178
197
|
<td>Text-to-Image</td>
|
|
179
|
-
<td><a href="https://huggingface.co/docs/diffusers/api/pipelines/
|
|
198
|
+
<td><a href="https://huggingface.co/docs/diffusers/api/pipelines/deepfloyd_if">DeepFloyd IF</a></td>
|
|
180
199
|
<td><a href="https://huggingface.co/DeepFloyd/IF-I-XL-v1.0"> DeepFloyd/IF-I-XL-v1.0 </a></td>
|
|
181
200
|
</tr>
|
|
182
201
|
<tr>
|
|
@@ -186,12 +205,12 @@ just hang out ☕.
|
|
|
186
205
|
</tr>
|
|
187
206
|
<tr style="border-top: 2px solid black">
|
|
188
207
|
<td>Text-guided Image-to-Image</td>
|
|
189
|
-
<td><a href="https://huggingface.co/docs/diffusers/api/pipelines/
|
|
208
|
+
<td><a href="https://huggingface.co/docs/diffusers/api/pipelines/controlnet">ControlNet</a></td>
|
|
190
209
|
<td><a href="https://huggingface.co/lllyasviel/sd-controlnet-canny"> lllyasviel/sd-controlnet-canny </a></td>
|
|
191
210
|
</tr>
|
|
192
211
|
<tr>
|
|
193
212
|
<td>Text-guided Image-to-Image</td>
|
|
194
|
-
<td><a href="https://huggingface.co/docs/diffusers/api/pipelines/pix2pix">
|
|
213
|
+
<td><a href="https://huggingface.co/docs/diffusers/api/pipelines/pix2pix">InstructPix2Pix</a></td>
|
|
195
214
|
<td><a href="https://huggingface.co/timbrooks/instruct-pix2pix"> timbrooks/instruct-pix2pix </a></td>
|
|
196
215
|
</tr>
|
|
197
216
|
<tr>
|
|
@@ -201,7 +220,7 @@ just hang out ☕.
|
|
|
201
220
|
</tr>
|
|
202
221
|
<tr style="border-top: 2px solid black">
|
|
203
222
|
<td>Text-guided Image Inpainting</td>
|
|
204
|
-
<td><a href="https://huggingface.co/docs/diffusers/api/pipelines/stable_diffusion/inpaint">Stable Diffusion
|
|
223
|
+
<td><a href="https://huggingface.co/docs/diffusers/api/pipelines/stable_diffusion/inpaint">Stable Diffusion Inpainting</a></td>
|
|
205
224
|
<td><a href="https://huggingface.co/runwayml/stable-diffusion-inpainting"> runwayml/stable-diffusion-inpainting </a></td>
|
|
206
225
|
</tr>
|
|
207
226
|
<tr style="border-top: 2px solid black">
|
|
@@ -232,9 +251,9 @@ just hang out ☕.
|
|
|
232
251
|
- https://github.com/deep-floyd/IF
|
|
233
252
|
- https://github.com/bentoml/BentoML
|
|
234
253
|
- https://github.com/bmaltais/kohya_ss
|
|
235
|
-
- +
|
|
254
|
+
- +6000 other amazing GitHub repositories 💪
|
|
236
255
|
|
|
237
|
-
Thank you for using us
|
|
256
|
+
Thank you for using us ❤️.
|
|
238
257
|
|
|
239
258
|
## Credits
|
|
240
259
|
|
|
@@ -259,3 +278,5 @@ We also want to thank @heejkoo for the very helpful overview of papers, code and
|
|
|
259
278
|
howpublished = {\url{https://github.com/huggingface/diffusers}}
|
|
260
279
|
}
|
|
261
280
|
```
|
|
281
|
+
|
|
282
|
+
|
|
@@ -1,3 +1,19 @@
|
|
|
1
|
+
<!---
|
|
2
|
+
Copyright 2022 - The HuggingFace Team. All rights reserved.
|
|
3
|
+
|
|
4
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
you may not use this file except in compliance with the License.
|
|
6
|
+
You may obtain a copy of the License at
|
|
7
|
+
|
|
8
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
|
|
10
|
+
Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
See the License for the specific language governing permissions and
|
|
14
|
+
limitations under the License.
|
|
15
|
+
-->
|
|
16
|
+
|
|
1
17
|
<p align="center">
|
|
2
18
|
<br>
|
|
3
19
|
<img src="https://raw.githubusercontent.com/huggingface/diffusers/main/docs/source/en/imgs/diffusers_library.jpg" width="400"/>
|
|
@@ -14,7 +30,10 @@
|
|
|
14
30
|
<img alt="GitHub release" src="https://static.pepy.tech/badge/diffusers/month">
|
|
15
31
|
</a>
|
|
16
32
|
<a href="CODE_OF_CONDUCT.md">
|
|
17
|
-
<img alt="Contributor Covenant" src="https://img.shields.io/badge/Contributor%20Covenant-2.
|
|
33
|
+
<img alt="Contributor Covenant" src="https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg">
|
|
34
|
+
</a>
|
|
35
|
+
<a href="https://twitter.com/diffuserslib">
|
|
36
|
+
<img alt="X account" src="https://img.shields.io/twitter/url/https/twitter.com/diffuserslib.svg?style=social&label=Follow%20%40diffuserslib">
|
|
18
37
|
</a>
|
|
19
38
|
</p>
|
|
20
39
|
|
|
@@ -24,11 +43,11 @@
|
|
|
24
43
|
|
|
25
44
|
- State-of-the-art [diffusion pipelines](https://huggingface.co/docs/diffusers/api/pipelines/overview) that can be run in inference with just a few lines of code.
|
|
26
45
|
- Interchangeable noise [schedulers](https://huggingface.co/docs/diffusers/api/schedulers/overview) for different diffusion speeds and output quality.
|
|
27
|
-
- Pretrained [models](https://huggingface.co/docs/diffusers/api/models) that can be used as building blocks, and combined with schedulers, for creating your own end-to-end diffusion systems.
|
|
46
|
+
- Pretrained [models](https://huggingface.co/docs/diffusers/api/models/overview) that can be used as building blocks, and combined with schedulers, for creating your own end-to-end diffusion systems.
|
|
28
47
|
|
|
29
48
|
## Installation
|
|
30
49
|
|
|
31
|
-
We recommend installing 🤗 Diffusers in a virtual environment from
|
|
50
|
+
We recommend installing 🤗 Diffusers in a virtual environment from PyPI or Conda. For more details about installing [PyTorch](https://pytorch.org/get-started/locally/) and [Flax](https://flax.readthedocs.io/en/latest/#installation), please refer to their official documentation.
|
|
32
51
|
|
|
33
52
|
### PyTorch
|
|
34
53
|
|
|
@@ -58,7 +77,7 @@ Please refer to the [How to use Stable Diffusion in Apple Silicon](https://huggi
|
|
|
58
77
|
|
|
59
78
|
## Quickstart
|
|
60
79
|
|
|
61
|
-
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
|
|
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 15000+ checkpoints):
|
|
62
81
|
|
|
63
82
|
```python
|
|
64
83
|
from diffusers import DiffusionPipeline
|
|
@@ -75,14 +94,13 @@ You can also dig into the models and schedulers toolbox to build your own diffus
|
|
|
75
94
|
from diffusers import DDPMScheduler, UNet2DModel
|
|
76
95
|
from PIL import Image
|
|
77
96
|
import torch
|
|
78
|
-
import numpy as np
|
|
79
97
|
|
|
80
98
|
scheduler = DDPMScheduler.from_pretrained("google/ddpm-cat-256")
|
|
81
99
|
model = UNet2DModel.from_pretrained("google/ddpm-cat-256").to("cuda")
|
|
82
100
|
scheduler.set_timesteps(50)
|
|
83
101
|
|
|
84
102
|
sample_size = model.config.sample_size
|
|
85
|
-
noise = torch.randn((1, 3, sample_size, sample_size)
|
|
103
|
+
noise = torch.randn((1, 3, sample_size, sample_size), device="cuda")
|
|
86
104
|
input = noise
|
|
87
105
|
|
|
88
106
|
for t in scheduler.timesteps:
|
|
@@ -117,8 +135,7 @@ You can look out for [issues](https://github.com/huggingface/diffusers/issues) y
|
|
|
117
135
|
- See [New model/pipeline](https://github.com/huggingface/diffusers/issues?q=is%3Aopen+is%3Aissue+label%3A%22New+pipeline%2Fmodel%22) to contribute exciting new diffusion models / diffusion pipelines
|
|
118
136
|
- See [New scheduler](https://github.com/huggingface/diffusers/issues?q=is%3Aopen+is%3Aissue+label%3A%22New+scheduler%22)
|
|
119
137
|
|
|
120
|
-
Also, say 👋 in our public Discord channel <a href="https://discord.gg/G7tWnz98XR"><img alt="Join us on Discord" src="https://img.shields.io/discord/823813159592001537?color=5865F2&logo=discord&logoColor=white"></a>. We discuss the hottest trends about diffusion models, help each other with contributions, personal projects or
|
|
121
|
-
just hang out ☕.
|
|
138
|
+
Also, say 👋 in our public Discord channel <a href="https://discord.gg/G7tWnz98XR"><img alt="Join us on Discord" src="https://img.shields.io/discord/823813159592001537?color=5865F2&logo=discord&logoColor=white"></a>. We discuss the hottest trends about diffusion models, help each other with contributions, personal projects or just hang out ☕.
|
|
122
139
|
|
|
123
140
|
|
|
124
141
|
## Popular Tasks & Pipelines
|
|
@@ -141,12 +158,12 @@ just hang out ☕.
|
|
|
141
158
|
</tr>
|
|
142
159
|
<tr>
|
|
143
160
|
<td>Text-to-Image</td>
|
|
144
|
-
<td><a href="https://huggingface.co/docs/diffusers/api/pipelines/unclip">
|
|
161
|
+
<td><a href="https://huggingface.co/docs/diffusers/api/pipelines/unclip">unCLIP</a></td>
|
|
145
162
|
<td><a href="https://huggingface.co/kakaobrain/karlo-v1-alpha"> kakaobrain/karlo-v1-alpha </a></td>
|
|
146
163
|
</tr>
|
|
147
164
|
<tr>
|
|
148
165
|
<td>Text-to-Image</td>
|
|
149
|
-
<td><a href="https://huggingface.co/docs/diffusers/api/pipelines/
|
|
166
|
+
<td><a href="https://huggingface.co/docs/diffusers/api/pipelines/deepfloyd_if">DeepFloyd IF</a></td>
|
|
150
167
|
<td><a href="https://huggingface.co/DeepFloyd/IF-I-XL-v1.0"> DeepFloyd/IF-I-XL-v1.0 </a></td>
|
|
151
168
|
</tr>
|
|
152
169
|
<tr>
|
|
@@ -156,12 +173,12 @@ just hang out ☕.
|
|
|
156
173
|
</tr>
|
|
157
174
|
<tr style="border-top: 2px solid black">
|
|
158
175
|
<td>Text-guided Image-to-Image</td>
|
|
159
|
-
<td><a href="https://huggingface.co/docs/diffusers/api/pipelines/
|
|
176
|
+
<td><a href="https://huggingface.co/docs/diffusers/api/pipelines/controlnet">ControlNet</a></td>
|
|
160
177
|
<td><a href="https://huggingface.co/lllyasviel/sd-controlnet-canny"> lllyasviel/sd-controlnet-canny </a></td>
|
|
161
178
|
</tr>
|
|
162
179
|
<tr>
|
|
163
180
|
<td>Text-guided Image-to-Image</td>
|
|
164
|
-
<td><a href="https://huggingface.co/docs/diffusers/api/pipelines/pix2pix">
|
|
181
|
+
<td><a href="https://huggingface.co/docs/diffusers/api/pipelines/pix2pix">InstructPix2Pix</a></td>
|
|
165
182
|
<td><a href="https://huggingface.co/timbrooks/instruct-pix2pix"> timbrooks/instruct-pix2pix </a></td>
|
|
166
183
|
</tr>
|
|
167
184
|
<tr>
|
|
@@ -171,7 +188,7 @@ just hang out ☕.
|
|
|
171
188
|
</tr>
|
|
172
189
|
<tr style="border-top: 2px solid black">
|
|
173
190
|
<td>Text-guided Image Inpainting</td>
|
|
174
|
-
<td><a href="https://huggingface.co/docs/diffusers/api/pipelines/stable_diffusion/inpaint">Stable Diffusion
|
|
191
|
+
<td><a href="https://huggingface.co/docs/diffusers/api/pipelines/stable_diffusion/inpaint">Stable Diffusion Inpainting</a></td>
|
|
175
192
|
<td><a href="https://huggingface.co/runwayml/stable-diffusion-inpainting"> runwayml/stable-diffusion-inpainting </a></td>
|
|
176
193
|
</tr>
|
|
177
194
|
<tr style="border-top: 2px solid black">
|
|
@@ -202,9 +219,9 @@ just hang out ☕.
|
|
|
202
219
|
- https://github.com/deep-floyd/IF
|
|
203
220
|
- https://github.com/bentoml/BentoML
|
|
204
221
|
- https://github.com/bmaltais/kohya_ss
|
|
205
|
-
- +
|
|
222
|
+
- +6000 other amazing GitHub repositories 💪
|
|
206
223
|
|
|
207
|
-
Thank you for using us
|
|
224
|
+
Thank you for using us ❤️.
|
|
208
225
|
|
|
209
226
|
## Credits
|
|
210
227
|
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
[tool.ruff]
|
|
2
|
+
# Never enforce `E501` (line length violations).
|
|
3
|
+
ignore = ["C901", "E501", "E741", "F402", "F823"]
|
|
4
|
+
select = ["C", "E", "F", "I", "W"]
|
|
5
|
+
line-length = 119
|
|
6
|
+
|
|
7
|
+
# Ignore import violations in all `__init__.py` files.
|
|
8
|
+
[tool.ruff.per-file-ignores]
|
|
9
|
+
"__init__.py" = ["E402", "F401", "F403", "F811"]
|
|
10
|
+
"src/diffusers/utils/dummy_*.py" = ["F401"]
|
|
11
|
+
|
|
12
|
+
[tool.ruff.isort]
|
|
13
|
+
lines-after-imports = 2
|
|
14
|
+
known-first-party = ["diffusers"]
|
|
15
|
+
|
|
16
|
+
[tool.ruff.format]
|
|
17
|
+
# Like Black, use double quotes for strings.
|
|
18
|
+
quote-style = "double"
|
|
19
|
+
|
|
20
|
+
# Like Black, indent with spaces, rather than tabs.
|
|
21
|
+
indent-style = "space"
|
|
22
|
+
|
|
23
|
+
# Like Black, respect magic trailing commas.
|
|
24
|
+
skip-magic-trailing-comma = false
|
|
25
|
+
|
|
26
|
+
# Like Black, automatically detect the appropriate line ending.
|
|
27
|
+
line-ending = "auto"
|
|
@@ -15,12 +15,12 @@
|
|
|
15
15
|
"""
|
|
16
16
|
Simple check list from AllenNLP repo: https://github.com/allenai/allennlp/blob/main/setup.py
|
|
17
17
|
|
|
18
|
-
To create the package for
|
|
18
|
+
To create the package for PyPI.
|
|
19
19
|
|
|
20
20
|
1. Run `make pre-release` (or `make pre-patch` for a patch release) then run `make fix-copies` to fix the index of the
|
|
21
21
|
documentation.
|
|
22
22
|
|
|
23
|
-
If releasing on a special branch, copy the updated README.md on the main branch for
|
|
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
26
|
2. Run Tests for Amazon Sagemaker. The documentation is located in `./tests/sagemaker/README.md`, otherwise @philschmid.
|
|
@@ -30,29 +30,29 @@ To create the package for pypi.
|
|
|
30
30
|
4. Checkout the release branch (v<RELEASE>-release, for example v4.19-release), and commit these changes with the
|
|
31
31
|
message: "Release: <RELEASE>" and push.
|
|
32
32
|
|
|
33
|
-
5. Wait for the tests on main to be completed and be green (otherwise revert and fix bugs)
|
|
33
|
+
5. Wait for the tests on main to be completed and be green (otherwise revert and fix bugs).
|
|
34
34
|
|
|
35
|
-
6. Add a tag in git to mark the release: "git tag v<RELEASE> -m 'Adds tag v<RELEASE> for
|
|
35
|
+
6. Add a tag in git to mark the release: "git tag v<RELEASE> -m 'Adds tag v<RELEASE> for PyPI'"
|
|
36
36
|
Push the tag to git: git push --tags origin v<RELEASE>-release
|
|
37
37
|
|
|
38
38
|
7. Build both the sources and the wheel. Do not change anything in setup.py between
|
|
39
39
|
creating the wheel and the source distribution (obviously).
|
|
40
40
|
|
|
41
|
-
For the wheel, run: "python setup.py bdist_wheel" in the top level directory
|
|
42
|
-
(
|
|
41
|
+
For the wheel, run: "python setup.py bdist_wheel" in the top level directory
|
|
42
|
+
(This will build a wheel for the Python version you use to build it).
|
|
43
43
|
|
|
44
44
|
For the sources, run: "python setup.py sdist"
|
|
45
45
|
You should now have a /dist directory with both .whl and .tar.gz source versions.
|
|
46
46
|
|
|
47
|
-
Long story cut short, you need to run both before you can upload the distribution to the
|
|
48
|
-
test
|
|
49
|
-
|
|
47
|
+
Long story cut short, you need to run both before you can upload the distribution to the
|
|
48
|
+
test PyPI and the actual PyPI servers:
|
|
49
|
+
|
|
50
50
|
python setup.py bdist_wheel && python setup.py sdist
|
|
51
51
|
|
|
52
|
-
8. Check that everything looks correct by uploading the package to the
|
|
52
|
+
8. Check that everything looks correct by uploading the package to the PyPI test server:
|
|
53
53
|
|
|
54
54
|
twine upload dist/* -r pypitest
|
|
55
|
-
(pypi
|
|
55
|
+
(pypi suggests using twine as other methods upload files via plaintext.)
|
|
56
56
|
You may have to specify the repository url, use the following command then:
|
|
57
57
|
twine upload dist/* -r pypitest --repository-url=https://test.pypi.org/legacy/
|
|
58
58
|
|
|
@@ -64,15 +64,15 @@ To create the package for pypi.
|
|
|
64
64
|
pip install -i https://testpypi.python.org/pypi diffusers
|
|
65
65
|
|
|
66
66
|
Check you can run the following commands:
|
|
67
|
-
python -c "
|
|
67
|
+
python -c "from diffusers import __version__; print(__version__)"
|
|
68
68
|
python -c "from diffusers import DiffusionPipeline; pipe = DiffusionPipeline.from_pretrained('fusing/unet-ldm-dummy-update'); pipe()"
|
|
69
69
|
python -c "from diffusers import DiffusionPipeline; pipe = DiffusionPipeline.from_pretrained('hf-internal-testing/tiny-stable-diffusion-pipe', safety_checker=None); pipe('ah suh du')"
|
|
70
70
|
python -c "from diffusers import *"
|
|
71
71
|
|
|
72
|
-
9. Upload the final version to actual
|
|
72
|
+
9. Upload the final version to the actual PyPI:
|
|
73
73
|
twine upload dist/* -r pypi
|
|
74
74
|
|
|
75
|
-
10. Prepare the release notes and publish them on
|
|
75
|
+
10. Prepare the release notes and publish them on GitHub once everything is looking hunky-dory.
|
|
76
76
|
|
|
77
77
|
11. Run `make post-release` (or, for a patch release, `make post-patch`). If you were on a branch for the release,
|
|
78
78
|
you need to go back to main before executing this.
|
|
@@ -80,6 +80,7 @@ To create the package for pypi.
|
|
|
80
80
|
|
|
81
81
|
import os
|
|
82
82
|
import re
|
|
83
|
+
import sys
|
|
83
84
|
from distutils.core import Command
|
|
84
85
|
|
|
85
86
|
from setuptools import find_packages, setup
|
|
@@ -92,12 +93,11 @@ _deps = [
|
|
|
92
93
|
"Pillow", # keep the PIL.Image.Resampling deprecation away
|
|
93
94
|
"accelerate>=0.11.0",
|
|
94
95
|
"compel==0.1.8",
|
|
95
|
-
"black~=23.1",
|
|
96
96
|
"datasets",
|
|
97
97
|
"filelock",
|
|
98
98
|
"flax>=0.4.1",
|
|
99
99
|
"hf-doc-builder>=0.3.0",
|
|
100
|
-
"huggingface-hub>=0.
|
|
100
|
+
"huggingface-hub>=0.19.4",
|
|
101
101
|
"requests-mock==1.10.0",
|
|
102
102
|
"importlib_metadata",
|
|
103
103
|
"invisible-watermark>=0.2.0",
|
|
@@ -112,11 +112,13 @@ _deps = [
|
|
|
112
112
|
"numpy",
|
|
113
113
|
"omegaconf",
|
|
114
114
|
"parameterized",
|
|
115
|
+
"peft>=0.6.0",
|
|
115
116
|
"protobuf>=3.20.3,<4",
|
|
116
117
|
"pytest",
|
|
117
118
|
"pytest-timeout",
|
|
118
119
|
"pytest-xdist",
|
|
119
|
-
"
|
|
120
|
+
"python>=3.8.0",
|
|
121
|
+
"ruff>=0.1.5,<=0.2",
|
|
120
122
|
"safetensors>=0.3.1",
|
|
121
123
|
"sentencepiece>=0.1.91,!=0.1.92",
|
|
122
124
|
"scipy",
|
|
@@ -142,7 +144,7 @@ deps = {b: a for a, b in (re.findall(r"^(([^!=<>~]+)(?:[!=<>~].*)?$)", x)[0] for
|
|
|
142
144
|
# anywhere. If you need to quickly access the data from this table in a shell, you can do so easily with:
|
|
143
145
|
#
|
|
144
146
|
# python -c 'import sys; from diffusers.dependency_versions_table import deps; \
|
|
145
|
-
# print(" ".join([
|
|
147
|
+
# print(" ".join([deps[x] for x in sys.argv[1:]]))' tokenizers datasets
|
|
146
148
|
#
|
|
147
149
|
# Just pass the desired package names to that script as it's shown with 2 packages above.
|
|
148
150
|
#
|
|
@@ -151,7 +153,7 @@ deps = {b: a for a, b in (re.findall(r"^(([^!=<>~]+)(?:[!=<>~].*)?$)", x)[0] for
|
|
|
151
153
|
# You can then feed this for example to `pip`:
|
|
152
154
|
#
|
|
153
155
|
# pip install -U $(python -c 'import sys; from diffusers.dependency_versions_table import deps; \
|
|
154
|
-
# print(" ".join([
|
|
156
|
+
# print(" ".join([deps[x] for x in sys.argv[1:]]))' tokenizers datasets)
|
|
155
157
|
#
|
|
156
158
|
|
|
157
159
|
|
|
@@ -168,7 +170,11 @@ class DepsTableUpdateCommand(Command):
|
|
|
168
170
|
description = "build runtime dependency table"
|
|
169
171
|
user_options = [
|
|
170
172
|
# format: (long option, short option, description).
|
|
171
|
-
(
|
|
173
|
+
(
|
|
174
|
+
"dep-table-update",
|
|
175
|
+
None,
|
|
176
|
+
"updates src/diffusers/dependency_versions_table.py",
|
|
177
|
+
),
|
|
172
178
|
]
|
|
173
179
|
|
|
174
180
|
def initialize_options(self):
|
|
@@ -182,7 +188,7 @@ class DepsTableUpdateCommand(Command):
|
|
|
182
188
|
content = [
|
|
183
189
|
"# THIS FILE HAS BEEN AUTOGENERATED. To update:",
|
|
184
190
|
"# 1. modify the `_deps` dict in setup.py",
|
|
185
|
-
"# 2. run `make deps_table_update
|
|
191
|
+
"# 2. run `make deps_table_update`",
|
|
186
192
|
"deps = {",
|
|
187
193
|
entries,
|
|
188
194
|
"}",
|
|
@@ -195,10 +201,7 @@ class DepsTableUpdateCommand(Command):
|
|
|
195
201
|
|
|
196
202
|
|
|
197
203
|
extras = {}
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
extras = {}
|
|
201
|
-
extras["quality"] = deps_list("urllib3", "black", "isort", "ruff", "hf-doc-builder")
|
|
204
|
+
extras["quality"] = deps_list("urllib3", "isort", "ruff", "hf-doc-builder")
|
|
202
205
|
extras["docs"] = deps_list("hf-doc-builder")
|
|
203
206
|
extras["training"] = deps_list("accelerate", "datasets", "protobuf", "tensorboard", "Jinja2")
|
|
204
207
|
extras["test"] = deps_list(
|
|
@@ -242,9 +245,11 @@ install_requires = [
|
|
|
242
245
|
deps["Pillow"],
|
|
243
246
|
]
|
|
244
247
|
|
|
248
|
+
version_range_max = max(sys.version_info[1], 10) + 1
|
|
249
|
+
|
|
245
250
|
setup(
|
|
246
251
|
name="diffusers",
|
|
247
|
-
version="0.
|
|
252
|
+
version="0.24.0", # expected format is one of x.y.z.dev0, or x.y.z.rc1 or x.y.z (no to dashes, yes to dots)
|
|
248
253
|
description="State-of-the-art diffusion in PyTorch and JAX.",
|
|
249
254
|
long_description=open("README.md", "r", encoding="utf-8").read(),
|
|
250
255
|
long_description_content_type="text/markdown",
|
|
@@ -268,30 +273,30 @@ setup(
|
|
|
268
273
|
"Intended Audience :: Science/Research",
|
|
269
274
|
"License :: OSI Approved :: Apache Software License",
|
|
270
275
|
"Operating System :: OS Independent",
|
|
271
|
-
"Programming Language :: Python :: 3",
|
|
272
|
-
"Programming Language :: Python :: 3.8",
|
|
273
|
-
"Programming Language :: Python :: 3.9",
|
|
274
276
|
"Topic :: Scientific/Engineering :: Artificial Intelligence",
|
|
275
|
-
|
|
277
|
+
"Programming Language :: Python :: 3",
|
|
278
|
+
]
|
|
279
|
+
+ [f"Programming Language :: Python :: 3.{i}" for i in range(8, version_range_max)],
|
|
276
280
|
cmdclass={"deps_table_update": DepsTableUpdateCommand},
|
|
277
281
|
)
|
|
278
282
|
|
|
283
|
+
|
|
279
284
|
# Release checklist
|
|
280
285
|
# 1. Change the version in __init__.py and setup.py.
|
|
281
286
|
# 2. Commit these changes with the message: "Release: Release"
|
|
282
|
-
# 3. Add a tag in git to mark the release: "git tag RELEASE -m 'Adds tag RELEASE for
|
|
287
|
+
# 3. Add a tag in git to mark the release: "git tag RELEASE -m 'Adds tag RELEASE for PyPI'"
|
|
283
288
|
# Push the tag to git: git push --tags origin main
|
|
284
289
|
# 4. Run the following commands in the top-level directory:
|
|
285
290
|
# python setup.py bdist_wheel
|
|
286
291
|
# python setup.py sdist
|
|
287
|
-
# 5. Upload the package to the
|
|
292
|
+
# 5. Upload the package to the PyPI test server first:
|
|
288
293
|
# twine upload dist/* -r pypitest
|
|
289
294
|
# twine upload dist/* -r pypitest --repository-url=https://test.pypi.org/legacy/
|
|
290
295
|
# 6. Check that you can install it in a virtualenv by running:
|
|
291
296
|
# pip install -i https://testpypi.python.org/pypi diffusers
|
|
292
297
|
# diffusers env
|
|
293
298
|
# diffusers test
|
|
294
|
-
# 7. Upload the final version to actual
|
|
299
|
+
# 7. Upload the final version to the actual PyPI:
|
|
295
300
|
# twine upload dist/* -r pypi
|
|
296
|
-
# 8. Add release notes to the tag in
|
|
297
|
-
# 9. Update the version in __init__.py, setup.py to the new version "-dev" and push to
|
|
301
|
+
# 8. Add release notes to the tag in GitHub once everything is looking hunky-dory.
|
|
302
|
+
# 9. Update the version in __init__.py, setup.py to the new version "-dev" and push to main.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
__version__ = "0.
|
|
1
|
+
__version__ = "0.24.0"
|
|
2
2
|
|
|
3
3
|
from typing import TYPE_CHECKING
|
|
4
4
|
|
|
@@ -76,9 +76,11 @@ else:
|
|
|
76
76
|
[
|
|
77
77
|
"AsymmetricAutoencoderKL",
|
|
78
78
|
"AutoencoderKL",
|
|
79
|
+
"AutoencoderKLTemporalDecoder",
|
|
79
80
|
"AutoencoderTiny",
|
|
80
81
|
"ConsistencyDecoderVAE",
|
|
81
82
|
"ControlNetModel",
|
|
83
|
+
"Kandinsky3UNet",
|
|
82
84
|
"ModelMixin",
|
|
83
85
|
"MotionAdapter",
|
|
84
86
|
"MultiAdapter",
|
|
@@ -91,9 +93,11 @@ else:
|
|
|
91
93
|
"UNet2DModel",
|
|
92
94
|
"UNet3DConditionModel",
|
|
93
95
|
"UNetMotionModel",
|
|
96
|
+
"UNetSpatioTemporalConditionModel",
|
|
94
97
|
"VQModel",
|
|
95
98
|
]
|
|
96
99
|
)
|
|
100
|
+
|
|
97
101
|
_import_structure["optimization"] = [
|
|
98
102
|
"get_constant_schedule",
|
|
99
103
|
"get_constant_schedule_with_warmup",
|
|
@@ -103,7 +107,6 @@ else:
|
|
|
103
107
|
"get_polynomial_decay_schedule_with_warmup",
|
|
104
108
|
"get_scheduler",
|
|
105
109
|
]
|
|
106
|
-
|
|
107
110
|
_import_structure["pipelines"].extend(
|
|
108
111
|
[
|
|
109
112
|
"AudioPipelineOutput",
|
|
@@ -214,6 +217,8 @@ else:
|
|
|
214
217
|
"IFPipeline",
|
|
215
218
|
"IFSuperResolutionPipeline",
|
|
216
219
|
"ImageTextPipelineOutput",
|
|
220
|
+
"Kandinsky3Img2ImgPipeline",
|
|
221
|
+
"Kandinsky3Pipeline",
|
|
217
222
|
"KandinskyCombinedPipeline",
|
|
218
223
|
"KandinskyImg2ImgCombinedPipeline",
|
|
219
224
|
"KandinskyImg2ImgPipeline",
|
|
@@ -274,8 +279,10 @@ else:
|
|
|
274
279
|
"StableDiffusionXLPipeline",
|
|
275
280
|
"StableUnCLIPImg2ImgPipeline",
|
|
276
281
|
"StableUnCLIPPipeline",
|
|
282
|
+
"StableVideoDiffusionPipeline",
|
|
277
283
|
"TextToVideoSDPipeline",
|
|
278
284
|
"TextToVideoZeroPipeline",
|
|
285
|
+
"TextToVideoZeroSDXLPipeline",
|
|
279
286
|
"UnCLIPImageVariationPipeline",
|
|
280
287
|
"UnCLIPPipeline",
|
|
281
288
|
"UniDiffuserModel",
|
|
@@ -443,9 +450,11 @@ if TYPE_CHECKING or DIFFUSERS_SLOW_IMPORT:
|
|
|
443
450
|
from .models import (
|
|
444
451
|
AsymmetricAutoencoderKL,
|
|
445
452
|
AutoencoderKL,
|
|
453
|
+
AutoencoderKLTemporalDecoder,
|
|
446
454
|
AutoencoderTiny,
|
|
447
455
|
ConsistencyDecoderVAE,
|
|
448
456
|
ControlNetModel,
|
|
457
|
+
Kandinsky3UNet,
|
|
449
458
|
ModelMixin,
|
|
450
459
|
MotionAdapter,
|
|
451
460
|
MultiAdapter,
|
|
@@ -458,6 +467,7 @@ if TYPE_CHECKING or DIFFUSERS_SLOW_IMPORT:
|
|
|
458
467
|
UNet2DModel,
|
|
459
468
|
UNet3DConditionModel,
|
|
460
469
|
UNetMotionModel,
|
|
470
|
+
UNetSpatioTemporalConditionModel,
|
|
461
471
|
VQModel,
|
|
462
472
|
)
|
|
463
473
|
from .optimization import (
|
|
@@ -560,6 +570,8 @@ if TYPE_CHECKING or DIFFUSERS_SLOW_IMPORT:
|
|
|
560
570
|
IFPipeline,
|
|
561
571
|
IFSuperResolutionPipeline,
|
|
562
572
|
ImageTextPipelineOutput,
|
|
573
|
+
Kandinsky3Img2ImgPipeline,
|
|
574
|
+
Kandinsky3Pipeline,
|
|
563
575
|
KandinskyCombinedPipeline,
|
|
564
576
|
KandinskyImg2ImgCombinedPipeline,
|
|
565
577
|
KandinskyImg2ImgPipeline,
|
|
@@ -620,8 +632,10 @@ if TYPE_CHECKING or DIFFUSERS_SLOW_IMPORT:
|
|
|
620
632
|
StableDiffusionXLPipeline,
|
|
621
633
|
StableUnCLIPImg2ImgPipeline,
|
|
622
634
|
StableUnCLIPPipeline,
|
|
635
|
+
StableVideoDiffusionPipeline,
|
|
623
636
|
TextToVideoSDPipeline,
|
|
624
637
|
TextToVideoZeroPipeline,
|
|
638
|
+
TextToVideoZeroSDXLPipeline,
|
|
625
639
|
UnCLIPImageVariationPipeline,
|
|
626
640
|
UnCLIPPipeline,
|
|
627
641
|
UniDiffuserModel,
|