Lincoln Stein
bc16b50302
add followlinks to all os.walk() calls
2023-08-17 18:54:18 -04:00
Kevin Turner
4267132926
dep(diffusers): upgrade diffusers to 0.20
...
Removed `is_safetensors_available` as safetensors is now a required dependency of diffusers.
2023-08-17 13:42:29 -07:00
Lincoln Stein
b69f26c85c
add support for "balanced" attention slice size
2023-08-17 16:11:09 -04:00
Lincoln Stein
1102c12084
Merge branch 'main' into fix/sdxl_controlnet
2023-08-17 15:40:51 -04:00
Lincoln Stein
b5cee7d20c
blackify chore
2023-08-17 15:40:15 -04:00
Lincoln Stein
23b4e1cea0
Merge branch 'main' into refactor/rename-performance-options
2023-08-17 14:43:00 -04:00
Lincoln Stein
635a814dfb
fix up documentation
2023-08-17 14:32:05 -04:00
Lincoln Stein
c19835c2d0
wired attention configuration into backend
2023-08-17 14:20:45 -04:00
Lincoln Stein
ed38eaa10c
refactor InvokeAIAppConfig
2023-08-17 13:47:26 -04:00
Lincoln Stein
842eb4bb0a
Merge branch 'main' into bugfix/enable-links-in-autoimport
2023-08-17 07:20:26 -04:00
blessedcoolant
8923201fdf
Merge branch 'main' into seam-painting
2023-08-17 21:21:44 +12:00
mickr777
226409107b
Fix for Image Deletion issue
2023-08-17 17:18:11 +10:00
Lincoln Stein
503e3bca54
revise config but need to migrate old format to new
2023-08-16 23:30:00 -04:00
Lincoln Stein
daf75a1361
blackify
2023-08-16 21:47:29 -04:00
Lincoln Stein
c39f8b478b
fix misplaced ram_used and ram_changed attributes
2023-08-16 21:39:18 -04:00
Lincoln Stein
2ca8611723
add +/- sign in front of RAM delta
2023-08-16 15:53:01 -04:00
Lincoln Stein
b12cf315a8
Merge branch 'main' into feat/collect-more-stats
2023-08-16 09:19:33 -04:00
blessedcoolant
975586bb40
Merge branch 'main' into seam-painting
2023-08-17 01:05:42 +12:00
psychedelicious
a7ba142ad9
feat(ui): set min zoom on nodes to 0.1
2023-08-16 23:04:36 +10:00
psychedelicious
0d36bab6cc
fix(ui): do not rerender top panel buttons
2023-08-16 23:04:36 +10:00
psychedelicious
c2e7f62701
fix(ui): do not rerender edges
2023-08-16 23:04:36 +10:00
psychedelicious
1f194e3688
chore(ui): lint
2023-08-16 23:04:36 +10:00
psychedelicious
f9b8b5cff2
fix(ui): improve node rendering performance
...
Previously the editor was using prop-drilling node data and templates to get values deep into nodes. This ended up causing very noticeable performance degradation. For example, any text entry fields were super laggy.
Refactor the whole thing to use memoized selectors via hooks. The hooks are mostly very narrow, returning only the data needed.
Data objects are never passed down, only node id and field name - sometimes the field kind ('input' or 'output').
The end result is a *much* smoother node editor with very minimal rerenders.
2023-08-16 23:04:36 +10:00
psychedelicious
f7c92e1eff
fix(ui): disable awkward resize animation for <Flow />
2023-08-16 23:04:36 +10:00
psychedelicious
70b8c3dfea
fix(ui): fix context menu on workflow editor
...
There is a tricky mouse event interaction between chakra's `useOutsideClick()` hook (used by chakra `<Menu />`) and reactflow. The hook doesn't work when you click the main reactflow area.
To get around this, I've used a dirty hack, copy-pasting the simple context menu component we use, and extending it slightly to respond to a global `contextMenusClosed` redux action.
2023-08-16 23:04:36 +10:00
psychedelicious
43b30355e4
feat: make primitive node titles consistent
2023-08-16 23:04:36 +10:00
Lincoln Stein
a93bd01353
fix bad merge
2023-08-16 08:53:07 -04:00
Lincoln Stein
bb1b8ceaa8
Update invokeai/backend/model_management/model_cache.py
...
Co-authored-by: StAlKeR7779 <stalkek7779@yandex.ru>
2023-08-16 08:48:44 -04:00
Lincoln Stein
be8edaf3fd
Merge branch 'main' into feat/collect-more-stats
2023-08-16 08:48:14 -04:00
blessedcoolant
9cbaefaa81
feat: Add Seam Painting to SDXL
2023-08-16 19:46:48 +12:00
blessedcoolant
cc7c6e5d41
feat: Add Seam Painting with Scale Before
2023-08-16 19:35:03 +12:00
blessedcoolant
f2ee8a3da8
wip: Basic Seam Painting (only normal models) (no scale)
2023-08-16 17:26:23 +12:00
blessedcoolant
e98d7a52d4
feat: Add Seam Painting Options
2023-08-16 17:25:55 +12:00
Lincoln Stein
21e1c0a5f0
tweaked formatting
2023-08-15 22:25:30 -04:00
psychedelicious
611e241ca7
chore(ui): regen types
2023-08-16 12:07:34 +10:00
psychedelicious
6df4af2c79
chore: lint
2023-08-16 12:07:34 +10:00
psychedelicious
0f8606914e
feat(ui): remove shouldShowDeleteButton
...
- remove this state entirely
- use `state.hotkeys.shift` directly to hide and show the icon on gallery
- also formatting
2023-08-16 12:07:34 +10:00
psychedelicious
5b1099193d
fix(ui): restore reset button in node image component
2023-08-16 12:07:34 +10:00
psychedelicious
230131646f
feat(ui): use imageDTOs
instead of images
in starring queries
2023-08-16 12:07:34 +10:00
psychedelicious
8b1ec2685f
chore: black
2023-08-16 12:07:34 +10:00
psychedelicious
60c2c877d7
fix: add response model for star/unstar routes
...
- also implement pessimistic updates for starring, only changing the images that were successfully updated by backend
- some autoformat changes crept in
2023-08-16 12:07:34 +10:00
psychedelicious
315a056686
feat(ui): show Star All
if selection is a mix of starred and unstarred
2023-08-16 12:07:34 +10:00
maryhipp
80b0c5eab4
change from pin to star
2023-08-16 12:07:34 +10:00
Mary Hipp
08dc265e09
add listener to update selection list with change in star status
2023-08-16 12:07:34 +10:00
Mary Hipp
029a95550e
rename pin to star, add multiselect and remove single image update api
2023-08-16 12:07:34 +10:00
maryhipp
ee6a26a97d
update list images endpoint to sort by pinnedness and then created_at
2023-08-16 12:07:34 +10:00
Mary Hipp
a512fdc0f6
update IAIDndImage to use children for icons, add UI for shift+delete to delete images from gallery
2023-08-16 12:07:34 +10:00
Mary Hipp
767a612746
(ui) WIP trying to get all cache scenarios working smoothly, fix assets
2023-08-16 12:07:34 +10:00
Mary Hipp
0a71d6baa1
(ui) update cache to render pinned images alongside unpinned correctly, as well as changes in pinnedness
2023-08-16 12:07:34 +10:00
Mary Hipp
37be827e17
(ui) hook up toggle pin mutation with context menu for single image
2023-08-16 12:07:34 +10:00
maryhipp
04a9894e77
(api) add ability to pin and unpin images
2023-08-16 12:07:34 +10:00
Lincoln Stein
f9958de6be
added memory used to load models
2023-08-15 21:56:19 -04:00
Lincoln Stein
ec10aca91e
report RAM and RAM cache statistics
2023-08-15 21:00:30 -04:00
psychedelicious
2b7dd3e236
feat: add missing primitive collections
...
- add missing primitive collections
- remove `Seed` and `LoRAField` (they don't exist)
2023-08-16 09:54:38 +10:00
psychedelicious
fa884134d9
feat: rename ui_type_hint
to ui_type
...
Just a bit more succinct while not losing any clarity.
2023-08-16 09:54:38 +10:00
blessedcoolant
18006cab9a
chore: Regen frontend types
2023-08-16 09:54:38 +10:00
psychedelicious
75ea716c13
feat(ui): hide node footer if there is nothing to display
2023-08-16 09:54:38 +10:00
blessedcoolant
d5f7027597
feat: Save Mask option for Canvas
2023-08-16 09:54:38 +10:00
blessedcoolant
b1ad777f5a
fix: Outpainting being broken due to field name change
2023-08-16 09:54:38 +10:00
psychedelicious
f65c8092cb
fix(ui): fix issue with node editor state not restoring correctly on mount
...
If `reactflow` initializes before the node templates are parsed, edges may not be rendered and the viewport may get reset.
- Add `isReady` state to `NodesState`. This is false when we are loading or parsing node templates and true when that is finished.
- Conditionally render `reactflow` based on `isReady`.
- Add `viewport` to `NodesState` & handlers to keep it synced. This allows `reactflow` to mount and unmount freely and not lose viewport.
2023-08-16 09:54:38 +10:00
psychedelicious
94bfef3543
feat(ui): add UI component for unknown node types
2023-08-16 09:54:38 +10:00
psychedelicious
c48fd9c083
feat(nodes): refactor parameter/primitive nodes
...
Refine concept of "parameter" nodes to "primitives":
- integer
- float
- string
- boolean
- image
- latents
- conditioning
- color
Each primitive has:
- A field definition, if it is not already python primitive value. The field is how this primitive value is passed between nodes. Collections are lists of the field in node definitions. ex: `ImageField` & `list[ImageField]`
- A single output class. ex: `ImageOutput`
- A collection output class. ex: `ImageCollectionOutput`
- A node, which functions to load or pass on the primitive value. ex: `ImageInvocation` (in this case, `ImageInvocation` replaces `LoadImage`)
Plus a number of related changes:
- Reorganize these into `primitives.py`
- Update all nodes and logic to use primitives
- Consolidate "prompt" outputs into "string" & "mask" into "image" (there's no reason for these to be different, the function identically)
- Update default graphs & tests
- Regen frontend types & minor frontend tidy related to changes
2023-08-16 09:54:38 +10:00
psychedelicious
f49fc7fb55
feat: node editor
...
squashed rebase on main after backendd refactor
2023-08-16 09:54:38 +10:00
Lincoln Stein
a4b029d03c
write RAM usage and change after each generation
2023-08-15 18:21:31 -04:00
Lincoln Stein
d6c9bf5b38
added sdxl controlnet detection
2023-08-15 12:51:15 -04:00
Sergey Borisov
4f82273fc4
Update 'monkeypatched' controlnet class
2023-08-15 11:07:43 -04:00
Lincoln Stein
b2934be6ba
use as_posix() instead of str()
2023-08-14 22:59:26 -04:00
Lincoln Stein
eab67b6a01
fixed actual bug
2023-08-14 22:59:26 -04:00
Lincoln Stein
02fa116690
rebuild frontend for windows testing
2023-08-14 22:59:26 -04:00
Lincoln Stein
5190a4c282
further removal of Paths
2023-08-14 22:59:26 -04:00
Lincoln Stein
141d438517
prevent windows from crashing with a WindowsPath serialization error on merge
2023-08-14 22:59:26 -04:00
psychedelicious
549d2e0485
chore: remove old web server code and python deps
2023-08-15 10:54:57 +10:00
blessedcoolant
d3d8b71c67
feat: Change refinerStart default to 0.8
...
This is the recommended value according to the paper.
2023-08-15 10:13:02 +10:00
Lincoln Stein
b524bf3c04
allow symbolic links to be followed during autoimport
2023-08-14 07:37:47 -04:00
psychedelicious
9d3cd85bdd
chore: black
2023-08-14 13:02:33 +10:00
psychedelicious
46a8eed33e
Merge branch 'main' into feat/refactor_generation_backend
2023-08-14 13:01:28 +10:00
psychedelicious
9fee3f7b66
Revert "Add magic to debug"
...
This reverts commit 511da59793
.
2023-08-14 12:58:08 +10:00
psychedelicious
9217a217d4
fix(ui): refiner uses steps directly, no math
2023-08-14 12:56:37 +10:00
Sergey Borisov
511da59793
Add magic to debug
2023-08-14 05:14:24 +03:00
Sergey Borisov
409e5d01ba
Fix cpu_only schedulers(unipc)
2023-08-14 05:14:05 +03:00
blessedcoolant
58d5c61c79
fix: SDXL Inpaint & Outpaint using regular Img2Img strength
2023-08-14 12:55:18 +12:00
Sergey Borisov
3d8da67be3
Remove callback-generator wrapper
2023-08-14 03:35:15 +03:00
blessedcoolant
957ee6d370
fix: SDXL Canvas Inpaint & Outpaint not respecting SDXL Refiner start value
2023-08-14 12:13:29 +12:00
blessedcoolant
fecad2c014
fix: SDXL Denoising Strength not plugged in correctly
2023-08-14 11:59:11 +12:00
blessedcoolant
550e6ef27a
re: Set the image denoise str back to 0
...
Bug has been fixed. No longer needed.
2023-08-14 10:27:07 +12:00
blessedcoolant
75fb3f429f
re: Readd Refiner Step Math but cap max steps to 1000
2023-08-14 09:26:01 +12:00
Sergey Borisov
d63bb39475
Make dpmpp_sde(_k) use not random seed
2023-08-14 00:24:38 +03:00
Sergey Borisov
096333ba3f
Fix error on zero timesteps
2023-08-14 00:20:01 +03:00
Sergey Borisov
7a8f14d595
Clean-up code a bit
2023-08-13 19:50:48 +03:00
Sergey Borisov
59ba9fc0f6
Flip bits in seed for sde/ancestral schedulers to have different noise from initial
2023-08-13 19:50:16 +03:00
Sergey Borisov
6e0beb1ed4
Fixes for second order scheduler timesteps
2023-08-13 19:31:47 +03:00
Sergey Borisov
94636ddb03
Fix empty prompt handling
2023-08-13 19:31:14 +03:00
blessedcoolant
746e099f0d
fix: Do not do step math for refinerSteps
...
This is probably better done on the backend or in a different way. This can cause steps to go above 1000 which is more than the set number for the model.
2023-08-14 04:04:15 +12:00
blessedcoolant
499e89d6f6
feat: Add SDXL Negative Aesthetic Score
2023-08-14 04:02:36 +12:00
blessedcoolant
90fa3eebb3
feat: Make SDXL Style Prompt not take spaces
2023-08-14 02:25:39 +12:00
greatwolf
9e2e82a752
Fixed import issue in invokeai/frontend/install/model_install.py
...
This fixes an import issue introduced in commit 1bfe983
.
The change made 'invokeai_configure' into a module but this line still tries to call it as if it's a function. This will result in a `'module' not callable` error.
2023-08-13 05:15:55 -07:00
blessedcoolant
561951ad98
chore: Black linting
2023-08-13 21:28:39 +12:00
blessedcoolant
3ff9961bda
fix: Circular dependency in Mask Blur Method
2023-08-13 21:26:20 +12:00
blessedcoolant
33779b6339
chore: Remove shouldFitToWidthHeight from Inpaint Graphs
...
Was never used for inpainting but was fed to the node anyway.
2023-08-13 21:16:37 +12:00
blessedcoolant
b35cdc05a5
feat: Scaled Processing to Inpainting & Outpainting / 1.x & SDXL
2023-08-13 20:17:23 +12:00
Millun Atluri
9afb5d6ace
Update version to 3.0.2post1
2023-08-12 19:49:33 -04:00
Millun Atluri
50177b8ed9
Update frontend JS files
2023-08-12 19:49:33 -04:00
blessedcoolant
c8864e475b
fix: SDXL Lora's not working on Canvas Image To Image
2023-08-13 04:34:15 +12:00
blessedcoolant
fcf7f4ac77
feat: Add SDXL ControlNet To Linear UI
2023-08-13 04:27:38 +12:00
blessedcoolant
29f1c6dc82
fix: Image To Image FP32 Fix for Canvas SDXL
2023-08-13 04:23:52 +12:00
blessedcoolant
28208e6f49
fix: Fix VAE Precision not working for SDXL Canvas Modes
2023-08-13 04:09:51 +12:00
blessedcoolant
c33acf951e
feat: Make Refiner work with Canvas
2023-08-13 03:53:40 +12:00
blessedcoolant
500cd552bc
feat: Make SDXL work across the board + Custom VAE Support
...
Also a major cleanup pass to the SDXL graphs to ensure there's no ID overlap
2023-08-13 01:45:03 +12:00
blessedcoolant
55d27f71a3
feat: Give each graph its own unique id
2023-08-13 00:51:10 +12:00
blessedcoolant
746c7c59ff
fix: remove extra node for canvas output catch
2023-08-12 22:39:30 +12:00
blessedcoolant
ad96c41156
feat: Add Canvas Output node to all Canvas Graphs
2023-08-12 22:04:43 +12:00
blessedcoolant
27bd127fb0
fix: Do not add anything but final output to staging area
2023-08-12 21:10:30 +12:00
blessedcoolant
f296e5c41e
wip: Remove MaskBlur / Adjust color correction
2023-08-12 20:54:30 +12:00
Mary Hipp
a67d8376c7
fix missed spot for autoAddBoardId none
2023-08-12 18:07:01 +10:00
blessedcoolant
9f6221fe8c
Merge branch 'main' into feat/refactor_generation_backend
2023-08-12 18:37:47 +12:00
blessedcoolant
7587b54787
chore: Cleanup, comment and organize Node Graphs
...
Before it gets too chaotic
2023-08-12 17:17:46 +12:00
blessedcoolant
7254ffc3e7
chore: Split Inpaint and Outpaint Graphs
2023-08-12 16:30:20 +12:00
blessedcoolant
6034fa12de
feat: Add Mask Blur node
2023-08-12 16:20:58 +12:00
Sergey Borisov
ce3675fc14
Apply denoising_start/end according on timestep value
2023-08-12 03:19:49 +03:00
blessedcoolant
8acd7eeca5
feat: Disable clip skip for SDXL Canvas
2023-08-12 08:18:30 +12:00
blessedcoolant
7293a6036a
feat(wip): Add SDXL To Canvas
2023-08-12 08:16:05 +12:00
Lincoln Stein
0b11f309ca
instead of crashing when a corrupted model is detected, warn and move on
2023-08-11 15:05:14 -04:00
Ryan Dick
6a8eb392b2
Add support for loading SDXL LoRA weights in diffusers format.
2023-08-11 14:40:22 -04:00
blessedcoolant
f343ab0302
wip: Port Outpainting to new backend
2023-08-12 06:15:59 +12:00
blessedcoolant
d7d6298ec0
feat: Add Infill Method support
2023-08-12 05:32:11 +12:00
blessedcoolant
58a48bf197
fix: LoRA list name sorting
2023-08-12 04:47:15 +12:00
blessedcoolant
5629d8fa37
fix; Key issue in Lora List
2023-08-12 04:43:40 +12:00
blessedcoolant
1affb7f647
feat: Add Paste / Mask Blur / Color Correction to Inpainting
...
Seam options are now removed. They are replaced by two options --Mask Blur and Mask Blur Method .. which control the softness of the mask that is being painted.
2023-08-12 03:28:19 +12:00
blessedcoolant
69a9dc7b36
wip: Add initial Inpaint Graph
2023-08-12 02:42:13 +12:00
Sergey Borisov
f3ae52ff97
Fix error at high denoising_start, fix unipc(cpu_only)
2023-08-11 15:46:16 +03:00
blessedcoolant
7479f9cc02
feat: Update LinearUI to use new backend (except Inpaint)
2023-08-11 22:22:01 +12:00
blessedcoolant
87ce4ab27c
fix: Update default_graph to use new DenoiseLatents
2023-08-11 22:21:13 +12:00
blessedcoolant
7c0023ad9e
feat: Remove TextToLatents / Rename Latents To Latents -> DenoiseLatents
2023-08-11 22:20:37 +12:00
blessedcoolant
231e665675
Merge branch 'main' into feat/refactor_generation_backend
2023-08-11 20:53:38 +12:00
Mary Hipp
80fd4c2176
undo lint changes
2023-08-11 14:26:09 +10:00
Mary Hipp
3b6e425e17
fix error detail in toast
2023-08-11 14:26:09 +10:00
Mary Hipp
50415450d8
invalidate board total when images deleted, only run date range logic if board has less than 20 images
2023-08-11 14:26:09 +10:00
Millun Atluri
06296896a9
Update invokeai version
2023-08-10 22:23:41 -04:00
Millun Atluri
a7399aca0c
Add new JS files for 3.0.2 build
2023-08-10 22:23:41 -04:00
Lincoln Stein
f851ad7ba0
Two changes to command-line scripts
...
- installer - use correct entry point for invokeai-configure
- model merge script - prevent error when `--root` not provided
2023-08-10 20:59:22 -04:00
Sergey Borisov
c0c2ab3dcf
Format by black
2023-08-11 03:20:56 +03:00
Sergey Borisov
56023bc725
Add support for LyCORIS IA3 format
2023-08-11 02:08:08 +03:00
Sergey Borisov
2ef6a8995b
Temporary force set vae to same precision as unet
2023-08-10 18:01:58 -04:00
Lincoln Stein
d0fee93aac
round slider values to nice numbers
2023-08-10 18:00:45 -04:00
Lincoln Stein
1bfe9835cf
clip cache settings to permissible values; remove redundant imports in install __init__ file
2023-08-10 18:00:45 -04:00
Kent Keirsey
f6522c8971
Merge branch 'main' into fix/detect-more-loras
2023-08-10 17:33:16 -04:00
Lincoln Stein
a969707e45
prevent vae: '' from crashing model
2023-08-10 17:33:04 -04:00
psychedelicious
d4812bbc8d
Merge branch 'main' into fix/ui/fix-lora-sort
2023-08-10 19:00:26 +10:00
psychedelicious
3cd05cf6bf
fix(ui): fix lora sort
...
was sorting with disabled at top of list instead of bottom
fixes #4217
2023-08-10 15:31:29 +10:00
psychedelicious
da0efeaa7f
fix(ui): fix canvas model switching
...
There was no check at all to see if the canvas had a valid model already selected. The first model in the list was selected every time.
Now, we check if its valid. If not, we go through the logic to try and pick the first valid model.
If there are no valid models, or there was a problem listing models, the model selection is cleared.
2023-08-10 15:20:37 +10:00