1. 02 Nov, 2023 2 commits
    • Dhruv Nair's avatar
      Animatediff Proposal (#5413) · 2a8cf8e3
      Dhruv Nair authored
      * draft design
      
      * clean up
      
      * clean up
      
      * clean up
      
      * clean up
      
      * clean up
      
      * clean  up
      
      * clean up
      
      * clean up
      
      * clean up
      
      * update pipeline
      
      * clean up
      
      * clean up
      
      * clean up
      
      * add tests
      
      * change motion block
      
      * clean up
      
      * clean up
      
      * clean up
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * clean up
      
      * update
      
      * update
      
      * update model test
      
      * update
      
      * update
      
      * update
      
      * update
      
      * make style
      
      * update
      
      * fix embeddings
      
      * update
      
      * merge upstream
      
      * max fix copies
      
      * fix bug
      
      * fix mistake
      
      * add docs
      
      * update
      
      * clean up
      
      * update
      
      * clean up
      
      * clean up
      
      * fix docstrings
      
      * fix docstrings
      
      * update
      
      * update
      
      * clean  up
      
      * update
      2a8cf8e3
    • Patrick von Platen's avatar
      [Tests] Fix cpu offload test (#5626) · 9723f8a5
      Patrick von Platen authored
      * fix more
      
      * fix more
      9723f8a5
  2. 01 Nov, 2023 4 commits
  3. 30 Oct, 2023 1 commit
  4. 26 Oct, 2023 3 commits
  5. 25 Oct, 2023 1 commit
  6. 24 Oct, 2023 2 commits
    • dg845's avatar
      Add Latent Consistency Models Pipeline (#5448) · 958e17da
      dg845 authored
      
      
      * initial commit for LatentConsistencyModelPipeline and LCMScheduler based on the community pipeline
      
      * Add callback and freeu support.
      
      * apply suggestions from review
      
      * Clean up LCMScheduler
      
      * Remove timeindex argument to LCMScheduler.step.
      
      * Add support for clipping or thresholding the predicted original sample.
      
      * Remove unused methods and arguments in LCMScheduler.
      
      * Improve comment about (lack of) negative prompt support.
      
      * Change input guidance_scale to match the StableDiffusionPipeline (Imagen) CFG formulation.
      
      * Move lcm_origin_steps from pipeline __call__ to LCMScheduler.__init__/config (as origin_steps).
      
      * Fix typo when clipping/thresholding in LCMScheduler.
      
      * Add some initial LCMScheduler tests.
      
      * add type annotations from review
      
      * Fix type annotation bug.
      
      * Override test_add_noise_device in LCMSchedulerTest since hardcoded timesteps doesn't work under default settings.
      
      * Add generator argument pipeline prepare_latents call.
      
      * Cast LCMScheduler.timesteps to long in set_timesteps.
      
      * Add onestep and multistep full loop scheduler tests.
      
      * Set default height/width to None and don't hardcode guidance scale embedding dim.
      
      * Add initial LatentConsistencyPipeline fast and slow tests.
      
      * Add initial documentation for LatentConsistencyModelPipeline and LCMScheduler.
      
      * Make remaining failing fast tests pass.
      
      * make style
      
      * Make original_inference_steps configurable from pipeline __call__ again.
      
      * make style
      
      * Remove guidance_rescale arg from pipeline __call__ since LCM currently doesn't support CFG.
      
      * Make LCMScheduler defaults match config of LCM_Dreamshaper_v7 checkpoint.
      
      * Fix LatentConsistencyPipeline slow tests and add dummy expected slices.
      
      * Add checks for original_steps in LCMScheduler.set_timesteps.
      
      * make fix-copies
      
      * Improve LatentConsistencyModelPipeline docs.
      
      * Apply suggestions from code review
      Co-authored-by: default avatarAryan V S <avs050602@gmail.com>
      
      * Apply suggestions from code review
      Co-authored-by: default avatarAryan V S <avs050602@gmail.com>
      
      * Apply suggestions from code review
      Co-authored-by: default avatarAryan V S <avs050602@gmail.com>
      
      * Update src/diffusers/schedulers/scheduling_lcm.py
      
      * Apply suggestions from code review
      Co-authored-by: default avatarAryan V S <avs050602@gmail.com>
      
      * finish
      
      ---------
      Co-authored-by: default avatarSayak Paul <spsayakpaul@gmail.com>
      Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
      Co-authored-by: default avatarAryan V S <avs050602@gmail.com>
      958e17da
    • Bowen Bao's avatar
      Register BaseOutput subclasses as supported torch.utils._pytree nodes (#5459) · c7617e48
      Bowen Bao authored
      
      
      * Register BaseOutput subclasses as supported torch.utils._pytree nodes
      
      * lint
      
      ---------
      Co-authored-by: default avatarDhruv Nair <dhruv.nair@gmail.com>
      c7617e48
  7. 23 Oct, 2023 2 commits
    • Dhruv Nair's avatar
      Fix Slow Tests (#5469) · 33293ed5
      Dhruv Nair authored
      fix tests
      33293ed5
    • Ryan Dick's avatar
      Make T2I-Adapter downscale padding match the UNet (#5435) · 0eac9cd0
      Ryan Dick authored
      
      
      * Update get_dummy_inputs(...) in T2I-Adapter tests to take image height and width as params.
      
      * Update the T2I-Adapter unit tests to run with the standard number of UNet down blocks so that all T2I-Adapter down blocks get exercised.
      
      * Update the T2I-Adapter down blocks to better match the padding behavior of the UNet.
      
      * Revert "Update the T2I-Adapter unit tests to run with the standard number of UNet down blocks so that all T2I-Adapter down blocks get exercised."
      
      This reverts commit 6d4a060a34415ec973a252944216f4fb8b9926cd.
      
      * Create  utility functions for testing the T2I-Adapter downscaling bahevior.
      
      * (minor) Improve readability with an intermediate named variable.
      
      * Statically parameterize  T2I-Adapter test dimensions rather than generating them dynamically.
      
      * Fix static checks.
      
      ---------
      Co-authored-by: default avatarSayak Paul <spsayakpaul@gmail.com>
      0eac9cd0
  8. 21 Oct, 2023 1 commit
  9. 20 Oct, 2023 1 commit
    • Vishnu V Jaddipal's avatar
      Added support to create asymmetrical U-Net structures (#5400) · 8dba1808
      Vishnu V Jaddipal authored
      
      
      * Added args, kwargs to ```U
      
      * Add UNetMidBlock2D as a supported mid block type
      
      * Fix extra init input for UNetMidBlock2D, change allowed types for Mid-block init
      
      * Update unet_2d_condition.py
      
      * Update unet_2d_condition.py
      
      * Update unet_2d_condition.py
      
      * Update unet_2d_condition.py
      
      * Update unet_2d_condition.py
      
      * Update unet_2d_condition.py
      
      * Update unet_2d_condition.py
      
      * Update unet_2d_condition.py
      
      * Update unet_2d_blocks.py
      
      * Update unet_2d_blocks.py
      
      * Update unet_2d_blocks.py
      
      * Update unet_2d_condition.py
      
      * Update unet_2d_blocks.py
      
      * Updated docstring, increased check strictness
      
      Updated the docstring for ```UNet2DConditionModel``` to include ```reverse_transformer_layers_per_block``` and updated checking for nested list type ```transformer_layers_per_block```
      
      * Add basic shape-check test for asymmetrical unets
      
      * Update src/diffusers/models/unet_2d_blocks.py
      
      Removed blank line
      Co-authored-by: default avatarSayak Paul <spsayakpaul@gmail.com>
      
      * Update unet_2d_condition.py
      
      Remove blank space
      
      * Update unet_2d_condition.py
      
      Changed docstring for `mid_block_type`
      
      * Fixed docstring and wrong default value
      
      * Reformat with black
      
      * Reformat with necessary commands
      
      * Add UNetMidBlockFlat to versatile_diffusion/modeling_text_unet.py to ensure consistency
      
      * Removed args, kwargs, use on mid-block type
      
      * Make fix-copies
      
      * Update src/diffusers/models/unet_2d_condition.py
      
      Wrap into single line
      Co-authored-by: default avatarSayak Paul <spsayakpaul@gmail.com>
      
      * make fix-copies
      
      ---------
      Co-authored-by: default avatarSayak Paul <spsayakpaul@gmail.com>
      8dba1808
  10. 17 Oct, 2023 2 commits
  11. 13 Oct, 2023 1 commit
  12. 12 Oct, 2023 1 commit
  13. 09 Oct, 2023 4 commits
  14. 06 Oct, 2023 2 commits
  15. 05 Oct, 2023 1 commit
    • Kadir Nar's avatar
      [Core] Add FreeU mechanism (#5164) · 84b82a6c
      Kadir Nar authored
      *  Added Fourier filter function to upsample blocks
      
      * 🔧 Update Fourier_filter for float16 support
      
      *  Added UNetFreeUConfig to UNet model for FreeU adaptation 🛠
      
      ️
      
      * move unet to its original form and add fourier_filter to torch_utils.
      
      * implement freeU enable mechanism
      
      * implement disable mechanism
      
      * resolution index.
      
      * correct resolution idx condition.
      
      * fix copies.
      
      * no need to use resolution_idx in vae.
      
      * spell out the kwargs
      
      * proper config property
      
      * fix attribution setting
      
      * place unet hasattr properly.
      
      * fix: attribute access.
      
      * proper disable
      
      * remove validation method.
      
      * debug
      
      * debug
      
      * debug
      
      * debug
      
      * debug
      
      * debug
      
      * potential fix.
      
      * add: doc.
      
      * fix copies
      
      * add: tests.
      
      * add: support freeU in SDXL.
      
      * set default value of resolution idx.
      
      * set default values for resolution_idx.
      
      * fix copies
      
      * fix rest.
      
      * fix copies
      
      * address PR comments.
      
      * run fix-copies
      
      * move apply_free_u to utils and other minors.
      
      * introduce support for video (unet3D)
      
      * minor ups
      
      * consistent fix-copies.
      
      * consistent stuff
      
      * fix-copies
      
      * add: rest
      
      * add: docs.
      
      * fix: tests
      
      * fix: doc path
      
      * Apply suggestions from code review
      Co-authored-by: default avatarSteven Liu <59462357+stevhliu@users.noreply.github.com>
      
      * style up
      
      * move to techniques.
      
      * add: slow test for sd freeu.
      
      * add: slow test for sd freeu.
      
      * add: slow test for sd freeu.
      
      * add: slow test for sd freeu.
      
      * add: slow test for sd freeu.
      
      * add: slow test for sd freeu.
      
      * add: slow test for video with freeu
      
      * add: slow test for video with freeu
      
      * add: slow test for video with freeu
      
      * style
      
      ---------
      Co-authored-by: default avatarSayak Paul <spsayakpaul@gmail.com>
      Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
      Co-authored-by: default avatarSteven Liu <59462357+stevhliu@users.noreply.github.com>
      84b82a6c
  16. 04 Oct, 2023 1 commit
    • Dhruv Nair's avatar
      New Pipeline Slow Test runners (#5131) · dd5a3629
      Dhruv Nair authored
      
      
      * pipline fetcher
      
      * update script
      
      * clean up
      
      * clean up
      
      * clean up
      
      * new pipeline runner
      
      * rename tests to match modules
      
      * test actions in pr
      
      * change runner to gpu
      
      * clean up
      
      * clean up
      
      * clean up
      
      * fix report
      
      * fix reporting
      
      * clean up
      
      * show test stats in failure reports
      
      * give names to jobs
      
      * add lora tests
      
      * split torch cuda tests and add compile tests
      
      * clean up
      
      * fix tests
      
      * change push to run only on main
      
      ---------
      Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
      dd5a3629
  17. 02 Oct, 2023 3 commits
    • Leng Yue's avatar
      Update UniPC to support 1D diffusion. (#5199) · c8b0f0eb
      Leng Yue authored
      
      
      * Update Unipc einsum to support 1D and 3D diffusion.
      
      * Add unittest
      
      * Update unittest & edge case
      
      * Fix unittest
      
      * Fix testing_utils.py
      
      * Fix unittest file
      
      ---------
      Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
      c8b0f0eb
    • dg845's avatar
      [WIP] Refactor UniDiffuser Pipeline and Tests (#4948) · cd1b8d7c
      dg845 authored
      
      
      * Add VAE slicing and tiling methods.
      
      * Switch to using VaeImageProcessing for preprocessing and postprocessing of images.
      
      * Rename the VaeImageProcessor to vae_image_processor to avoid a name clash with the CLIPImageProcessor (image_processor).
      
      * Remove the postprocess() function because we're using a VaeImageProcessor instead.
      
      * Remove UniDiffuserPipeline.decode_image_latents because we're using VaeImageProcessor instead.
      
      * Refactor generating text from text latents into a decode_text_latents method.
      
      * Add enable_full_determinism() to UniDiffuser tests.
      
      * make style
      
      * Add PipelineLatentTesterMixin to UniDiffuserPipelineFastTests.
      
      * Remove enable_model_cpu_offload since it is now part of DiffusionPipeline.
      
      * Rename the VaeImageProcessor instance to self.image_processor for consistency with other pipelines and rename the CLIPImageProcessor instance to clip_image_processor to avoid a name clash.
      
      * Update UniDiffuser conversion script.
      
      * Make safe_serialization configurable in UniDiffuser conversion script.
      
      * Rename image_processor to clip_image_processor in UniDiffuser tests.
      
      * Add PipelineKarrasSchedulerTesterMixin to UniDiffuserPipelineFastTests.
      
      * Add initial test for compiling the UniDiffuser model (not tested yet).
      
      * Update encode_prompt and _encode_prompt to match that of StableDiffusionPipeline.
      
      * Turn off standard classifier-free guidance for now.
      
      * make style
      
      * make fix-copies
      
      * apply suggestions from review
      
      ---------
      Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
      cd1b8d7c
    • Dhruv Nair's avatar
      Compile test fixes (#5235) · bbe8d3ae
      Dhruv Nair authored
      compile test fixes
      bbe8d3ae
  18. 29 Sep, 2023 3 commits
  19. 28 Sep, 2023 1 commit
  20. 27 Sep, 2023 3 commits
  21. 26 Sep, 2023 1 commit