Commit Graph
105 Commits
Author SHA1 Message Date
Manuel Schmid 1ef6367635 feat: add option to process uov either before or after enhance 2024-06-23 17:41:21 +02:00
Manuel Schmid c7a411a8c7 refactor: code cleanup 2024-06-21 22:43:03 +02:00
Manuel Schmid cef92ffffe Merge branch 'main_upstream' into feature/multi-step-rendering 2024-06-19 00:12:04 +02:00
Manuel Schmid dd866616bc refactor: code cleanup 2024-06-18 22:16:48 +02:00
Manuel Schmid e1be3fa37a Merge branch 'main' into feature/multi-step-rendering 2024-06-16 18:54:52 +02:00
Manuel Schmid cecd6876a5 Merge branch 'hotfix/add-missing-method-in-performance' 2024-06-16 18:54:42 +02:00
Manuel Schmid 7c1a101c0f hotfix: add missing method in performance enum (#3154) 2024-06-16 18:53:20 +02:00
Manuel Schmid 9ef7fe0843 hotfix: add missing method in performance enum 2024-06-16 18:52:20 +02:00
Manuel Schmid 9d41c9521b fix: add workaround for same value in Steps IntEnum (#3153) 2024-06-16 18:44:16 +02:00
Manuel Schmid af209cda53 fix: add workaround for same value in Steps IntEnum
(cherry picked from commit ea1562d078)
2024-06-16 18:41:17 +02:00
Manuel Schmid ea1562d078 fix: add workaround for same value in Steps IntEnum 2024-06-16 17:46:48 +02:00
Manuel Schmid 9998b52dd2 feat: add gradio elements for input 2024-06-12 21:52:48 +02:00
Manuel Schmid 3873892b0a feat: change default_inpaint_mask_sam_model to match sam model registry 2024-06-10 20:45:56 +02:00
Manuel Schmid 8087861743 refactor: reorder inpaint_mask_sam_model by model size ascending 2024-06-09 18:46:18 +02:00
Manuel Schmid 2d55a5f257 feat: add support for playground v2.5 (#3073)
* feat: add support for playground v2.5

* feat: add preset for playground v2.5

* feat: change URL to mashb1t

* feat: optimize playground v2.5 preset
2024-06-04 20:15:49 +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 4e658bb63a feat: optimize performance lora filtering in metadata (#3048)
* feat: add remove_performance_lora method

* feat: use class PerformanceLoRA instead of strings in config

* refactor: cleanup flags, use __member__ to check if enums contains key

* feat: only filter lora of selected performance instead of all performance LoRAs

* fix: disable intermediate results for all restricted performances

too fast for Gradio, which becomes a bottleneck

* refactor: rename parse_json to to_json, rename parse_string to to_string

* feat: use speed steps as default instead of hardcoded 30

* feat: add method to_steps to Performance

* refactor: remove method ordinal_suffix, not needed anymore

* feat: only filter lora of selected performance instead of all performance LoRAs

both metadata and history log

* feat: do not filter LoRAs in metadata parser but rather in metadata load action
2024-05-30 16:14:28 +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 1981ace9e1 feat: add method to_steps to Performance 2024-05-30 00:20:53 +02:00
Manuel Schmid 55b01a81a6 refactor: cleanup flags, use __member__ to check if enums contains key 2024-05-30 00:14:27 +02:00
Manuel Schmid 9564341fbd feat: use class PerformanceLoRA instead of strings in config 2024-05-30 00:13:14 +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 6dd718919c feat: cleanup performance selection, make it completely dynamic 2024-05-26 18:09:22 +02:00
302bfdf855 feat: read size and ratio of an image and provide the recommended size (#2971)
* Add the information about the size and ratio of the read image

* feat: use available aspect ratios from config, move function to util, change default visibility of label

* refactor: extract sdxl aspect ratios to flags, use in describe

as discussed in
https://github.com/lllyasviel/Fooocus/pull/2971#discussion_r1608493765
https://github.com/lllyasviel/Fooocus/pull/2971#issuecomment-2123620595

---------

Co-authored-by: Manuel Schmid <dev@mash1t.de>
Co-authored-by: Manuel Schmid <9307310+mashb1t@users.noreply.github.com>
2024-05-22 20:47:44 +02:00
Manuel Schmid ebae829f43 Merge branch 'read-image-size'
# Conflicts:
#	modules/util.py
#	webui.py
2024-05-22 20:44:22 +02:00
Manuel Schmid 751e867b37 refactor: extract sdxl aspect ratios to flags, use in describe
as discussed in
https://github.com/lllyasviel/Fooocus/pull/2971#discussion_r1608493765
https://github.com/lllyasviel/Fooocus/pull/2971#issuecomment-2123620595
2024-05-22 20:38:03 +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 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
Manuel Schmid 3a55e7e391 feat: add AlignYourStepsScheduler (#2905) 2024-05-18 15:53:34 +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 badbe6e53b Merge branch 'feature/add-align-your-steps-scheduler'
# Conflicts:
#	presets/anime.json
2024-05-15 17:15:47 +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 c507556bfd feat: add AlignYourStepsScheduler
https://github.com/comfyanonymous/ComfyUI/blob/794a357f7a4bd40c6e2dafab9d93142be9933a56/comfy_extras/nodes_align_your_steps.py
https://research.nvidia.com/labs/toronto-ai/AlignYourSteps/howto.html
2024-05-12 17:06:13 +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 15696da9b8 feat: use different default label, add translation 2024-05-04 20:37:30 +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 fa74a0c7fe feat: add performance hyper-sd based on 4step LoRA 2024-04-26 22:22:09 +02: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 25650b4bc4 feat: add performance lightning with 4 step LoRA (#2415)
* feat: add performance sdxl lightning

based on https://huggingface.co/ByteDance/SDXL-Lightning/blob/main/sdxl_lightning_4step_lora.safetensors

* feat: add method for centralized restriction of features for specific performance modes

* feat: add lightning preset
2024-03-10 14:34:48 +01:00
Manuel Schmid b6e4bb86f4 feat: use jpeg instead of jpg, use enums instead of strings (#2453)
* fix: parse width and height as int when applying metadata (#2452)

fixes an issue with A1111 metadata scheme where width and height are strings after splitting resolution

* feat: use jpeg instead of jpg, use enums instead of strings
2024-03-09 16:00:25 +01:00
Manuel Schmid ac841f1f4c Merge branch 'feature/add-performance-sdxl-lightning'
# Conflicts:
#	modules/async_worker.py
2024-03-03 01:26:44 +01:00
Manuel Schmid 0f6e912fde feat: add performance sdxl lightning
based on https://huggingface.co/ByteDance/SDXL-Lightning/blob/main/sdxl_lightning_4step_lora.safetensors
2024-03-03 00:40:02 +01:00
Manuel Schmid 056840c513 Merge commit '4945fc99624afc661aae2d3c5c5d73a32ba21897'
# Conflicts:
#	fooocus_version.py
#	language/en.json
#	launch.py
#	modules/async_worker.py
#	modules/config.py
#	modules/flags.py
#	modules/meta_parser.py
#	modules/util.py
#	webui.py
2024-03-02 17:24:53 +01:00
Manuel Schmid b6d23670d8 feat: add jpg and webp support, add exif data handling for metadata (#1863)
* feature: added flag, config and ui update for image extension change #1789

* moved function to config module

* moved image extension to webui via async worker. Passing as parameter to log and get_current_html_path functions per feedback

* check flag before displaying image extension radio button

* disabled if image log flag is passed in

* fix: add missing image_extension parameter to log call

* refactor: change label

* feat: add webp to image_extensions

supported image extemsions: see https://pillow.readthedocs.io/en/stable/handbook/image-file-formats.html

* feat: use consistent file name in gradio

returns and uses filepaths instead of numpy image by saving to temp dir
uses double the temp dir file storage on disk as it saves to temp dir and gradio temp dir when displaying the image, but reuses logged output image

* feat: delete temp images after yielding to gradio

* feat: use args temp path if given

* chore: code cleanup, remove redundant if statement

* feat: always show image_extension element

this is now possible due to image extension support in gradio via https://github.com/lllyasviel/Fooocus/pull/1932

* refactor: rename image_extension to image_file_extension

* feat: use optimized jpg parameters when saving the image

quality=95
optimize=True
progressive=True

* refactor: rename image_file_extension to output_format

* feat: add exif handling

* refactor: code cleanup, remove items from metadata output

---------

Co-authored-by: Manuel Schmid <dev@mash1t.de>
Co-authored-by: Manuel Schmid <9307310+mashb1t@users.noreply.github.com>
Co-authored-by: Manuel Schmid <manuel.schmid@odt.net>
Co-authored by: eddyizm <wtfisup@hotmail.com>
2024-02-26 15:31:32 +01:00