MindOfMatter
468d704b29
feat: add button to enable LoRAs ( #2210 )
...
* Initial commit
* Update README.md
* sync with original main Fooocus repo
* update with my gitignore setup
* add max lora config feature
* Revert "add max lora config feature"
This reverts commit cfe7463fe2 .
* add lora enabler feature
* Update README.md
* Update .gitignore
* update
* merge
* revert changes
* revert
* feat: change width of LoRA columns
* refactor: rename lora_enable to lora_enabled, optimize code
---------
Co-authored-by: Manuel Schmid <manuel.schmid@odt.net>
2024-02-25 19:59:28 +01:00
Manuel Schmid
b5f019fb62
fix: correctly create directory for path_outputs if not existing ( #1668 )
...
* correctly create directory for outputs if not existing
* feat: add make_directory parameter checks for list, extract make_directory to util
2024-02-25 18:41:43 +01:00
dooglewoogle
ef1999c52c
feat: add ability to load checkpoints and loras from multiple locations ( #1256 )
...
* Add ability to load checkpoints and loras from multiple locations
* Found another location a default path is required
* feat: use array as default
---------
Co-authored-by: Manuel Schmid <manuel.schmid@odt.net>
2024-02-25 12:47:14 +01:00
Manuel Schmid
7cfb5e742d
feat: add advanced parameter for disable_intermediate_results (progress_gallery) ( #1013 )
...
* add advanced parameter for disable_intermediate_results
prevents gradio frontend process from clogging image output and updates in high throughput scenarios such as LCM with image number >= 4
* update disable_intermediate_results correctly
based on default and selected performance
* chore: add missing translations
2024-02-25 11:31:00 +01:00
Manuel Schmid
5b7ddf8b22
feat: advanced params refactoring + prevent users from skipping/stopping other users tasks in queue ( #981 )
...
* only make stop_button and skip_button interactive when rendering process starts
fix inconsistency in behaviour of stop_button and skip_button as it was possible to skip or stop other users processes while still being in queue
* use AsyncTask for last_stop handling instead of shared
* Revert "only make stop_button and skip_button interactive when rendering process starts"
This reverts commit d3f9156854 .
* introduce state for task skipping/stopping
* fix return parameters of stop_clicked
* code cleanup, do not disable skip/stop on stop_clicked
* reset last_stop when skipping for further processing
* fix: replace fcbh with ldm_patched
* fix: use currentTask instead of ctrls after merging upstream
* feat: extract attribute disable_preview
* feat: extract attribute adm_scaler_positive
* feat: extract attribute adm_scaler_negative
* feat: extract attribute adm_scaler_end
* feat: extract attribute adaptive_cfg
* feat: extract attribute sampler_name
* feat: extract attribute scheduler_name
* feat: extract attribute generate_image_grid
* feat: extract attribute overwrite_step
* feat: extract attribute overwrite_switch
* feat: extract attribute overwrite_width
* feat: extract attribute overwrite_height
* feat: extract attribute overwrite_vary_strength
* feat: extract attribute overwrite_upscale_strength
* feat: extract attribute mixing_image_prompt_and_vary_upscale
* feat: extract attribute mixing_image_prompt_and_inpaint
* feat: extract attribute debugging_cn_preprocessor
* feat: extract attribute skipping_cn_preprocessor
* feat: extract attribute canny_low_threshold
* feat: extract attribute canny_high_threshold
* feat: extract attribute refiner_swap_method
* feat: extract freeu_ctrls attributes
freeu_enabled, freeu_b1, freeu_b2, freeu_s1, freeu_s2
* feat: extract inpaint_ctrls attributes
debugging_inpaint_preprocessor, inpaint_disable_initial_latent, inpaint_engine, inpaint_strength, inpaint_respective_field, inpaint_mask_upload_checkbox, invert_mask_checkbox, inpaint_erode_or_dilate
* wip: add TODOs
* chore: cleanup code
* feat: extract attribute controlnet_softness
* feat: extract remaining attributes, do not use globals in patch
* fix: resolve circular import, patch_all now in async_worker
* chore: cleanup pid code
2024-02-24 19:01:06 +01:00
Manuel Schmid
1d606ecb7e
feat: optimize image censoring
...
Does not save 2x to file (log and yield), but only once (log).
2024-02-24 18:09:45 +01:00
Manuel Schmid
4905f3f2fa
fix: use correct format for upscale metadata
2024-02-24 17:50:40 +01:00
Manuel Schmid
741a693083
feat: add ByteDance lightning preset, code cleanup
2024-02-22 23:02:58 +01:00
Manuel Schmid
5e3816a8b3
fix: add nsfw filter support again
...
accidentally deleted when merging
2024-02-19 23:12:33 +01:00
Manuel Schmid
a01afaf1b3
Merge pull request #15 from blckbx/load-upscale-strength-from-config
...
[Feature]: Load debug settings `upscale strength` from config file
2024-02-18 17:46:08 +01:00
Manuel Schmid
26601a99d1
Merge branch 'feature/add-metadata-to-files'
2024-02-18 16:27:29 +01:00
Manuel Schmid
692a2e4369
Merge branch 'feature/add-metadata-to-files' of github.com:mashb1t/Fooocus into feature/add-metadata-to-files
2024-02-18 16:15:56 +01:00
Manuel Schmid
f93dd6edcc
feat: only override steps if metadata value is not in steps enum or in steps enum and performance is not the same
2024-02-18 16:15:39 +01:00
Manuel Schmid
36f6715512
chore: make steps enums more strict
2024-02-18 16:14:24 +01:00
blckbx
1f951a48f8
Merge branch 'mashb1t:main' into load-upscale-strength-from-config
2024-02-18 11:38:01 +01:00
Manuel Schmid
a78f66ffb5
fix: sort with casefold, case insensitive
...
https://docs.python.org/3/library/stdtypes.html#str.casefold
2024-02-12 21:59:22 +01:00
Manuel Schmid
62a385e6a1
feat: sort with casefold, case insensitive
...
https://docs.python.org/3/library/stdtypes.html#str.casefold
2024-02-12 21:34:07 +01:00
Manuel Schmid
267d5eee7d
Merge commit '1c999be8c8134fe01a75723ea933858435856950'
...
# Conflicts:
# .github/ISSUE_TEMPLATE/bug_report.md
# launch.py
# modules/async_worker.py
# modules/config.py
# modules/private_logger.py
# modules/util.py
# webui.py
2024-02-12 21:13:36 +01:00
Manuel Schmid
f4a8bf24cf
fix: correctly calculate refiner switch when overwrite_switch is > 0 ( #2165 )
...
When using custom steps, the calculation of switching timing is wrong. Now it is modified to calculate "steps x timing" after custom steps are used.
By @xhoxye
2024-02-11 15:13:20 +01:00
eddyizm
074b655dff
fix: implement output path argument ( #2074 )
...
* added function to check output path arg and override, other wise, use temp or fallback to config
* added function to check output path arg and override, other wise, use temp or fallback to config #2065
* Revert to 1bcbd650
* moved path output arg handling inside config start up
* Revert "added function to check output path arg and override, other wise, use temp or fallback to config"
This reverts commit fecb97b59c .
* Updated tag to uppercase
* updated docstring to standard double quotes.
Co-authored-by: Manuel Schmid <9307310+mashb1t@users.noreply.github.com>
* removed extra check on image log flag per feedback
* feat: update config_dict value when overriding path_outputs, change message
---------
Co-authored-by: Manuel Schmid <9307310+mashb1t@users.noreply.github.com>
Co-authored-by: Manuel Schmid <manuel.schmid@odt.net>
2024-02-11 13:04:06 +01:00
blckbx
d921cd428b
webui, config: save and load overwrite upscale strength
2024-02-11 11:51:10 +01:00
hisk2323
eb3f4d745c
feat: add suffix ordinals ( #845 )
...
* add suffix ordinals with lambda
* delay importing of modules.config (#2195 )
* refactor: use easier to read version to find matching ordinal suffix
---------
Co-authored-by: rsl8 <138326583+rsl8@users.noreply.github.com>
Co-authored-by: Manuel Schmid <manuel.schmid@odt.net>
Co-authored-by: Manuel Schmid <9307310+mashb1t@users.noreply.github.com>
2024-02-10 21:49:23 +01:00
Evgenii
c32b9bdc44
fix: replace regexp to support unicode chars ( #1424 )
2024-02-10 19:15:57 +01:00
Manuel Schmid
98ba1d5d47
fix: correctly sort files, display deepest dir level first ( #1784 )
2024-02-10 19:03:26 +01:00
V1sionVerse
d1a450c581
Fixed mistakes in HTML generation ( #2187 )
...
Added <!DOCTYPE html> declaration
<img/> instead of <img></img>
<br/> instead of </br>
2024-02-10 17:50:41 +01:00
Manuel Schmid
b281375ce2
feat: add exif data processing (saving and loading)
2024-02-04 23:29:48 +01:00
Manuel Schmid
ceefba9b69
Merge branch 'feature/add-metadata-to-files'
...
# Conflicts:
# language/en.json
# modules/async_worker.py
# modules/config.py
# modules/flags.py
# modules/meta_parser.py
# modules/private_logger.py
# modules/util.py
# webui.py
2024-02-04 21:09:24 +01:00
Manuel Schmid
832441e86d
chore: loosen strict type for parse_json, fix indent
2024-02-04 19:26:10 +01:00
Manuel Schmid
c104d58f76
fix: parse adaptive_cfg as float instead of string
2024-02-04 19:25:20 +01:00
Manuel Schmid
dfb48fd754
feat: add better handling for image import with empty metadata
2024-02-04 19:24:45 +01:00
Manuel Schmid
6dadc3314d
Merge remote-tracking branch 'upstream/main'
...
# Conflicts:
# modules/config.py
2024-02-04 14:29:54 +01:00
Manuel Schmid
59dd1c2d12
Merge remote-tracking branch 'upstream/main' into feature/add-metadata-to-files
2024-02-04 13:55:00 +01:00
Manuel Schmid
fe33cc7114
feat: add mapping for _gpu samplers to cpu samplers
...
gpu samplers are less deterministic than cpu but in general similar, see https://www.reddit.com/r/comfyui/comments/15hayzo/comment/juqcpep/
2024-02-04 13:54:38 +01:00
Manuel Schmid
c668228fe8
chore: specify too broad exception types
2024-02-04 01:31:24 +01:00
Manuel Schmid
8af73e622f
chore: remove remaining todos after analysis
...
refiner is added when set
restoring multiline prompts has been resolved by using separate parameters "raw_prompt" and "raw_negative_prompt"
2024-02-04 00:44:26 +01:00
Manuel Schmid
1419231e74
feat: prevent config reset by renaming metadata_scheme to match config options
2024-02-03 22:41:26 +01:00
Manuel Schmid
63403d614e
feat: add sampler mapping
2024-02-02 23:44:47 +01:00
Manuel Schmid
ed4a958da8
fix: add workaround for multiline prompts
2024-02-02 22:04:28 +01:00
Manuel Schmid
349556bfa6
fix: remove sorting for A1111, change performance key position
...
fixes https://github.com/lllyasviel/Fooocus/pull/1940#issuecomment-1924444633
2024-02-02 20:58:16 +01:00
Manuel Schmid
1c3431e6a7
wip: add TODO for ultiline prompt style resolution
2024-02-02 02:02:41 +01:00
Manuel Schmid
9aa82aa80a
fix: add missing refiner in A1111 parse_json
2024-02-02 01:57:33 +01:00
Manuel Schmid
f745d40687
refactor: merge metadata.py into meta_parser.py
2024-02-02 01:55:32 +01:00
Manuel Schmid
b438f7b43f
chore: check and remove ToDo's
2024-02-02 01:45:08 +01:00
Manuel Schmid
f7e24bdb1f
feat: sort metadata attributes before writing to image
2024-02-02 01:26:20 +01:00
Manuel Schmid
e55870124b
refactor: add step before parsing to set data in parser
...
- add constructor for MetadataSchema class
- remove showable and copyable from log output
- add functional hash cache (model hashing takes about 5 seconds, only required once per model, using hash lazy loading)
2024-02-02 01:25:47 +01:00
Manuel Schmid
796cf3c78d
fix: align handling for scheme Fooocus by removing lcm lora from json parsing
2024-02-02 01:20:28 +01:00
Manuel Schmid
f4afc4af10
feat: add method get_scheme to Metadata
2024-02-02 01:19:21 +01:00
Manuel Schmid
ea6839be83
chore: code cleanup
2024-02-02 01:14:40 +01:00
Manuel Schmid
bc9b625221
feat: add hash cache to metadata
2024-02-02 01:11:50 +01:00
Manuel Schmid
23ba05015a
chore: use str as return type in calculate_sha256
2024-02-02 01:10:26 +01:00
Manuel Schmid
6b9c0bd448
refactor: code cleanup
2024-01-31 01:35:51 +01:00
Manuel Schmid
9bdb65ec5d
feat: add metadata handling for all non-img2img parameters
2024-01-31 01:18:09 +01:00
Manuel Schmid
7772eb7965
refactor: add flag for refiner_swap_method
2024-01-31 01:17:10 +01:00
Manuel Schmid
e93a345ccf
feat: code cleanup, do not queue metadata preview on image upload
2024-01-30 00:20:46 +01:00
Manuel Schmid
5811234d23
feat: allow model / LoRA loading from subfolders
2024-01-30 00:01:29 +01:00
Manuel Schmid
6939f7904a
fix: correctly extract prompt style when only prompt expansion is selected
2024-01-29 22:27:33 +01:00
Manuel Schmid
dcc4874455
feat: override existing LoRA values when importing, would cause images to differ
2024-01-29 21:57:02 +01:00
Manuel Schmid
78d1ad3962
feat: add lora handling to A1111 scheme
2024-01-29 21:56:10 +01:00
Manuel Schmid
89c8e3a812
feat: make sha256 with length 10 default
2024-01-29 21:54:39 +01:00
Manuel Schmid
e541097451
wip: code cleanup, update todos
2024-01-29 21:54:22 +01:00
Manuel Schmid
2656356206
fix: use correct order to read LoRA in meta parser
2024-01-29 18:17:51 +01:00
Manuel Schmid
e388f6fff6
wip: code cleanup, update todos
2024-01-29 16:38:39 +01:00
Manuel Schmid
33d644f4a5
feat: add prefix "Fooocus" to version
2024-01-29 16:29:40 +01:00
Manuel Schmid
7fefe3a3c2
feat: add created_by again
2024-01-29 16:28:47 +01:00
Manuel Schmid
c80011b1d1
fix: use correct LoRA mapping, add fallback for backwards compatibility
2024-01-29 15:45:55 +01:00
Manuel Schmid
20e53028a4
refactor: use central flag for ControlNet image count
2024-01-29 14:27:51 +01:00
Manuel Schmid
c3ab9f1f30
refactor: use central flag for LoRA count
2024-01-29 14:26:56 +01:00
Manuel Schmid
f94b96f6eb
wip: add prompt style extraction for A1111 scheme
2024-01-29 01:52:24 +01:00
Manuel Schmid
5e84a45e22
feat: add A1111 prompt style detection
...
only detects one style as Fooocus doesn't wrap {prompt} with the whole style, but has a separate prompt string for each style
2024-01-28 23:52:06 +01:00
Manuel Schmid
236278948b
chore: code cleanup
2024-01-28 23:50:56 +01:00
Manuel Schmid
5dcb2bc573
fix: correctly map resolution, use empty styles for A1111
2024-01-28 20:42:58 +01:00
Manuel Schmid
cbc63ebba3
feat: add enums for Performance, Steps and StepsUOV
...
also move MetadataSchema enum to prevent circular dependency
2024-01-28 20:01:33 +01:00
Manuel Schmid
e19596c2df
feat: map basic information for scheme A1111
2024-01-28 18:04:40 +01:00
Manuel Schmid
f3010313fc
wip: add metadata mapping, reading and writing
...
applying data after reading currently not functional for A1111
2024-01-28 05:35:44 +01:00
lllyasviel
1bcbd6501b
fix config
2024-01-27 16:18:26 -08:00
Manuel Schmid
7185abb8ba
Merge branch 'main_upstream'
...
# Conflicts:
# launch.py
# ldm_patched/modules/args_parser.py
# modules/config.py
# presets/anime.json
# presets/default.json
# presets/lcm.json
# presets/realistic.json
2024-01-27 21:09:08 +01:00
lllyasviel
69ad1b3c24
advanced preset load
...
new model list
i
new candidates
add model fallback
allow disable preset download
Update anime.json
Update anime.json
Update config.py
Update anime.json
Update readme.md
Update default.json
2024-01-27 08:06:31 -08:00
Hunter-Houts
ff2187efed
Upgrade requirements_met function ( #1955 )
...
* Upgrade requirements_met function
* Removed extra import
* Using Requirements instead of Regex
2024-01-27 05:12:34 -08:00
rayleichenxi
80068a0cd7
[enhance]: use opencv to rewrite morphological_open(), achieve a 40x speed increase in morphological_open opporation, for inpanting images size smaller than 3k ( #2016 )
...
Co-authored-by: 雷晨曦 <leichenxi@qiyi.com>
2024-01-27 05:12:34 -08:00
Manuel Schmid
1ae495f6b8
Merge branch 'feature/add-inpaint-mask-generation'
...
# Conflicts:
# requirements_versions.txt
# webui.py
2024-01-26 11:32:53 +01:00
Manuel Schmid
051faf78b8
fix: use correct default value in metadata check for created_by
2024-01-25 23:49:25 +01:00
Manuel Schmid
20b79788a0
feat: add resolved prompts to metadata
2024-01-25 23:48:47 +01:00
Manuel Schmid
510b587e84
fix: use pnginfo "parameters" insteadf of "Comments"
...
see https://github.com/RupertAvery/DiffusionToolkit/issues/202 and cf2772fab0/modules/processing.py (L939)
2024-01-25 21:08:19 +01:00
rayronvictor
228a0aaeea
Add SAM support
2024-01-25 16:45:02 -03:00
Manuel Schmid
366984ca64
Merge branch 'feature/add-inpaint-mask-generation'
...
# Conflicts:
# webui.py
2024-01-25 10:48:40 +01:00
rayronvictor
f0fb9783e1
Add options to u2net_cloth_seg
2024-01-24 21:26:23 -03:00
Manuel Schmid
23bb69bb13
Merge branch 'feature/add-inpaint-mask-generation'
2024-01-24 19:45:58 +01:00
Manuel Schmid
dea4b6c15c
fix: add correct flag validation for default_inpaint_mask_model config
2024-01-24 19:41:25 +01:00
Manuel Schmid
d7d34647d0
fix: remove segmentation models from rembg model selection
2024-01-24 19:38:12 +01:00
Manuel Schmid
e196a35ce2
Merge branch 'feature/add-inpaint-mask-generation'
...
# Conflicts:
# modules/config.py
# requirements_versions.txt
2024-01-24 02:46:09 +01:00
Manuel Schmid
db5512fb93
feat: add inpaint mask generation functionality
...
uses rembg, see https://github.com/danielgatis/rembg
2024-01-24 02:22:50 +01:00
Manuel Schmid
d7c1f4a6aa
Merge branch 'hotfix/prevent-skipping-and-stopping-by-other-users'
...
# Conflicts:
# modules/advanced_parameters.py
# modules/async_worker.py
# webui.py
2024-01-22 23:15:18 +01:00
Manuel Schmid
148eddf48d
Merge branch 'feature/extract-advanced-parameters' into hotfix/prevent-skipping-and-stopping-by-other-users
...
# Conflicts:
# webui.py
2024-01-22 21:31:24 +01:00
Manuel Schmid
031b1f8b11
chore: cleanup pid code
2024-01-22 21:20:17 +01:00
Manuel Schmid
21f4767c65
fix: resolve circular import, patch_all now in async_worker
2024-01-22 21:14:54 +01:00
Manuel Schmid
177075ff7b
feat: extract remaining attributes, do not use globals in patch
2024-01-22 21:13:44 +01:00
Manuel Schmid
f3222b0f27
feat: extract attribute controlnet_softness
2024-01-22 20:09:24 +01:00
Manuel Schmid
78d2ec8d77
chore: cleanup code
2024-01-22 20:01:43 +01:00
Manuel Schmid
18446dc3a5
wip: add TODOs
2024-01-22 19:23:22 +01:00
Manuel Schmid
4ce27aeb0f
feat: extract inpaint_ctrls attributes
...
debugging_inpaint_preprocessor, inpaint_disable_initial_latent, inpaint_engine, inpaint_strength, inpaint_respective_field, inpaint_mask_upload_checkbox, invert_mask_checkbox, inpaint_erode_or_dilate
2024-01-22 19:20:04 +01:00