Commit graph

406 commits

Author SHA1 Message Date
Pierre Chapuis 7eb8eb4c68 add support for pytorch 2.2 (2.1 is still supported)
also bump all dev dependencies to their latest version
2024-01-31 15:03:06 +01:00
Cédric Deltheil 45357c5548 mkdocs.yml: add mkdocstrings to plugins 2024-01-31 14:27:47 +01:00
Cédric Deltheil 146a1fae2a add mkdocstrings as dev dependency
Via:

    rye add --dev "mkdocstrings[python]"

Also added to requirements.docs.txt for GH Pages.
2024-01-31 14:27:47 +01:00
Cédric Deltheil 5634e68fde add end-to-end test for multi-ip adapter 2024-01-31 11:03:49 +01:00
Cédric Deltheil ca5c5a7ca5 add helper for multiple image prompts 2024-01-31 11:03:49 +01:00
Cédric Deltheil fd01ba910e fix minor typos in code and docs 2024-01-30 09:52:40 +01:00
Cédric Deltheil feff4c78ae segment-anything: fix class name typo
Note: weights are impacted
2024-01-30 09:52:40 +01:00
Cédric Deltheil 64b52b407f mkdocs.yml: fix typo 2024-01-30 09:52:40 +01:00
Pierre Chapuis 1eb5c779de better coverage config
- exclude e.g. tests
- include files not imported at all
- exclude some common patterns (see https://coverage.readthedocs.io/en/7.4.1/excluding.html#excluding-source-files)
2024-01-29 22:32:16 +01:00
Pierre Chapuis 19bc081658 call GC between each e2e test to avoid OOM 2024-01-29 17:57:40 +01:00
Cédric Deltheil 5a8389ee0d pyproject.toml: formatting 2024-01-29 15:10:06 +01:00
Cédric Deltheil cd64bb29e6 add rye scripts for code coverage 2024-01-29 15:10:06 +01:00
Cédric Deltheil 1efb7a0e10 rye add --dev coverage 2024-01-29 15:10:06 +01:00
Cédric Deltheil c01dad1c77 requirements.lock: update due to rye 0.19.0
i.e. newly added `lock --with-sources` option
2024-01-29 15:10:06 +01:00
Pierre Chapuis deb5e930ae fix exclusions for Downsample and Upsample
(also simplify list comprehension for exclusion list)
2024-01-29 11:11:14 +01:00
Pierre Chapuis 83c95fcf44 fix sorting method for LoRA keys
- support _out_0
- sort _in before _out
- avoid false positives by only considering suffixes
2024-01-29 11:11:14 +01:00
Pierre Chapuis ce22c8f51b fix detection of unet-only LoRAs 2024-01-29 11:11:14 +01:00
Pierre Chapuis ce0339b4cc add a get_path helper to modules 2024-01-26 19:31:13 +01:00
limiteinductive 0ee2d5e075 Fix warmup steps calculation when gradient_accumulation is used 2024-01-25 12:20:36 +01:00
Bryce 12a5439fc4 refactor: rename noise => predicted_noise
and in euler, `alt_noise` can now be simply `noise`
2024-01-24 18:15:10 +01:00
Cédric Deltheil 695c24dd3a image_prompt: remove obsolete comment
Not needed anymore since #168 (CrossAttentionAdapter refactoring)
2024-01-24 09:44:00 +01:00
limiteinductive 3b458f0d8d fix test_names LoraManager test 2024-01-23 14:12:03 +01:00
limiteinductive 421da6a3b6 Load Multiple LoRAs with SDLoraManager 2024-01-23 14:12:03 +01:00
Pierre Chapuis fb2f0e28d4 add rebuild() to Scheduler interface
for use in `set_inference_steps()`
2024-01-23 11:11:50 +01:00
Pierre Chapuis a5c665462a add missing constructor arguments to DDPM scheduler 2024-01-23 11:11:50 +01:00
Cédric Deltheil 40c33b9595 rollback to 50 inference steps in IP-Adapter tests
Follow up of 8a36c8c

This is what is used in the official notebook (ip_adapter_demo.ipynb and
ip_adapter-plus_demo.ipynb)
2024-01-22 09:35:31 +01:00
limiteinductive ed3621362f Add load_tensors utils in fluxion 2024-01-21 12:34:33 +01:00
Pierre Colle 91aea9b7ff fix: summarize_tensor(tensor) when tensor.numel() == 0 2024-01-20 14:32:35 +01:00
Cédric Deltheil 2b4bc77534 prepare_test_weights: update segment-anything hash
Follow up of 00f494e
2024-01-20 14:05:45 +01:00
Pierre Chapuis f6beee8388 tweak docstring for DDPM 2024-01-19 19:01:02 +01:00
Pierre Chapuis 8a36c8c279 make the first diffusion step a first class property of LDM & Schedulers 2024-01-19 18:52:45 +01:00
hugojarkoff 42b7749630 Fix references for e2e tests 2024-01-19 15:00:03 +01:00
Pierre Chapuis de6266010d fix typo (sinuosoidal -> sinusoidal) 2024-01-19 14:37:45 +01:00
Pierre Chapuis d34e36797b fix typo (sinuosidal -> sinusoidal) 2024-01-19 14:27:37 +01:00
Cédric Deltheil fde61757fb summarize_tensor: fix minor warning
Calling `tensor.float()` on a complex tensor raises a warning:

    UserWarning: Casting complex values to real discards the imaginary
    part (Triggered internally at ../aten/src/ATen/native/Copy.cpp:299.)

Follow up of #171
2024-01-19 11:34:47 +01:00
Pierre Chapuis aa9f572611 training dependencies are test dependencies 2024-01-19 10:09:33 +01:00
Pierre Chapuis ce3035923b improve DPM solver test 2024-01-18 19:23:11 +01:00
Pierre Chapuis 999e429697 fix bug in dpm_solver_first_order_update 2024-01-18 19:23:11 +01:00
Pierre Chapuis 59db1f0bd5 style
- avoid useless multiple assignments
- use coherent variable names
2024-01-18 19:23:11 +01:00
Pierre Chapuis aaddead17d DPM: add a mode to use first order for last step 2024-01-18 19:23:11 +01:00
hugojarkoff 17d9701dde Remove additional noise in final sample of DDIM inference process 2024-01-18 18:43:13 +01:00
limiteinductive a1f50f3f9d refactor Lora LoraAdapter and the latent_diffusion/lora file 2024-01-18 16:27:38 +01:00
Cédric Deltheil dd87b9706e pick the right class for CLIP text converter
i.e. CLIPTextModel by default or CLIPTextModelWithProjection for SDXL
so-called text_encoder_2

This silent false positive warnings like:

    Some weights of CLIPTextModelWithProjection were not initialized
    from the model checkpoint [...]
2024-01-18 11:17:41 +01:00
hugojarkoff a6a9c8b972 Fix Value dimension in ImageCrossAttention 2024-01-17 16:46:24 +01:00
Pierre Chapuis 7839c54ae8 unet conversion: add option to skip init check 2024-01-16 19:10:59 +01:00
Pierre Chapuis d2f38871fd add a way to specify the subfolder of the unet
(no subfolder -> pass an empty string)
2024-01-16 19:10:59 +01:00
Pierre Chapuis 94a918a474 fix invalid default value for --half in help 2024-01-16 19:10:59 +01:00
limiteinductive 2b977bc69e fix broken self-attention guidance with ip-adapter
The #168 and #177 refactorings caused this regression. A new end-to-end
test has been added for proper coverage.

(This fix will be revisited at some point)
2024-01-16 17:21:24 +01:00
limiteinductive d9ae7ca6a5 cast to float32 before converting to image in tensor_to_image to fix bfloat16 conversion 2024-01-16 11:50:58 +01:00
limiteinductive 7f722029be add basic unit test for training_utils 2024-01-14 22:08:20 +01:00