mirror of
https://github.com/lllyasviel/Fooocus.git
synced 2026-08-16 13:13:16 +02:00
feat: add config and option for uov prompt type
This commit is contained in:
@@ -117,6 +117,7 @@ class AsyncTask:
|
|||||||
self.enhance_checkbox = args.pop()
|
self.enhance_checkbox = args.pop()
|
||||||
self.enhance_uov_method = args.pop()
|
self.enhance_uov_method = args.pop()
|
||||||
self.enhance_uov_processing_order = args.pop()
|
self.enhance_uov_processing_order = args.pop()
|
||||||
|
self.enhance_uov_prompt_type = args.pop()
|
||||||
self.enhance_ctrls = []
|
self.enhance_ctrls = []
|
||||||
for _ in range(modules.config.default_enhance_tabs):
|
for _ in range(modules.config.default_enhance_tabs):
|
||||||
enhance_enabled = args.pop()
|
enhance_enabled = args.pop()
|
||||||
@@ -1036,7 +1037,7 @@ def worker():
|
|||||||
exception_result = ''
|
exception_result = ''
|
||||||
if len(goals_enhance) > 0:
|
if len(goals_enhance) > 0:
|
||||||
try:
|
try:
|
||||||
current_progress, img = process_enhance(
|
current_progress, img, prompt, negative_prompt = process_enhance(
|
||||||
all_steps, async_task, callback, controlnet_canny_path,
|
all_steps, async_task, callback, controlnet_canny_path,
|
||||||
controlnet_cpds_path, current_progress, current_task_id, denoising_strength, False,
|
controlnet_cpds_path, current_progress, current_task_id, denoising_strength, False,
|
||||||
'None', 0.0, 0.0, prompt, negative_prompt, final_scheduler_name,
|
'None', 0.0, 0.0, prompt, negative_prompt, final_scheduler_name,
|
||||||
@@ -1385,10 +1386,11 @@ def worker():
|
|||||||
preparation_steps, enhance_steps, switch, tiled, total_count, use_expansion, use_style,
|
preparation_steps, enhance_steps, switch, tiled, total_count, use_expansion, use_style,
|
||||||
use_synthetic_refiner, width)
|
use_synthetic_refiner, width)
|
||||||
|
|
||||||
if enhance_prompt_processed != '':
|
if async_task.enhance_uov_prompt_type == flags.enhancement_uov_prompt_type_last:
|
||||||
last_enhance_prompt = enhance_prompt_processed
|
if enhance_prompt_processed != '':
|
||||||
if enhance_negative_prompt_processed != '':
|
last_enhance_prompt = enhance_prompt_processed
|
||||||
last_enhance_negative_prompt = enhance_negative_prompt_processed
|
if enhance_negative_prompt_processed != '':
|
||||||
|
last_enhance_negative_prompt = enhance_negative_prompt_processed
|
||||||
|
|
||||||
except ldm_patched.modules.model_management.InterruptProcessingException:
|
except ldm_patched.modules.model_management.InterruptProcessingException:
|
||||||
if async_task.last_stop == 'skip':
|
if async_task.last_stop == 'skip':
|
||||||
|
|||||||
@@ -521,6 +521,12 @@ enhance_uov_processing_order = get_config_item_or_set_default(
|
|||||||
validator=lambda x: x in modules.flags.enhancement_uov_processing_order,
|
validator=lambda x: x in modules.flags.enhancement_uov_processing_order,
|
||||||
expected_type=int
|
expected_type=int
|
||||||
)
|
)
|
||||||
|
enhance_uov_prompt_type = get_config_item_or_set_default(
|
||||||
|
key='default_enhance_uov_prompt_type',
|
||||||
|
default_value=modules.flags.enhancement_uov_prompt_type_last,
|
||||||
|
validator=lambda x: x in modules.flags.enhancement_uov_prompt_types,
|
||||||
|
expected_type=int
|
||||||
|
)
|
||||||
default_sam_max_detections = get_config_item_or_set_default(
|
default_sam_max_detections = get_config_item_or_set_default(
|
||||||
key='default_sam_max_detections',
|
key='default_sam_max_detections',
|
||||||
default_value=0,
|
default_value=0,
|
||||||
|
|||||||
@@ -21,6 +21,10 @@ enhancement_uov_processing_order = [
|
|||||||
(enhancement_uov_after_label, enhancement_uov_after)
|
(enhancement_uov_after_label, enhancement_uov_after)
|
||||||
]
|
]
|
||||||
|
|
||||||
|
enhancement_uov_prompt_type_original = 'Original Prompts'
|
||||||
|
enhancement_uov_prompt_type_last = 'Last Filled Enhancement Prompts'
|
||||||
|
enhancement_uov_prompt_types = [enhancement_uov_prompt_type_original, enhancement_uov_prompt_type_last]
|
||||||
|
|
||||||
CIVITAI_NO_KARRAS = ["euler", "euler_ancestral", "heun", "dpm_fast", "dpm_adaptive", "ddim", "uni_pc"]
|
CIVITAI_NO_KARRAS = ["euler", "euler_ancestral", "heun", "dpm_fast", "dpm_adaptive", "ddim", "uni_pc"]
|
||||||
|
|
||||||
# fooocus: a1111 (Civitai)
|
# fooocus: a1111 (Civitai)
|
||||||
|
|||||||
@@ -359,9 +359,19 @@ with shared.gradio_root:
|
|||||||
with gr.Column():
|
with gr.Column():
|
||||||
enhance_uov_method = gr.Radio(label='Upscale or Variation:', choices=flags.uov_list, value=flags.disabled)
|
enhance_uov_method = gr.Radio(label='Upscale or Variation:', choices=flags.uov_list, value=flags.disabled)
|
||||||
enhance_uov_processing_order = gr.Radio(label='Order of Processing',
|
enhance_uov_processing_order = gr.Radio(label='Order of Processing',
|
||||||
info='Before is slower (larger area to enhance), but might enhance the overall image quality, whereas after is faster but may apply changes to the image which were already fixed by enhance. Use after when enhancing large areas.',
|
info='Use before for enhancement of small details and after for large areas.',
|
||||||
choices=flags.enhancement_uov_processing_order,
|
choices=flags.enhancement_uov_processing_order,
|
||||||
value=modules.config.enhance_uov_processing_order)
|
value=modules.config.enhance_uov_processing_order)
|
||||||
|
enhance_uov_prompt_type = gr.Radio(label='Prompt',
|
||||||
|
info='Choose which prompt to use for Upscale or Variation.',
|
||||||
|
choices=flags.enhancement_uov_prompt_types,
|
||||||
|
value=modules.config.enhance_uov_prompt_type,
|
||||||
|
visible=modules.config.enhance_uov_prompt_type == flags.enhancement_uov_after)
|
||||||
|
|
||||||
|
enhance_uov_processing_order.change(lambda x: gr.update(visible=x == flags.enhancement_uov_after),
|
||||||
|
inputs=enhance_uov_processing_order,
|
||||||
|
outputs=enhance_uov_prompt_type,
|
||||||
|
queue=False, show_progress=False)
|
||||||
gr.HTML('<a href="https://github.com/mashb1t/Fooocus/discussions/42" target="_blank">\U0001F4D4 Document</a>')
|
gr.HTML('<a href="https://github.com/mashb1t/Fooocus/discussions/42" target="_blank">\U0001F4D4 Document</a>')
|
||||||
enhance_ctrls = []
|
enhance_ctrls = []
|
||||||
for index in range(modules.config.default_enhance_tabs):
|
for index in range(modules.config.default_enhance_tabs):
|
||||||
@@ -943,7 +953,8 @@ with shared.gradio_root:
|
|||||||
|
|
||||||
ctrls += ip_ctrls
|
ctrls += ip_ctrls
|
||||||
ctrls += [debugging_dino, dino_erode_or_dilate, debugging_enhance_masks_checkbox,
|
ctrls += [debugging_dino, dino_erode_or_dilate, debugging_enhance_masks_checkbox,
|
||||||
enhance_input_image, enhance_checkbox, enhance_uov_method, enhance_uov_processing_order]
|
enhance_input_image, enhance_checkbox, enhance_uov_method, enhance_uov_processing_order,
|
||||||
|
enhance_uov_prompt_type]
|
||||||
ctrls += enhance_ctrls
|
ctrls += enhance_ctrls
|
||||||
|
|
||||||
def parse_meta(raw_prompt_txt, is_generating):
|
def parse_meta(raw_prompt_txt, is_generating):
|
||||||
|
|||||||
Reference in New Issue
Block a user