Commit Graph

282 Commits

Author SHA1 Message Date
Manuel Schmid c1f62361ba
refactor: add EarlyReturnException to prevent return value issues 2024-06-08 20:25:50 +02:00
Manuel Schmid e58d913fbb
refactor: extract async_worker handle method into separate functions 2024-06-08 19:55:31 +02:00
Manuel Schmid 30b2a9536e
Merge branch 'feature/playground-2.5'
# Conflicts:
#	modules/flags.py
2024-06-01 23:31:19 +02:00
Manuel Schmid fe58df35c9
feat: add support for playground 2.5 2024-06-01 22:43:27 +02:00
Manuel Schmid 5768330142
Merge branch 'feature/optimize-performance-lora-filtering-in-metadata'
# Conflicts:
#	modules/flags.py
#	modules/util.py
#	webui.py
2024-05-30 15:21:04 +02:00
Manuel Schmid e3060e00d4
feat: only filter lora of selected performance instead of all performance LoRAs 2024-05-30 00:16:34 +02:00
Manuel Schmid 4361e7e629
Merge remote-tracking branch 'upstream/main' 2024-05-27 00:30:53 +02:00
Manuel Schmid dfff9b7dcf
fix: adjust clip skip default value from 1 to 2 (#3011)
* Revert "Revert "feat: add clip skip handling (#2999)" (#3008)"

This reverts commit 989a1ad52b.

* feat: use clip skip 2 as default
2024-05-27 00:28:22 +02:00
Manuel Schmid 08877666ba
Merge branch 'main_upstream' 2024-05-26 22:14:20 +02:00
Manuel Schmid 989a1ad52b
Revert "feat: add clip skip handling (#2999)" (#3008)
This reverts commit cc58fe5270.
2024-05-26 22:07:44 +02:00
Manuel Schmid f82aa8a909
Merge branch 'develop_upstream'
# Conflicts:
#	fooocus_version.py
#	modules/util.py
#	tests/test_utils.py
#	webui.py
2024-05-26 15:28:08 +02:00
Manuel Schmid cc58fe5270
feat: add clip skip handling (#2999) 2024-05-26 14:18:19 +02:00
Manuel Schmid 65a8b25129
feat: inline lora optimisations (#2967)
* feat: add performance loras to the end of the loras array

* fix: resolve circular dependency for unit tests

* feat: allow multiple matches for each token, optimize and extract method cleanup_prompt

* fix: update unit tests

* feat: ignore custom wildcards
2024-05-20 17:31:51 +02:00
Manuel Schmid 44b46bffba
Merge branch 'feature/inline-lora-optimisations' 2024-05-20 17:31:30 +02:00
Manuel Schmid f030490144
feat: add performance loras to the end of the loras array 2024-05-20 17:26:17 +02:00
Manuel Schmid dd5a14ac7f
Merge branch 'feature/progress-bar'
# Conflicts:
#	fooocus_version.py
#	modules/async_worker.py
#	webui.py
2024-05-19 20:54:53 +02:00
Manuel Schmid c995511705
feat: progress bar improvements (#2962)
* feat: align progress bar vertically

* feat: use fixed width for status text, remove ordinals

* refactor: align progress to actions
2024-05-19 20:43:11 +02:00
Manuel Schmid 5d8eb5235a
refactor: align progress to actions 2024-05-19 20:33:21 +02:00
Manuel Schmid 888de56290
feat: use fixed width for status text, remove ordinals 2024-05-19 20:13:29 +02:00
Manuel Schmid 35b74dfa64
feat: optimize model management of image censoring (#2960)
now follows general Fooocus model management principles + includes code optimisations for reusability
2024-05-19 18:36:47 +02:00
Manuel Schmid dad228907e
fix: remove leftover code from hyper-sd8 testing (#2959) 2024-05-19 17:42:46 +02:00
Manuel Schmid 13599edb9b
feat: add performance hyper-sd based on 4step LoRA (#2812)
* feat: add performance hyper-sd based on 4step LoRA

* feat: use LoRA weight 0.8, sampler dpmpp_sde_gpu and scheduler_name karras

suggested in https://github.com/lllyasviel/Fooocus/discussions/2813#discussioncomment-9245251
results see https://github.com/lllyasviel/Fooocus/discussions/2813#discussioncomment-9275251

* feat: change ByteDance huggingface profile with mashb1t

* wip: add hyper-sd 8 step cfg lora with negative prompt support

* feat: remove hyper-sd8 performance

still waiting for the release of hyper-sd 4step CFG LoRA, not yet satisfied with any of the CFG LoRAs compared to non-cfg ones.
see https://huggingface.co/ByteDance/Hyper-SD
2024-05-19 13:23:08 +02:00
Manuel Schmid 2e2e8f851a
feat: add tcd sampler and discrete distilled tcd scheduler based on sgm_uniform (same as lcm) (#2907) 2024-05-19 13:08:33 +02:00
cantor-set 3bae73e23e
feat: add support for lora inline prompt references (#2323)
* Adding support to inline prompt references

* Added unittests

* Added an initial documentation for development guidelines

* Added a negative number

* renamed parameter

* removed wrongly committed file

* Code fixes

* Fixed circular reference

* Fixed typo. Added TODO

* Fixed merge

* Code cleanup

* Added missing refernce function

* Removed function from util.py... again...

* Update modules/async_worker.py

Implemented suggested change

Co-authored-by: Manuel Schmid <9307310+mashb1t@users.noreply.github.com>

* Removed another circular reference

* Renamed module

* Addressed PR comments

* Added return type to function

* refactor: move apply_wildcards to module util

* refactor: code cleanup, unify usage of tuples in lora list

* docs: add instructions for running unittests on embedded python, code cleanup

* refactor: code cleanup, move makedirs_with_log back to util

---------

Co-authored-by: cantor-set <cantor-set@no-email.net>
Co-authored-by: Manuel Schmid <9307310+mashb1t@users.noreply.github.com>
Co-authored-by: Manuel Schmid <dev@mash1t.de>
2024-05-18 17:19:46 +02:00
Manuel Schmid 00d3d1b4b3
feat: add nsfw image censoring via config and checkbox (#958)
* add nsfw image censoring

activatable via config, uses CompVis/stable-diffusion-safety-checker

* fix progressbar call for nsfw output

* use config to set cache dir for safety checker

* add checkbox black_out_nsfw

makes both enabling via config and checkbox possible, where config overrides the checkbox value

* fix: add missing diffusers package

* feat: extract safety checker, remove dependency to diffusers

* feat: make code compatible again after merge with main

* feat: move censor to extras, optimize safety checker file handling

* refactor: rename folder safety_checker_models to safety_checker
2024-05-18 15:50:28 +02:00
Manuel Schmid 4d46fb6bcb
Merge branch 'feature/add-tcd-sampler'
# Conflicts:
#	modules/flags.py
2024-05-15 17:17:02 +02:00
Manuel Schmid 77acf8126a
wip: add tcd sampler
adapted code from https://github.com/comfyanonymous/ComfyUI/pull/3370
TODO: check if virtual scheduler tcd is needed for using sampling_base ModelSamplingDiscreteDistilled or if it's better to use sgm_uniform directly without patching
2024-05-12 19:42:28 +02:00
Manuel Schmid 0c9fe7f99e
Merge remote-tracking branch 'upstream/develop' 2024-05-09 22:27:36 +02:00
docppp bdd6b1a9b0
feat: add full raw prompt to history log (#1920)
* Update async_worker.py

* Update private_logger.py

* refactor: only show full prompt details in logs, exclude from image metadata

---------

Co-authored-by: Manuel Schmid <9307310+mashb1t@users.noreply.github.com>
Co-authored-by: Manuel Schmid <dev@mash1t.de>
2024-05-09 20:25:43 +02:00
Manuel Schmid 8b75efd318
Merge remote-tracking branch 'upstream/develop'
# Conflicts:
#	modules/async_worker.py
2024-05-09 19:17:46 +02:00
Manuel Schmid f54364fe4e
feat: add random style checkbox to styles selection (#2855)
* feat: add random style

* feat: rename random to random style, add translation

* feat: add preview image for random style
2024-05-09 19:02:04 +02:00
Manuel Schmid c32bc5e199
feat: add optional model VAE select (#2867)
* Revert "fix: use LF as line breaks for Docker entrypoint.sh (#2843)" (#2865)

False alarm, worked as intended before. Sorry for the fuzz.
This reverts commit d16a54edd6.

* feat: add VAE select

* feat: use different default label, add translation

* fix: do not reload model when VAE stays the same

* refactor: code cleanup

* feat: add metadata handling
2024-05-09 18:59:35 +02:00
Manuel Schmid a6207a949a
Merge branch 'feature/add-vae-select' 2024-05-05 01:07:39 +02:00
Manuel Schmid b0d3a3abb0
Merge branch 'feature/add-random-style'
# Conflicts:
#	modules/async_worker.py
2024-05-05 01:07:34 +02:00
Manuel Schmid ab76a26806
feat: add metadata handling 2024-05-05 00:33:24 +02:00
Manuel Schmid 8e6299b898
feat: add VAE select 2024-05-04 20:36:47 +02:00
Manuel Schmid 0db3c10c60
feat: add random style 2024-05-02 22:20:18 +02:00
Manuel Schmid 2bd9936d5b
Merge branch 'feature/hyper-sd-performance'
# Conflicts:
#	modules/async_worker.py
2024-04-30 15:24:28 +02:00
Manuel Schmid 27df5df20b
feat: use LoRA weight 0.8, sampler dpmpp_sde_gpu and scheduler_name karras
suggested in https://github.com/lllyasviel/Fooocus/discussions/2813#discussioncomment-9245251
results see https://github.com/lllyasviel/Fooocus/discussions/2813#discussioncomment-9275251
2024-04-30 15:06:33 +02:00
Manuel Schmid fa74a0c7fe
feat: add performance hyper-sd based on 4step LoRA 2024-04-26 22:22:09 +02:00
delta_lt_0 5ada070d88
feat: support download of huggingface files from a mirror website (#2637)
* fix: load image number from preset (#2611)

* fix: add default_image_number to preset handling

* fix: use minimum image number of preset and config to prevent UI overflow

* fix: use correct base dimensions for outpaint mask padding (#2612)

* fix: add Civitai compatibility for LoRAs in a1111 metadata scheme by switching schema (#2615)

* feat: update sha256 generation functions

29be1da7cf/modules/hashes.py

* feat: add compatibility for LoRAs in a1111 metadata scheme

* feat: add backwards compatibility

* refactor: extract remove_special_loras

* fix: correctly apply LoRA weight for legacy schema

* docs: bump version number to 2.3.1, add changelog (#2616)

* feat:support download huggingface files from a  mirror site

---------

Co-authored-by: Manuel Schmid <9307310+mashb1t@users.noreply.github.com>
2024-04-06 15:25:19 +02:00
Manuel Schmid 8fff0476ce
Merge commit 'e2f9bcb11d06216d6800676c48d8d74d6fd77a4b'
# Conflicts:
#	fooocus_version.py
#	modules/meta_parser.py
2024-03-23 17:04:47 +01:00
Manuel Schmid 9aaa400553
fix: use correct base dimensions for outpaint mask padding (#2612) 2024-03-23 13:10:21 +01:00
Manuel Schmid 679c02a09f
Merge branch 'main_upstream'
# Conflicts:
#	css/style.css
#	fooocus_colab.ipynb
#	fooocus_version.py
#	launch.py
#	modules/async_worker.py
#	modules/config.py
#	modules/flags.py
#	modules/meta_parser.py
#	webui.py
2024-03-18 21:27:56 +01:00
Manuel Schmid 8baafcd79c
Merge branch 'main_upstream' into develop 2024-03-15 20:52:06 +01:00
Manuel Schmid 9cd0366d30
fix: parse seed as string to display correctly in metadata preview (#2536) 2024-03-15 20:38:21 +01:00
Manuel Schmid 57a01865b9
refactor: only use LoRA activate on handover to async worker, extract method 2024-03-11 23:49:45 +01:00
xhoxye ead24c9361
feat: read wildcards in order 通配符增强,切换顺序读取。(#1761)
* 通配符增强,切换顺序读取

通配符增强,通过勾选切换通配符读取方法,默认不勾选为随机读取一行,勾选后为按顺序读取,并使用相同的种子。

* 代码来自刁璐璐

* update

* Update async_worker.py

* refactor: rename read_wildcard_in_order_checkbox to read_wildcard_in_order

* fix: use correct method call for interrupt_current_processing

actually achieves the same result, stopping the task

* refactor: move checkbox to developer debug mode, rename to plural

below disable seed increment

* refactor: code cleanup, separate code for disable_seed_increment

* i18n: add translation for checkbox text

---------

Co-authored-by: Manuel Schmid <manuel.schmid@odt.net>
2024-03-10 23:18:36 +01:00
Manuel Schmid 5c7dc12470
Merge branch 'main_upstream' into develop 2024-03-10 23:14:52 +01:00
Manuel Schmid bc9c586082
fix: use correct method call for interrupt_current_processing (#2506)
actually achieves the same result, stopping the task
2024-03-10 23:13:09 +01:00