mirror of
https://github.com/lllyasviel/Fooocus.git
synced 2026-08-16 13:13:16 +02:00
feat: cleanup performance selection, make it completely dynamic
This commit is contained in:
+1
-1
@@ -379,7 +379,7 @@ default_prompt = get_config_item_or_set_default(
|
|||||||
default_performance = get_config_item_or_set_default(
|
default_performance = get_config_item_or_set_default(
|
||||||
key='default_performance',
|
key='default_performance',
|
||||||
default_value=Performance.SPEED.value,
|
default_value=Performance.SPEED.value,
|
||||||
validator=lambda x: x in Performance.list()
|
validator=lambda x: x in Performance.values()
|
||||||
)
|
)
|
||||||
default_advanced_checkbox = get_config_item_or_set_default(
|
default_advanced_checkbox = get_config_item_or_set_default(
|
||||||
key='default_advanced_checkbox',
|
key='default_advanced_checkbox',
|
||||||
|
|||||||
+11
-7
@@ -142,6 +142,10 @@ class Performance(Enum):
|
|||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def list(cls) -> list:
|
def list(cls) -> list:
|
||||||
|
return list(map(lambda c: (c.name, c.value), cls))
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def values(cls) -> list:
|
||||||
return list(map(lambda c: c.value, cls))
|
return list(map(lambda c: c.value, cls))
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
@@ -157,10 +161,10 @@ class Performance(Enum):
|
|||||||
return StepsUOV[self.name].value if Steps[self.name] else None
|
return StepsUOV[self.name].value if Steps[self.name] else None
|
||||||
|
|
||||||
|
|
||||||
performance_selections = [
|
performance_selections = []
|
||||||
(f'Quality <span style="color: grey;"> \U00002223 {Steps.QUALITY.value} steps</span>', Performance.QUALITY.value),
|
|
||||||
(f'Speed <span style="color: grey;"> \U00002223 {Steps.SPEED.value} steps</span>', Performance.SPEED.value),
|
for name, value in Performance.list():
|
||||||
(f'Extreme Speed (LCM) <span style="color: grey;"> \U00002223 {Steps.EXTREME_SPEED.value} steps, intermediate results disabled</span>', Performance.EXTREME_SPEED.value),
|
restricted_text = ''
|
||||||
(f'Lightning <span style="color: grey;"> \U00002223 {Steps.LIGHTNING.value} steps, intermediate results disabled</span>', Performance.LIGHTNING.value),
|
if Performance.has_restricted_features(value):
|
||||||
(f'Hyper-SD <span style="color: grey;"> \U00002223 {Steps.HYPER_SD.value} steps, intermediate results disabled</span>', Performance.HYPER_SD.value)
|
restricted_text = '*'
|
||||||
]
|
performance_selections.append((f'{value} <span style="color: grey;"> \U00002223 {Steps[name].value} steps {restricted_text}</span>', Performance[name].value))
|
||||||
|
|||||||
@@ -327,6 +327,7 @@ with shared.gradio_root:
|
|||||||
interactive=True)
|
interactive=True)
|
||||||
|
|
||||||
performance_selection = gr.Radio(label='Performance',
|
performance_selection = gr.Radio(label='Performance',
|
||||||
|
info='* = restricted feature set, intermediate results disabled',
|
||||||
choices=modules.flags.performance_selections,
|
choices=modules.flags.performance_selections,
|
||||||
value=modules.config.default_performance,
|
value=modules.config.default_performance,
|
||||||
elem_classes='performance_selections')
|
elem_classes='performance_selections')
|
||||||
|
|||||||
Reference in New Issue
Block a user