Ryan Dick
9db0e9d696
Add better documentation/errors around the possibility that inpainting models may be incorrectly labelled as non-inpainting models.
2024-07-26 10:18:10 -04:00
Sergey Borisov
416d29fb83
Ruff format
2024-07-24 01:17:28 +03:00
Sergey Borisov
19c00241c6
Use non-inverted mask generally(except inpaint model handling)
2024-07-24 00:59:13 +03:00
Sergey Borisov
c323a760a5
Suggested changes
...
Co-Authored-By: Ryan Dick <14897797+RyanJDick@users.noreply.github.com>
2024-07-23 23:34:28 +03:00
Sergey Borisov
5003e5d763
Same changes as in other PRs, add check for running inpainting on inpaint model without source image
...
Co-Authored-By: Ryan Dick <14897797+RyanJDick@users.noreply.github.com>
2024-07-22 23:47:39 +03:00
Sergey Borisov
58f3072b91
Handle inpainting on normal models
2024-07-21 22:17:29 +03:00
Sergey Borisov
9e7b470189
Handle inpaint models
2024-07-21 20:45:55 +03:00
Mary Hipp
930ff559e4
add sdxl tile to starter models
2024-07-19 16:49:33 -04:00
Ryan Dick
78d2b1b650
Merge branch 'main' into stalker-backend_base
2024-07-19 16:25:20 -04:00
Sergey Borisov
39e10d894c
Add invocation cancellation logic to patchers
2024-07-19 23:17:01 +03:00
Ryan Dick
e16faa6370
Add gradient blending to tile seams in MultiDiffusion.
2024-07-19 13:05:50 -07:00
Ryan Dick
83a86abce2
Add unit tests for ExtensionsManager and ExtensionBase.
2024-07-19 14:15:46 -04:00
Sergey Borisov
0c56d4a581
Ryan's suggested changes to extension manager/extensions
...
Co-Authored-By: Ryan Dick <14897797+RyanJDick@users.noreply.github.com>
2024-07-18 23:49:44 +03:00
Lincoln Stein
97a7f51721
don't use cpu state_dict for model unpatching when executing on cpu ( #6631 )
...
Co-authored-by: Lincoln Stein <lstein@gmail.com>
2024-07-18 15:34:01 -04:00
StAlKeR7779
710dc6b487
Merge branch 'main' into stalker7779/backend_base
2024-07-18 01:08:04 +03:00
Sergey Borisov
2ef3b49a79
Add run cancelling logic to extension manager
2024-07-17 04:39:15 +03:00
Sergey Borisov
3f79467f7b
Ruff format
2024-07-17 04:24:45 +03:00
Sergey Borisov
2c2ec8f0bc
Comments, a bit refactor
2024-07-17 04:20:31 +03:00
Sergey Borisov
79e35bd0d3
Minor fixes
2024-07-17 03:48:37 +03:00
Sergey Borisov
137202b77c
Remove patch_unet logic for now
2024-07-17 03:40:27 +03:00
Sergey Borisov
03e22c257b
Convert conditioning_mode to enum
2024-07-17 03:37:11 +03:00
Sergey Borisov
ae6d4fbc78
Move out _concat_conditionings_for_batch submethods
2024-07-17 03:31:26 +03:00
Sergey Borisov
cd1bc1595a
Rename sequential as private variable
2024-07-17 03:24:11 +03:00
Ryan Dick
f866b49255
Add some ESRGAN and SwinIR upscale models to the starter models list.
2024-07-16 15:55:10 -04:00
Sergey Borisov
b7c6c63005
Added some comments
2024-07-16 22:52:44 +03:00
Ryan Dick
6b0ca88177
Merge branch 'main' into ryan/spandrel-upscale-tiling
2024-07-16 15:40:14 -04:00
Ryan Dick
81991e072b
Merge branch 'main' into ryan/spandrel-upscale
2024-07-16 15:14:08 -04:00
Sergey Borisov
cec345cb5c
Change attention processor apply logic
2024-07-16 20:03:29 +03:00
Sergey Borisov
608cbe3f5c
Separate inputs in denoise context
2024-07-16 19:30:29 +03:00
psychedelicious
38343917f8
fix(backend): revert non-blocking device transfer
...
In #6490 we enabled non-blocking torch device transfers throughout the model manager's memory management code. When using this torch feature, torch attempts to wait until the tensor transfer has completed before allowing any access to the tensor. Theoretically, that should make this a safe feature to use.
This provides a small performance improvement but causes race conditions in some situations. Specific platforms/systems are affected, and complicated data dependencies can make this unsafe.
- Intermittent black images on MPS devices - reported on discord and #6545 , fixed with special handling in #6549 .
- Intermittent OOMs and black images on a P4000 GPU on Windows - reported in #6613 , fixed in this commit.
On my system, I haven't experience any issues with generation, but targeted testing of non-blocking ops did expose a race condition when moving tensors from CUDA to CPU.
One workaround is to use torch streams with manual sync points. Our application logic is complicated enough that this would be a lot of work and feels ripe for edge cases and missed spots.
Much safer is to fully revert non-locking - which is what this change does.
2024-07-16 08:59:42 +10:00
Sergey Borisov
9f088d1bf5
Multiple small fixes
2024-07-16 00:51:25 +03:00
Sergey Borisov
fd8d1c12d4
Remove 'del' operator overload
2024-07-16 00:43:32 +03:00
Sergey Borisov
d623bd429b
Fix condtionings logic
2024-07-16 00:31:56 +03:00
psychedelicious
28e79c4c5e
chore: ruff
...
Looks like an upstream change to ruff resulted in this file being a violation.
2024-07-15 14:05:04 +10:00
Sergey Borisov
499e4d4fde
Add preview extension to check logic
2024-07-13 00:45:04 +03:00
Sergey Borisov
e961dd1dec
Remove remains of priority logic
2024-07-13 00:44:21 +03:00
Sergey Borisov
7e00526999
Remove overrides logic for now
2024-07-13 00:28:56 +03:00
Sergey Borisov
3a9dda9177
Renames
2024-07-12 22:44:00 +03:00
Sergey Borisov
bd8ae5d896
Simplify guidance modes
2024-07-12 22:01:37 +03:00
Sergey Borisov
87e96e1be2
Rename modifiers to callbacks, convert order to int, a bit unify injection points
2024-07-12 22:01:05 +03:00
Sergey Borisov
0bc60378d3
A bit rework conditioning convert to unet kwargs
2024-07-12 20:43:32 +03:00
Sergey Borisov
9cc852cf7f
Base code from draft PR
2024-07-12 20:31:26 +03:00
Ryan Dick
ab775726b7
Add tiling support to the SpoandrelImageToImage node.
2024-07-10 14:25:19 -04:00
Ryan Dick
650902dc29
Fix broken unit test caused by non-existent model path.
2024-07-10 13:59:17 -04:00
Ryan Dick
7b5d4935b4
Merge branch 'main' into ryan/spandrel-upscale
2024-07-09 13:47:11 -04:00
Ryan Dick
af63c538ed
Demote error log to warning to models treated as having size 0.
2024-07-09 08:35:43 -04:00
Ryan Dick
0ce6ec634d
Do not assign the result of SpandrelImageToImageModel.load_from_file(...) during probe to ensure that the model is immediately gc'd.
2024-07-05 14:05:12 -04:00
Ryan Dick
35f8781ea2
Fix static type errors with SCHEDULER_NAME_VALUES. And, avoid bi-directional cross-directory imports, which contribute to circular import issues.
2024-07-05 07:38:35 -07:00
Ryan Dick
36202d6d25
Delete unused duplicate libc_util.py file. The active version is at invokeai/backend/model_manager/libc_util.py.
2024-07-04 10:30:40 -04:00
Ryan Dick
1d449097cc
Apply ruff rule to disallow all relative imports.
2024-07-04 09:35:37 -04:00