1. 28 Feb, 2024 1 commit
  2. 23 Feb, 2024 1 commit
  3. 25 Sep, 2023 1 commit
  4. 11 Apr, 2023 1 commit
    • Patrick von Platen's avatar
      Fix config prints and save, load of pipelines (#2849) · 8b451eb6
      Patrick von Platen authored
      * [Config] Fix config prints and save, load
      
      * Only use potential nn.Modules for dtype and device
      
      * Correct vae image processor
      
      * make sure in_channels is not accessed directly
      
      * make sure in channels is only accessed via config
      
      * Make sure schedulers only access config attributes
      
      * Make sure to access config in SAG
      
      * Fix vae processor and make style
      
      * add tests
      
      * uP
      
      * make style
      
      * Fix more naming issues
      
      * Final fix with vae config
      
      * change more
      8b451eb6
  5. 27 Mar, 2023 1 commit
  6. 23 Mar, 2023 1 commit
  7. 17 Feb, 2023 1 commit
  8. 07 Feb, 2023 1 commit
  9. 06 Feb, 2023 1 commit
  10. 25 Jan, 2023 1 commit
  11. 09 Jan, 2023 1 commit
  12. 30 Dec, 2022 1 commit
  13. 19 Dec, 2022 1 commit
  14. 01 Dec, 2022 1 commit
    • fboulnois's avatar
      Standardize on using `image` argument in all pipelines (#1361) · 52eb0348
      fboulnois authored
      * feat: switch core pipelines to use image arg
      
      * test: update tests for core pipelines
      
      * feat: switch examples to use image arg
      
      * docs: update docs to use image arg
      
      * style: format code using black and doc-builder
      
      * fix: deprecate use of init_image in all pipelines
      52eb0348
  15. 17 Nov, 2022 1 commit
  16. 16 Nov, 2022 2 commits
  17. 07 Nov, 2022 1 commit
  18. 01 Nov, 2022 1 commit
    • MarkRich's avatar
      Add imagic to community pipelines (#958) · a793b1fe
      MarkRich authored
      * initial commit to add imagic to stable diffusion community pipelines
      
      * remove some testing changes
      
      * comments from PR review for imagic stable diffusion
      
      * remove changes from pipeline_stable_diffusion as part of imagic pipeline
      
      * clean up example code and add line back in to pipeline_stable_diffusion for imagic pipeline
      
      * remove unused functions
      
      * small code quality changes for imagic pipeline
      
      * clean up readme
      
      * remove hardcoded logging values for imagic community example
      
      * undo change for DDIMScheduler
      a793b1fe
  19. 29 Oct, 2022 1 commit
  20. 28 Oct, 2022 1 commit
  21. 27 Oct, 2022 2 commits
  22. 26 Oct, 2022 1 commit
    • Pi Esposito's avatar
      minimal stable diffusion GPU memory usage with accelerate hooks (#850) · b2e2d141
      Pi Esposito authored
      * add method to enable cuda with minimal gpu usage to stable diffusion
      
      * add test to minimal cuda memory usage
      
      * ensure all models but unet are onn torch.float32
      
      * move to cpu_offload along with minor internal changes to make it work
      
      * make it test against accelerate master branch
      
      * coming back, its official: I don't know how to make it test againt the master branch from accelerate
      
      * make it install accelerate from master on tests
      
      * go back to accelerate>=0.11
      
      * undo prettier formatting on yml files
      
      * undo prettier formatting on yml files againn
      b2e2d141
  23. 25 Oct, 2022 1 commit
  24. 24 Oct, 2022 1 commit
  25. 13 Oct, 2022 3 commits
  26. 11 Oct, 2022 2 commits
  27. 06 Oct, 2022 1 commit
    • Suraj Patil's avatar
      allow multiple generations per prompt (#741) · c119dc4c
      Suraj Patil authored
      * compute text embeds per prompt
      
      * don't repeat uncond prompts
      
      * repeat separatly
      
      * update image2image
      
      * fix repeat uncond embeds
      
      * adapt inpaint pipeline
      
      * ifx uncond tokens in img2img
      
      * add tests and fix ucond embeds in im2img and inpaint pipe
      c119dc4c
  28. 05 Oct, 2022 3 commits
  29. 04 Oct, 2022 1 commit
  30. 03 Oct, 2022 2 commits
  31. 02 Oct, 2022 1 commit
  32. 30 Sep, 2022 1 commit
    • Nouamane Tazi's avatar
      Optimize Stable Diffusion (#371) · 9ebaea54
      Nouamane Tazi authored
      * initial commit
      
      * make UNet stream capturable
      
      * try to fix noise_pred value
      
      * remove cuda graph and keep NB
      
      * non blocking unet with PNDMScheduler
      
      * make timesteps np arrays for pndm scheduler
      because lists don't get formatted to tensors in `self.set_format`
      
      * make max async in pndm
      
      * use channel last format in unet
      
      * avoid moving timesteps device in each unet call
      
      * avoid memcpy op in `get_timestep_embedding`
      
      * add `channels_last` kwarg to `DiffusionPipeline.from_pretrained`
      
      * update TODO
      
      * replace `channels_last` kwarg with `memory_format` for more generality
      
      * revert the channels_last changes to leave it for another PR
      
      * remove non_blocking when moving input ids to device
      
      * remove blocking from all .to() operations at beginning of pipeline
      
      * fix merging
      
      * fix merging
      
      * model can run in other precisions without autocast
      
      * attn refactoring
      
      * Revert "attn refactoring"
      
      This reverts commit 0c70c0e189cd2c4d8768274c9fcf5b940ee310fb.
      
      * remove restriction to run conv_norm in fp32
      
      * use `baddbmm` instead of `matmul`for better in attention for better perf
      
      * removing all reshapes to test perf
      
      * Revert "removing all reshapes to test perf"
      
      This reverts commit 006ccb8a8c6bc7eb7e512392e692a29d9b1553cd.
      
      * add shapes comments
      
      * hardcore whats needed for jitting
      
      * Revert "hardcore whats needed for jitting"
      
      This reverts commit 2fa9c698eae2890ac5f8e367ca80532ecf94df9a.
      
      * Revert "remove restriction to run conv_norm in fp32"
      
      This reverts commit cec592890c32da3d1b78d38b49e4307aedf459b9.
      
      * revert using baddmm in attention's forward
      
      * cleanup comment
      
      * remove restriction to run conv_norm in fp32. no quality loss was noticed
      
      This reverts commit cc9bc1339c998ebe9e7d733f910c6d72d9792213.
      
      * add more optimizations techniques to docs
      
      * Revert "add shapes comments"
      
      This reverts commit 31c58eadb8892f95478cdf05229adf678678c5f4.
      
      * apply suggestions
      
      * make quality
      
      * apply suggestions
      
      * styling
      
      * `scheduler.timesteps` are now arrays so we dont need .to()
      
      * remove useless .type()
      
      * use mean instead of max in `test_stable_diffusion_inpaint_pipeline_k_lms`
      
      * move scheduler timestamps to correct device if tensors
      
      * add device to `set_timesteps` in LMSD scheduler
      
      * `self.scheduler.set_timesteps` now uses device arg for schedulers that accept it
      
      * quick fix
      
      * styling
      
      * remove kwargs from schedulers `set_timesteps`
      
      * revert to using max in K-LMS inpaint pipeline test
      
      * Revert "`self.scheduler.set_timesteps` now uses device arg for schedulers that accept it"
      
      This reverts commit 00d5a51e5c20d8d445c8664407ef29608106d899.
      
      * move timesteps to correct device before loop in SD pipeline
      
      * apply previous fix to other SD pipelines
      
      * UNet now accepts tensor timesteps even on wrong device, to avoid errors
      - it shouldnt affect performance if timesteps are alrdy on correct device
      - it does slow down performance if they're on the wrong device
      
      * fix pipeline when timesteps are arrays with strides
      9ebaea54