Ryan Dick
97562504b7
Remove all references to optimum-quanto and downgrade diffusers.
2024-08-26 20:17:50 -04:00
Ryan Dick
75d8ac378c
Update the T5 8-bit quantized starter model to use the BnB LLM.int8() variant.
2024-08-26 20:17:50 -04:00
Ryan Dick
b9dd354e2b
Fixes to the T5XXL quantization script.
2024-08-26 20:17:50 -04:00
Ryan Dick
33c2fbd201
Add script for quantizing a T5 model.
2024-08-26 20:17:50 -04:00
Brandon Rising
5063be92bf
Switch flux to using its own conditioning field
2024-08-26 20:17:50 -04:00
Brandon Rising
1047584b3e
Only import bnb quantize file if bitsandbytes is installed
2024-08-26 20:17:50 -04:00
Brandon Rising
6764dcfdaa
Load and unload clip/t5 encoders and run inference separately in text encoding
2024-08-26 20:17:50 -04:00
Ryan Dick
a0bf20bcee
Run FLUX VAE decoding in the user's preferred dtype rather than float32. Tested, and seems to work well at float16.
2024-08-26 20:17:50 -04:00
Ryan Dick
14ab339b33
Move prepare_latent_image_patches(...) to sampling.py with all of the related FLUX inference code.
2024-08-26 20:17:50 -04:00
Ryan Dick
25c91efbb6
Rename field positive_prompt -> prompt.
2024-08-26 20:17:50 -04:00
Ryan Dick
1c1f2c6664
Add comment about incorrect T5 Tokenizer size calculation.
2024-08-26 20:17:50 -04:00
Ryan Dick
d7c22b3bf7
Tidy is_schnell detection logic.
2024-08-26 20:17:50 -04:00
Ryan Dick
185f2a395f
Make FLUX get_noise(...) consistent across devices/dtypes.
2024-08-26 20:17:50 -04:00
Ryan Dick
0c5649491e
Mark FLUX nodes as prototypes.
2024-08-26 20:17:50 -04:00
Brandon Rising
94aba5892a
Attribute black-forest-labs/flux for much of the flux code
2024-08-26 20:17:50 -04:00
maryhipp
34451e5f27
added FLUX dev to starter models
2024-08-26 20:17:50 -04:00
Brandon Rising
1f9bdd1a9a
Undo changes to the v2 dir of frontend types
2024-08-26 20:17:50 -04:00
Brandon Rising
c27d59baf7
Run ruff
2024-08-26 20:17:50 -04:00
Brandon Rising
f130ddec7c
Remove automatic install of models during flux model loader, remove no longer used import function on context
2024-08-26 20:17:50 -04:00
Ryan Dick
a0a259eef1
Fix max_seq_len field description.
2024-08-26 20:17:50 -04:00
Ryan Dick
b66f19d4d1
Add docs to the quantization scripts.
2024-08-26 20:17:50 -04:00
Ryan Dick
4105a78b83
Update load_flux_model_bnb_llm_int8.py to work with a single-file FLUX transformer checkpoint.
2024-08-26 20:17:50 -04:00
Ryan Dick
19a68afb3a
Fix bug in InvokeInt8Params that was causing it to use double the necessary VRAM.
2024-08-26 20:17:50 -04:00
maryhipp
fd68a2475b
add better workflow name
2024-08-26 20:17:50 -04:00
maryhipp
28ff7ba830
add better workflow description
2024-08-26 20:17:50 -04:00
maryhipp
5d0b248fdb
fix(worker) fix T5 type
2024-08-26 20:17:50 -04:00
maryhipp
01a4e0f6ef
update default workflow
2024-08-26 20:17:50 -04:00
Mary Hipp
91e0731506
fix schema
2024-08-26 20:17:50 -04:00
Mary Hipp
d1f904d41f
tsc and lint fix
2024-08-26 20:17:50 -04:00
Mary Hipp
269388c9f4
feat(ui): create new field for t5 encoder models in nodes
2024-08-26 20:17:50 -04:00
Mary Hipp
b8486379ce
fix(ui): pass base/type when installing models, add flux formats to MM badges
2024-08-26 20:17:50 -04:00
Mary Hipp
400eb94d3b
fix(ui): only exclude flux main models from linear UI dropdown, not model manager list
2024-08-26 20:17:50 -04:00
maryhipp
e210c96485
add FLUX schnell starter models and submodels as dependenices or adhoc download options
2024-08-26 20:17:50 -04:00
maryhipp
5f567f41f4
add case for clip embed models in probe
2024-08-26 20:17:50 -04:00
maryhipp
5fed573a29
update flux_model_loader node to take a T5 encoder from node field instead of hardcoded list, assume all models have been downloaded
2024-08-26 20:17:50 -04:00
Ryan Dick
cfac7c8189
Move requantize.py to the quatnization/ dir.
2024-08-26 20:17:50 -04:00
Ryan Dick
1787de6836
Add docs to the requantize(...) function explaining why it was copied from optimum-quanto.
2024-08-26 20:17:50 -04:00
Ryan Dick
ac96f187bd
Remove duplicate log_time(...) function.
2024-08-26 20:17:50 -04:00
Brandon Rising
72398350b4
More flux loader cleanup
2024-08-26 20:17:50 -04:00
Brandon Rising
df9445c351
Various styling and exception type updates
2024-08-26 20:17:50 -04:00
Brandon Rising
87b7a2e39b
Switch inheritance class of flux model loaders
2024-08-26 20:17:50 -04:00
Brandon Rising
f7e46622a1
Update doc string for import_local_model and remove access_token since it's only usable for local file paths
2024-08-26 20:17:50 -04:00
Ryan Dick
71f18353a9
Address minor review comments.
2024-08-26 20:17:50 -04:00
Ryan Dick
4228de707b
Rename t5Encoder -> t5_encoder.
2024-08-26 20:17:50 -04:00
Mary Hipp
b6a05629ef
add default workflow for flux t2i
2024-08-26 20:17:50 -04:00
Mary Hipp
fbaa820643
exclude flux models from main model dropdown
2024-08-26 20:17:50 -04:00
Brandon Rising
db2a2d5e38
Some cleanup of the tags and description of flux nodes
2024-08-26 20:17:50 -04:00
Brandon Rising
8ba6e6b1f8
Add t5 encoders and clip embeds to the model manager
2024-08-26 20:17:50 -04:00
Brandon Rising
57168d719b
Fix styling/lint
2024-08-26 20:17:50 -04:00
Brandon Rising
dee6d2c98e
Fix support for 8b quantized t5 encoders, update exception messages in flux loaders
2024-08-26 20:17:50 -04:00
Ryan Dick
e49105ece5
Add tqdm progress bar to FLUX denoising.
2024-08-26 20:17:50 -04:00
Ryan Dick
0c5e11f521
Fix FLUX output image clamping. And a few other minor fixes to make inference work with the full bfloat16 FLUX transformer model.
2024-08-26 20:17:50 -04:00
Brandon Rising
a63f842a13
Select dev/schnell based on state dict, use correct max seq len based on dev/schnell, and shift in inference, separate vae flux params into separate config
2024-08-26 20:17:50 -04:00
Brandon Rising
4bd7fda694
Install sub directories with folders correctly, ensure consistent dtype of tensors in flux pipeline and vae
2024-08-26 20:17:50 -04:00
Brandon Rising
81f0886d6f
Working inference node with quantized bnb nf4 checkpoint
2024-08-26 20:17:50 -04:00
Brandon Rising
2eb87f3306
Remove unused param on _run_vae_decoding in flux text to image
2024-08-26 20:17:50 -04:00
Brandon Rising
723f3ab0a9
Add nf4 bnb quantized format
2024-08-26 20:17:50 -04:00
Brandon Rising
1bd90e0fd4
Run ruff, setup initial text to image node
2024-08-26 20:17:50 -04:00
Brandon Rising
436f18ff55
Add backend functions and classes for Flux implementation, Update the way flux encoders/tokenizers are loaded for prompt encoding, Update way flux vae is loaded
2024-08-26 20:17:50 -04:00
Brandon Rising
cde9696214
Some UI cleanup, regenerate schema
2024-08-26 20:17:50 -04:00
Brandon Rising
2d9042fb93
Run Ruff
2024-08-26 20:17:50 -04:00
Brandon Rising
9ed53af520
Run Ruff
2024-08-26 20:17:50 -04:00
Brandon Rising
56fda669fd
Manage quantization of models within the loader
2024-08-26 20:17:50 -04:00
Brandon Rising
1d8545a76c
Remove changes to v1 workflow
2024-08-26 20:17:50 -04:00
Brandon Rising
5f59a828f9
Setup flux model loading in the UI
2024-08-26 20:17:50 -04:00
Ryan Dick
1fa6bddc89
WIP on moving from diffusers to FLUX
2024-08-26 20:17:50 -04:00
Ryan Dick
d3a5ca5247
More improvements for LLM.int8() - not fully tested.
2024-08-26 20:17:50 -04:00
Ryan Dick
f01f56a98e
LLM.int8() quantization is working, but still some rough edges to solve.
2024-08-26 20:17:50 -04:00
Ryan Dick
99b0f79784
Clean up NF4 implementation.
2024-08-26 20:17:50 -04:00
Ryan Dick
e1eb104345
NF4 inference working
2024-08-26 20:17:50 -04:00
Ryan Dick
5c2f95ef50
NF4 loading working... I think.
2024-08-26 20:17:50 -04:00
Ryan Dick
b63df9bab9
wip
2024-08-26 20:17:50 -04:00
Ryan Dick
a52c899c6d
Split a FluxTextEncoderInvocation out from the FluxTextToImageInvocation. This has the advantage that we benfit from automatic caching when the prompt isn't changed.
2024-08-26 20:17:50 -04:00
Ryan Dick
eeabb7ebe5
Make quantized loading fast for both T5XXL and FLUX transformer.
2024-08-26 20:17:50 -04:00
Ryan Dick
8b1cef978c
Make quantized loading fast.
2024-08-26 20:17:50 -04:00
Ryan Dick
152da482cd
WIP - experimentation
2024-08-26 20:17:50 -04:00
Ryan Dick
3cf0365a35
Make float16 inference work with FLUX on 24GB GPU.
2024-08-26 20:17:50 -04:00
Ryan Dick
5870742bb9
Add support for 8-bit quantizatino of the FLUX T5XXL text encoder.
2024-08-26 20:17:50 -04:00
Ryan Dick
01d8c62c57
Make 8-bit quantization save/reload work for the FLUX transformer. Reload is still very slow with the current optimum.quanto implementation.
2024-08-26 20:17:50 -04:00
Ryan Dick
55a242b2d6
Minor improvements to FLUX workflow.
2024-08-26 20:17:50 -04:00
Ryan Dick
45263b339f
Got FLUX schnell working with 8-bit quantization. Still lots of rough edges to clean up.
2024-08-26 20:17:50 -04:00
Ryan Dick
3319491861
Use the FluxPipeline.encode_prompt() api rather than trying to run the two text encoders separately.
2024-08-26 20:17:50 -04:00
Ryan Dick
b39031ea53
First draft of FluxTextToImageInvocation.
2024-08-26 20:17:50 -04:00
Ryan Dick
0b77511271
Update HF download logic to work for black-forest-labs/FLUX.1-schnell.
2024-08-26 20:17:50 -04:00
Ryan Dick
c99cd989c1
Update imports for compatibility with bumped diffusers version.
2024-08-26 20:17:50 -04:00
Mary Hipp
4e294f9e3e
disable export button if no non-default presets
2024-08-26 09:23:15 -04:00
Jonathan
526e0f30a0
Added support for bounding boxes in the Invocation API
...
Adding built-in bounding boxes as a core type would help developers of nodes that include bounding box support.
2024-08-26 08:03:30 +10:00
psychedelicious
231e5ec94a
chore: bump version v4.2.8post1
2024-08-23 06:55:30 +10:00
Mary Hipp
e5bb6f9693
lint fix
2024-08-23 06:46:19 +10:00
Mary Hipp
da7dee44c6
fix(ui): use empty string fallback if unable to parse prompts when creating style preset from existing image
2024-08-23 06:46:19 +10:00
psychedelicious
c451f52ea3
chore(ui): lint
2024-08-22 21:00:09 +10:00
psychedelicious
8a2c78f2e1
fix(ui): dynamic prompts not recalculating when deleting or updating a style preset
...
The root cause was the active style preset not being reset when it was deleted, or no longer present in the list of style presets.
- Add extra reducer to `stylePresetSlice` to reset the active preset if it is deleted or otherwise unavailable
- Update the dynamic prompts listener to trigger on delete/update/list of style presets
2024-08-22 21:00:09 +10:00
psychedelicious
bcc78bde9b
chore: bump version to v4.2.8
2024-08-22 21:00:09 +10:00
Васянатор
054bb6fe0a
translationBot(ui): update translation (Russian)
...
Currently translated at 100.0% (1367 of 1367 strings)
Co-authored-by: Васянатор <ilabulanov339@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/invokeai/web-ui/ru/
Translation: InvokeAI/Web UI
2024-08-22 13:09:56 +10:00
Riccardo Giovanetti
4f4aa6d92e
translationBot(ui): update translation (Italian)
...
Currently translated at 98.4% (1346 of 1367 strings)
translationBot(ui): update translation (Italian)
Currently translated at 98.4% (1346 of 1367 strings)
Co-authored-by: Riccardo Giovanetti <riccardo.giovanetti@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/invokeai/web-ui/it/
Translation: InvokeAI/Web UI
2024-08-22 13:09:56 +10:00
Hosted Weblate
eac51ac6f5
translationBot(ui): update translation files
...
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/invokeai/web-ui/
Translation: InvokeAI/Web UI
2024-08-22 13:09:56 +10:00
psychedelicious
9f349a7c0a
fix(ui): do not constrain width of hide/show boards button
...
lets translations display fully
2024-08-22 11:36:07 +10:00
psychedelicious
918afa5b15
fix(ui): show more of current board name
2024-08-22 11:36:07 +10:00
psychedelicious
eb1113f95c
feat(ui): add translation string for "Upscale"
2024-08-22 11:36:07 +10:00
psychedelicious
4f4ba7b462
tidy(ui): clean up ActiveStylePreset markup
2024-08-21 09:06:41 +10:00
Mary Hipp
2298be0e6b
fix(ui): error handling if unable to convert image URL to blob
2024-08-21 09:06:41 +10:00
Mary Hipp
63494dfca7
remove extra slash in exports path
2024-08-21 09:06:41 +10:00
Mary Hipp
36a1d39454
fix(ui): handle badge styling when template name is long
2024-08-21 09:06:41 +10:00
Mary Hipp
a6f6d5c400
fix(ui): add loading state to button when creating or updating a style preset
2024-08-21 09:06:41 +10:00
Mary Hipp
e85f221aca
fix(ui): clear prompt template when prompts are recalled
2024-08-21 09:04:35 +10:00
Mary Hipp
d4797e37dc
fix(ui): properly unwrap delete style preset API request so that error is caught
2024-08-19 16:12:39 -04:00
Mary Hipp
3e7923d072
fix(api): allow updating of type for style preset
2024-08-19 16:12:39 -04:00
psychedelicious
a85d69ce3d
tidy(ui): getViewModeChunks.tsx -> .ts
2024-08-19 08:25:39 +10:00
psychedelicious
96db006c99
fix(ui): edge case with getViewModeChunks
2024-08-19 08:25:39 +10:00
psychedelicious
8ca57d03d8
tests(ui): add tests for getViewModeChunks
2024-08-19 08:25:39 +10:00
psychedelicious
6c404ce5f8
fix(ui): prompt template preset preview out of order
2024-08-19 08:25:39 +10:00
psychedelicious
584e07182b
fix(ui): use translations for style preset strings
2024-08-17 21:27:53 +10:00
psychedelicious
f787e9acf6
chore: bump version v4.2.8rc2
2024-08-16 21:47:06 +10:00
psychedelicious
5a24b89e54
fix(app): include style preset defaults in build
2024-08-16 21:47:06 +10:00
psychedelicious
9b482e2a4f
chore: bump version to v4.2.8rc1
2024-08-16 10:53:19 +10:00
psychedelicious
182571df4b
Merge branch 'main' into maryhipp/export-presets
2024-08-16 10:17:07 +10:00
psychedelicious
3fb4e3050c
feat(ui): focus in textarea after inserting placeholder
2024-08-16 10:14:25 +10:00
psychedelicious
39c7ec3cd9
feat(ui): per type fallbacks for templates
2024-08-16 10:11:43 +10:00
psychedelicious
26bfbdec7f
feat(ui): use buttons instead of menu for preset import/export
2024-08-16 09:58:19 +10:00
psychedelicious
7a3eaa8da9
feat(api): save file as prompt_templates.csv
2024-08-16 09:51:46 +10:00
Mary Hipp
599db7296f
export only user style presets
2024-08-15 16:07:32 -04:00
Riccardo Giovanetti
042aab4295
translationBot(ui): update translation (Italian)
...
Currently translated at 98.6% (1340 of 1359 strings)
Co-authored-by: Riccardo Giovanetti <riccardo.giovanetti@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/invokeai/web-ui/it/
Translation: InvokeAI/Web UI
2024-08-15 20:44:02 +02:00
Mary Hipp
24f298283f
clean up, add context menu to import/download templates
2024-08-15 12:39:55 -04:00
Mary Hipp
68dac6349d
Merge remote-tracking branch 'origin/main' into maryhipp/export-presets
2024-08-15 11:21:56 -04:00
chainchompa
659019cfd6
Merge branch 'main' into chainchompa/preselect-workflows
2024-08-15 10:40:44 -04:00
Mary Hipp
810be3e1d4
update import directions to include JSON
2024-08-15 09:47:49 -04:00
psychedelicious
60d754d1df
feat(api): tidy style presets import logic
...
- Extract parsing into utility function
- Log import errors
- Forbid extra properties on the imported data
2024-08-15 09:47:49 -04:00
psychedelicious
bd07c86db9
feat(ui): make style preset menu trigger look like button
2024-08-15 09:47:49 -04:00
psychedelicious
bcbf8b6bd8
feat(ui): revert to using {prompt}
for prompt template placeholder
2024-08-15 09:47:49 -04:00
psychedelicious
356661459b
feat(api): support JSON for preset imports
...
This allows us to support Fooocus format presets.
2024-08-15 09:47:49 -04:00
psychedelicious
deb917825e
feat(api): use pydantic validation during style preset import
...
- Enforce name is present and not an empty string
- Provide empty string as default for positive and negative prompt
- Add `positive_prompt` as validation alias for `prompt` field
- Strip whitespace automatically
- Create `TypeAdapter` to validate the whole list in one go
2024-08-15 09:47:49 -04:00
psychedelicious
15415c6d85
feat(ui): use dropzone for style preset upload
...
Easier to accept multiple file types and supper drag and drop in the future.
2024-08-15 09:47:49 -04:00
Mary Hipp
76b0380b5f
feat(ui): create component to upload CSV of style presets to import
2024-08-15 09:47:49 -04:00
Mary Hipp
2d58754789
feat(api): add endpoint to take a CSV, parse it, validate it, and create many style preset entries
2024-08-15 09:47:49 -04:00
chainchompa
9cdf1f599c
Merge branch 'main' into chainchompa/preselect-workflows
2024-08-15 09:25:19 -04:00
chainchompa
268be97ba0
remove ref, make options optional for useGetLoadWorkflow
2024-08-15 09:18:41 -04:00
Mary Hipp
a9014673a0
wip export
2024-08-15 09:00:11 -04:00
Phrixus2023
54a5c4e482
translationBot(ui): update translation (Chinese (Simplified))
...
Currently translated at 98.1% (1296 of 1320 strings)
Co-authored-by: Phrixus2023 <920414016@qq.com>
Translate-URL: https://hosted.weblate.org/projects/invokeai/web-ui/zh_Hans/
Translation: InvokeAI/Web UI
2024-08-15 00:46:01 +02:00
Riccardo Giovanetti
5e09a244e3
translationBot(ui): update translation (Italian)
...
Currently translated at 98.5% (1336 of 1355 strings)
translationBot(ui): update translation (Italian)
Currently translated at 98.5% (1302 of 1321 strings)
translationBot(ui): update translation (Italian)
Currently translated at 98.6% (1302 of 1320 strings)
Co-authored-by: Riccardo Giovanetti <riccardo.giovanetti@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/invokeai/web-ui/it/
Translation: InvokeAI/Web UI
2024-08-15 00:46:01 +02:00
chainchompa
88648dca1a
change selectedWorkflow to selectedWorkflowId
2024-08-14 11:22:37 -04:00
chainchompa
8840df2b00
Merge branch 'main' into chainchompa/preselect-workflows
2024-08-14 09:02:12 -04:00
chainchompa
af159acbdf
cleanup
2024-08-14 08:58:38 -04:00
chainchompa
471719bbbe
add base prop for selectedWorkflow to allow loading a workflow on launch
2024-08-14 08:47:02 -04:00
psychedelicious
9938f12ef0
Merge branch 'main' into maryhipp/style-presets
2024-08-14 12:33:30 +10:00
psychedelicious
982c266073
tidy: remove extra characters in prompt templates
2024-08-14 12:31:57 +10:00
psychedelicious
5c37391883
fix(ui): do not show [prompt]
in preset preview
2024-08-14 12:29:05 +10:00
psychedelicious
ddeafc6833
fix(ui): minimize layout shift when overlaying preset prompt preview
2024-08-14 12:24:57 +10:00
psychedelicious
41b2d5d013
fix(ui): prompt preview not working preset starts with [prompt]
2024-08-14 12:21:38 +10:00
psychedelicious
29d6f48901
fix(ui): prompt shows thru prompt label text
2024-08-14 12:01:49 +10:00
psychedelicious
d5c9f4e47f
chore(ui): revert framer-motion upgrade
...
`framer-motion` 11 breaks a lot of stuff in profoundly unintuitive ways, holy crap. UI lib rolled back its dep, pulling in latest version of that
2024-08-14 06:12:00 +10:00