psychedelicious
7d110cc9d3
fix(ui): disable dynamic prompts generators pending resolution of infinite recursion issue
...
Dynamic prompts string generators can cause an infinite feedback loop when added to the linear view.
The root cause is how these generators handle "resolving" their collections. They hit the dynamic prompts HTTP API within the view component to get the prompts, then set the batch node's internal state with those values.
When the same generator is rendered in both the node editor view and linear view and the timing is just right, that state update causes an infinite feedback loop between the two components as they respond to the state updates from the other component.
The other generators never store the generated values in the batch node's internal state. The values are "resolved" just-in-time as they are needed.
To fix this, the batch value "resolver" utilities could be made async and hit the API. But there's a problem - the resolver utilities are used within the "are we ready to invoke? are there any problems with the current settings?" redux selectors, which are strictly synchronous. To fix that, we can refactor that "are we ready to invoke?" logic to not use redux selectors, so the whole thing could be async.
It's not a big change but I'm not going to spend time on it at the moment.
So, until I address this, the dynamic prompts generators are disabled.
2025-01-21 09:00:40 +11:00
psychedelicious
82122645e8
refactor(ui): organize special handling for batch field types
2025-01-21 07:17:29 +11:00
psychedelicious
f5c5b73383
fix(ui): string batch nodes' inputs get batch type
2025-01-21 07:17:29 +11:00
psychedelicious
2b2ec67cd6
fix(nodes): allow connection input on string batch nodes
2025-01-21 07:17:29 +11:00
Ryan Dick
66bc225bd3
Add a troubleshooting instructions for the Windows page file issue to the Low-VRAM docs.
2025-01-20 08:58:41 +11:00
psychedelicious
7535d2e188
feat(ui): use translation for load from file buttons
2025-01-20 08:57:42 +11:00
psychedelicious
3dff87aeee
feat(ui): better layout for generator load from file buttons
2025-01-20 08:57:42 +11:00
psychedelicious
b14bf1e0f4
chore(ui): lint
2025-01-20 08:57:42 +11:00
psychedelicious
4fdc6eec9d
feat(ui): support loading from file for string input generators
2025-01-20 08:57:42 +11:00
psychedelicious
180a67d11b
feat(ui): small fontsize on generator textareas
2025-01-20 08:57:42 +11:00
psychedelicious
ec816d3c04
feat(ui): improved dynamicprompts generator
...
- Split into two (random and combinatorial) - lots of fiddly logic to do both in one generator.
- Update to support seeds for random.
2025-01-20 08:57:42 +11:00
psychedelicious
7dcc2dafbc
chore(ui): typegen
2025-01-20 08:57:42 +11:00
psychedelicious
81da5210f0
feat(api): add seed field to dynamicprompts
2025-01-20 08:57:42 +11:00
psychedelicious
eb976a2ab0
feat(ui): add dynamic prompts string generator (WIP)
2025-01-20 08:57:42 +11:00
psychedelicious
724028d974
feat(ui): port improved string parsing logic from string generator to float & int
2025-01-20 08:57:42 +11:00
psychedelicious
43c98fd99e
feat(ui): add string generator
2025-01-20 08:57:42 +11:00
psychedelicious
526d64a5e2
feat(nodes): add string generator
2025-01-20 08:57:42 +11:00
psychedelicious
58c6c6db53
feat(ui): make string collection component same as number collection
...
Same UI & better perf thanks to a different structure.
2025-01-20 08:57:42 +11:00
psychedelicious
8a41e09de3
feat(ui): seeded random generators
...
- Add JS Mersenne Twister implementation dependency to use as seeded PRNG. This is not a cryptographically secure algorithm.
- Add nullish seed field to float and integer random generators.
- Add UI to control the seed.
- When seed is not set, behaviour is unchanged - the values are randomized when you Invoke. When seed is set, the random distribution is deterministic depending on the seed. In this case, we can display the values to the user.
2025-01-18 08:45:56 +11:00
psychedelicious
c24eae1968
chore: bump version to v5.6.0rc4
v5.6.0rc4
2025-01-17 16:29:20 +11:00
psychedelicious
a6b207a0d9
fix(ui): string field textarea accidentally readonly
2025-01-17 16:17:13 +11:00
psychedelicious
eea5ecdd69
Update invokeai_version.py
v5.6.0rc3
2025-01-17 13:15:20 +11:00
psychedelicious
50de54dcfd
chore(ui): lint
2025-01-17 12:48:58 +11:00
psychedelicious
04b893f982
chore(ui): typegen
2025-01-17 12:48:58 +11:00
psychedelicious
4c655eeb48
chore(ui): lint
2025-01-17 12:48:58 +11:00
psychedelicious
298abab883
feat(ui): improved generator text area styling
2025-01-17 12:48:58 +11:00
psychedelicious
bd477ded2e
feat(ui): better preview for generators
2025-01-17 12:48:58 +11:00
psychedelicious
0b64d21980
tidy(ui): remove extraneous reset button on generators
2025-01-17 12:48:58 +11:00
psychedelicious
91d5f8537d
feat(ui): add integer & float parse string generators
2025-01-17 12:48:58 +11:00
psychedelicious
e498e1f07c
feat(ui): reworked float/int generators (arithmetic sequence, linear dist, uniform rand dist)
2025-01-17 12:48:58 +11:00
psychedelicious
73a3f195dc
fix(ui): remove nonfunctional button
2025-01-17 12:48:58 +11:00
psychedelicious
8cc790a030
fix(ui): batch size calculations
2025-01-17 12:48:58 +11:00
psychedelicious
57265c8869
feat(ui): rip out generator modal functionality
2025-01-17 12:48:58 +11:00
psychedelicious
66d08eaa1c
fix(ui): translation for generators
2025-01-17 12:48:58 +11:00
psychedelicious
d69e90ca5e
feat(ui): support integer generators
2025-01-17 12:48:58 +11:00
psychedelicious
f345fde512
fix(ui): use utils to get default float generator values
2025-01-17 12:48:58 +11:00
psychedelicious
508c702289
feat(nodes): remove default values for generator; let UI handle it
2025-01-17 12:48:58 +11:00
psychedelicious
8fbd2f9a97
feat(nodes): add integer generator nodes
2025-01-17 12:48:58 +11:00
psychedelicious
bfb26af36a
chore(ui): lint
2025-01-17 12:48:58 +11:00
psychedelicious
4400bc69f2
feat(ui): don't show generator preview for random generators
2025-01-17 12:48:58 +11:00
psychedelicious
10f2c0dc9a
feat(ui): support generator nodes (wip)
...
- Add `batch` property to field type object to differentiate between executable nodes and batch/generator nodes.
- Support for float generators
2025-01-17 12:48:58 +11:00
psychedelicious
5b0326fc49
chore(ui): typegen
2025-01-17 12:48:58 +11:00
psychedelicious
2f9a0a250d
feat(nodes): generators as nodes
2025-01-17 12:48:58 +11:00
psychedelicious
5d03328dc6
tidy(nodes): code dedupe for batch node init errors
2025-01-17 12:48:58 +11:00
psychedelicious
1fb32aec28
tidy(nodes): move batch nodes to own file
2025-01-17 12:48:58 +11:00
psychedelicious
2bbcd42036
chore(ui): knip
2025-01-17 12:34:54 +11:00
psychedelicious
2f40f7bafd
tweak(ui): error verbiage for collection size mismatch
2025-01-17 12:34:54 +11:00
psychedelicious
65dd01bf3a
fix(ui): invoke tooltip for invalid/empty batches
2025-01-17 12:34:54 +11:00
psychedelicious
81fc525f8a
chore(ui): lint
2025-01-17 12:34:54 +11:00
psychedelicious
d2dd5ee408
fix(ui): unclosed JSX tag
2025-01-17 12:34:54 +11:00