Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
S
Stable Diffusion Webui
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
novelai-storage
Stable Diffusion Webui
Commits
e6269cba
Commit
e6269cba
authored
May 22, 2023
by
Kohaku-Blueleaf
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add dropdown for scheduler type
parent
90ec557d
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
40 additions
and
18 deletions
+40
-18
modules/img2img.py
modules/img2img.py
+2
-1
modules/processing.py
modules/processing.py
+3
-1
modules/sd_samplers_kdiffusion.py
modules/sd_samplers_kdiffusion.py
+15
-4
modules/txt2img.py
modules/txt2img.py
+2
-1
modules/ui.py
modules/ui.py
+16
-10
scripts/xyz_grid.py
scripts/xyz_grid.py
+2
-1
No files found.
modules/img2img.py
View file @
e6269cba
...
@@ -78,7 +78,7 @@ def process_batch(p, input_dir, output_dir, inpaint_mask_dir, args):
...
@@ -78,7 +78,7 @@ def process_batch(p, input_dir, output_dir, inpaint_mask_dir, args):
processed_image
.
save
(
os
.
path
.
join
(
output_dir
,
filename
))
processed_image
.
save
(
os
.
path
.
join
(
output_dir
,
filename
))
def
img2img
(
id_task
:
str
,
mode
:
int
,
prompt
:
str
,
negative_prompt
:
str
,
prompt_styles
,
init_img
,
sketch
,
init_img_with_mask
,
inpaint_color_sketch
,
inpaint_color_sketch_orig
,
init_img_inpaint
,
init_mask_inpaint
,
steps
:
int
,
sampler_index
:
int
,
mask_blur
:
int
,
mask_alpha
:
float
,
inpainting_fill
:
int
,
restore_faces
:
bool
,
tiling
:
bool
,
n_iter
:
int
,
batch_size
:
int
,
cfg_scale
:
float
,
image_cfg_scale
:
float
,
denoising_strength
:
float
,
seed
:
int
,
subseed
:
int
,
subseed_strength
:
float
,
seed_resize_from_h
:
int
,
seed_resize_from_w
:
int
,
seed_enable_extras
:
bool
,
selected_scale_tab
:
int
,
height
:
int
,
width
:
int
,
scale_by
:
float
,
resize_mode
:
int
,
inpaint_full_res
:
bool
,
inpaint_full_res_padding
:
int
,
inpainting_mask_invert
:
int
,
img2img_batch_input_dir
:
str
,
img2img_batch_output_dir
:
str
,
img2img_batch_inpaint_mask_dir
:
str
,
override_settings_texts
,
enable_k_sched
,
sigma_min
,
sigma_max
,
rho
,
*
args
):
def
img2img
(
id_task
:
str
,
mode
:
int
,
prompt
:
str
,
negative_prompt
:
str
,
prompt_styles
,
init_img
,
sketch
,
init_img_with_mask
,
inpaint_color_sketch
,
inpaint_color_sketch_orig
,
init_img_inpaint
,
init_mask_inpaint
,
steps
:
int
,
sampler_index
:
int
,
mask_blur
:
int
,
mask_alpha
:
float
,
inpainting_fill
:
int
,
restore_faces
:
bool
,
tiling
:
bool
,
n_iter
:
int
,
batch_size
:
int
,
cfg_scale
:
float
,
image_cfg_scale
:
float
,
denoising_strength
:
float
,
seed
:
int
,
subseed
:
int
,
subseed_strength
:
float
,
seed_resize_from_h
:
int
,
seed_resize_from_w
:
int
,
seed_enable_extras
:
bool
,
selected_scale_tab
:
int
,
height
:
int
,
width
:
int
,
scale_by
:
float
,
resize_mode
:
int
,
inpaint_full_res
:
bool
,
inpaint_full_res_padding
:
int
,
inpainting_mask_invert
:
int
,
img2img_batch_input_dir
:
str
,
img2img_batch_output_dir
:
str
,
img2img_batch_inpaint_mask_dir
:
str
,
override_settings_texts
,
enable_k_sched
,
k_sched_type
,
sigma_min
,
sigma_max
,
rho
,
*
args
):
override_settings
=
create_override_settings_dict
(
override_settings_texts
)
override_settings
=
create_override_settings_dict
(
override_settings_texts
)
is_batch
=
mode
==
5
is_batch
=
mode
==
5
...
@@ -156,6 +156,7 @@ def img2img(id_task: str, mode: int, prompt: str, negative_prompt: str, prompt_s
...
@@ -156,6 +156,7 @@ def img2img(id_task: str, mode: int, prompt: str, negative_prompt: str, prompt_s
inpainting_mask_invert
=
inpainting_mask_invert
,
inpainting_mask_invert
=
inpainting_mask_invert
,
override_settings
=
override_settings
,
override_settings
=
override_settings
,
enable_karras
=
enable_k_sched
,
enable_karras
=
enable_k_sched
,
k_sched_type
=
k_sched_type
,
sigma_min
=
sigma_min
,
sigma_min
=
sigma_min
,
sigma_max
=
sigma_max
,
sigma_max
=
sigma_max
,
rho
=
rho
rho
=
rho
...
...
modules/processing.py
View file @
e6269cba
...
@@ -106,7 +106,7 @@ class StableDiffusionProcessing:
...
@@ -106,7 +106,7 @@ class StableDiffusionProcessing:
"""
"""
The first set of paramaters: sd_models -> do_not_reload_embeddings represent the minimum required to create a StableDiffusionProcessing
The first set of paramaters: sd_models -> do_not_reload_embeddings represent the minimum required to create a StableDiffusionProcessing
"""
"""
def
__init__
(
self
,
sd_model
=
None
,
outpath_samples
=
None
,
outpath_grids
=
None
,
prompt
:
str
=
""
,
styles
:
List
[
str
]
=
None
,
seed
:
int
=
-
1
,
subseed
:
int
=
-
1
,
subseed_strength
:
float
=
0
,
seed_resize_from_h
:
int
=
-
1
,
seed_resize_from_w
:
int
=
-
1
,
seed_enable_extras
:
bool
=
True
,
sampler_name
:
str
=
None
,
batch_size
:
int
=
1
,
n_iter
:
int
=
1
,
steps
:
int
=
50
,
cfg_scale
:
float
=
7.0
,
width
:
int
=
512
,
height
:
int
=
512
,
restore_faces
:
bool
=
False
,
tiling
:
bool
=
False
,
do_not_save_samples
:
bool
=
False
,
do_not_save_grid
:
bool
=
False
,
extra_generation_params
:
Dict
[
Any
,
Any
]
=
None
,
overlay_images
:
Any
=
None
,
negative_prompt
:
str
=
None
,
eta
:
float
=
None
,
do_not_reload_embeddings
:
bool
=
False
,
denoising_strength
:
float
=
0
,
ddim_discretize
:
str
=
None
,
s_min_uncond
:
float
=
0.0
,
s_churn
:
float
=
0.0
,
s_tmax
:
float
=
None
,
s_tmin
:
float
=
0.0
,
s_noise
:
float
=
1.0
,
override_settings
:
Dict
[
str
,
Any
]
=
None
,
override_settings_restore_afterwards
:
bool
=
True
,
sampler_index
:
int
=
None
,
script_args
:
list
=
None
,
enable_karras
:
bool
=
False
,
sigma_min
:
float
=
0.1
,
sigma_max
:
float
=
10.0
,
rho
:
float
=
7.0
):
def
__init__
(
self
,
sd_model
=
None
,
outpath_samples
=
None
,
outpath_grids
=
None
,
prompt
:
str
=
""
,
styles
:
List
[
str
]
=
None
,
seed
:
int
=
-
1
,
subseed
:
int
=
-
1
,
subseed_strength
:
float
=
0
,
seed_resize_from_h
:
int
=
-
1
,
seed_resize_from_w
:
int
=
-
1
,
seed_enable_extras
:
bool
=
True
,
sampler_name
:
str
=
None
,
batch_size
:
int
=
1
,
n_iter
:
int
=
1
,
steps
:
int
=
50
,
cfg_scale
:
float
=
7.0
,
width
:
int
=
512
,
height
:
int
=
512
,
restore_faces
:
bool
=
False
,
tiling
:
bool
=
False
,
do_not_save_samples
:
bool
=
False
,
do_not_save_grid
:
bool
=
False
,
extra_generation_params
:
Dict
[
Any
,
Any
]
=
None
,
overlay_images
:
Any
=
None
,
negative_prompt
:
str
=
None
,
eta
:
float
=
None
,
do_not_reload_embeddings
:
bool
=
False
,
denoising_strength
:
float
=
0
,
ddim_discretize
:
str
=
None
,
s_min_uncond
:
float
=
0.0
,
s_churn
:
float
=
0.0
,
s_tmax
:
float
=
None
,
s_tmin
:
float
=
0.0
,
s_noise
:
float
=
1.0
,
override_settings
:
Dict
[
str
,
Any
]
=
None
,
override_settings_restore_afterwards
:
bool
=
True
,
sampler_index
:
int
=
None
,
script_args
:
list
=
None
,
enable_karras
:
bool
=
False
,
k_sched_type
:
str
=
"karras"
,
sigma_min
:
float
=
0.1
,
sigma_max
:
float
=
10.0
,
rho
:
float
=
7.0
):
if
sampler_index
is
not
None
:
if
sampler_index
is
not
None
:
print
(
"sampler_index argument for StableDiffusionProcessing does not do anything; use sampler_name"
,
file
=
sys
.
stderr
)
print
(
"sampler_index argument for StableDiffusionProcessing does not do anything; use sampler_name"
,
file
=
sys
.
stderr
)
...
@@ -147,6 +147,7 @@ class StableDiffusionProcessing:
...
@@ -147,6 +147,7 @@ class StableDiffusionProcessing:
self
.
s_tmax
=
s_tmax
or
float
(
'inf'
)
# not representable as a standard ui option
self
.
s_tmax
=
s_tmax
or
float
(
'inf'
)
# not representable as a standard ui option
self
.
s_noise
=
s_noise
or
opts
.
s_noise
self
.
s_noise
=
s_noise
or
opts
.
s_noise
self
.
enable_karras
=
enable_karras
self
.
enable_karras
=
enable_karras
self
.
k_sched_type
=
k_sched_type
self
.
sigma_max
=
sigma_max
self
.
sigma_max
=
sigma_max
self
.
sigma_min
=
sigma_min
self
.
sigma_min
=
sigma_min
self
.
rho
=
rho
self
.
rho
=
rho
...
@@ -563,6 +564,7 @@ def create_infotext(p, all_prompts, all_seeds, all_subseeds, comments=None, iter
...
@@ -563,6 +564,7 @@ def create_infotext(p, all_prompts, all_seeds, all_subseeds, comments=None, iter
"Steps"
:
p
.
steps
,
"Steps"
:
p
.
steps
,
"Sampler"
:
p
.
sampler_name
,
"Sampler"
:
p
.
sampler_name
,
"Enable Custom Karras Schedule"
:
p
.
enable_karras
,
"Enable Custom Karras Schedule"
:
p
.
enable_karras
,
"Karras Scheduler Type"
:
p
.
k_sched_type
,
"Karras Scheduler sigma_max"
:
p
.
sigma_max
,
"Karras Scheduler sigma_max"
:
p
.
sigma_max
,
"Karras Scheduler sigma_min"
:
p
.
sigma_min
,
"Karras Scheduler sigma_min"
:
p
.
sigma_min
,
"Karras Scheduler rho"
:
p
.
rho
,
"Karras Scheduler rho"
:
p
.
rho
,
...
...
modules/sd_samplers_kdiffusion.py
View file @
e6269cba
...
@@ -44,6 +44,12 @@ sampler_extra_params = {
...
@@ -44,6 +44,12 @@ sampler_extra_params = {
'sample_dpm_2'
:
[
's_churn'
,
's_tmin'
,
's_tmax'
,
's_noise'
],
'sample_dpm_2'
:
[
's_churn'
,
's_tmin'
,
's_tmax'
,
's_noise'
],
}
}
k_diffusion_scheduler
=
{
'karras'
:
k_diffusion
.
sampling
.
get_sigmas_karras
,
'exponential'
:
k_diffusion
.
sampling
.
get_sigmas_exponential
,
'polyexponential'
:
k_diffusion
.
sampling
.
get_sigmas_polyexponential
}
class
CFGDenoiser
(
torch
.
nn
.
Module
):
class
CFGDenoiser
(
torch
.
nn
.
Module
):
"""
"""
...
@@ -305,10 +311,15 @@ class KDiffusionSampler:
...
@@ -305,10 +311,15 @@ class KDiffusionSampler:
if
p
.
sampler_noise_scheduler_override
:
if
p
.
sampler_noise_scheduler_override
:
sigmas
=
p
.
sampler_noise_scheduler_override
(
steps
)
sigmas
=
p
.
sampler_noise_scheduler_override
(
steps
)
elif
p
.
enable_karras
:
elif
p
.
enable_karras
:
sigma_max
=
p
.
sigma_max
print
(
p
.
k_sched_type
,
p
.
sigma_min
,
p
.
sigma_max
,
p
.
rho
)
sigma_min
=
p
.
sigma_min
sigmas_func
=
k_diffusion_scheduler
[
p
.
k_sched_type
]
rho
=
p
.
rho
sigmas_kwargs
=
{
sigmas
=
k_diffusion
.
sampling
.
get_sigmas_karras
(
n
=
steps
,
sigma_min
=
sigma_min
,
sigma_max
=
sigma_max
,
rho
=
rho
,
device
=
shared
.
device
)
'sigma_min'
:
p
.
sigma_min
,
'sigma_max'
:
p
.
sigma_max
}
if
p
.
k_sched_type
!=
'exponential'
:
sigmas_kwargs
[
'rho'
]
=
p
.
rho
sigmas
=
sigmas_func
(
n
=
steps
,
**
sigmas_kwargs
,
device
=
shared
.
device
)
elif
self
.
config
is
not
None
and
self
.
config
.
options
.
get
(
'scheduler'
,
None
)
==
'karras'
:
elif
self
.
config
is
not
None
and
self
.
config
.
options
.
get
(
'scheduler'
,
None
)
==
'karras'
:
sigma_min
,
sigma_max
=
(
0.1
,
10
)
if
opts
.
use_old_karras_scheduler_sigmas
else
(
self
.
model_wrap
.
sigmas
[
0
]
.
item
(),
self
.
model_wrap
.
sigmas
[
-
1
]
.
item
())
sigma_min
,
sigma_max
=
(
0.1
,
10
)
if
opts
.
use_old_karras_scheduler_sigmas
else
(
self
.
model_wrap
.
sigmas
[
0
]
.
item
(),
self
.
model_wrap
.
sigmas
[
-
1
]
.
item
())
...
...
modules/txt2img.py
View file @
e6269cba
...
@@ -7,7 +7,7 @@ from modules.ui import plaintext_to_html
...
@@ -7,7 +7,7 @@ from modules.ui import plaintext_to_html
def
txt2img
(
id_task
:
str
,
prompt
:
str
,
negative_prompt
:
str
,
prompt_styles
,
steps
:
int
,
sampler_index
:
int
,
restore_faces
:
bool
,
tiling
:
bool
,
n_iter
:
int
,
batch_size
:
int
,
cfg_scale
:
float
,
seed
:
int
,
subseed
:
int
,
subseed_strength
:
float
,
seed_resize_from_h
:
int
,
seed_resize_from_w
:
int
,
seed_enable_extras
:
bool
,
height
:
int
,
width
:
int
,
enable_hr
:
bool
,
denoising_strength
:
float
,
hr_scale
:
float
,
hr_upscaler
:
str
,
hr_second_pass_steps
:
int
,
hr_resize_x
:
int
,
hr_resize_y
:
int
,
hr_sampler_index
:
int
,
hr_prompt
:
str
,
hr_negative_prompt
,
override_settings_texts
,
enable_k_sched
,
sigma_min
,
sigma_max
,
rho
,
*
args
):
def
txt2img
(
id_task
:
str
,
prompt
:
str
,
negative_prompt
:
str
,
prompt_styles
,
steps
:
int
,
sampler_index
:
int
,
restore_faces
:
bool
,
tiling
:
bool
,
n_iter
:
int
,
batch_size
:
int
,
cfg_scale
:
float
,
seed
:
int
,
subseed
:
int
,
subseed_strength
:
float
,
seed_resize_from_h
:
int
,
seed_resize_from_w
:
int
,
seed_enable_extras
:
bool
,
height
:
int
,
width
:
int
,
enable_hr
:
bool
,
denoising_strength
:
float
,
hr_scale
:
float
,
hr_upscaler
:
str
,
hr_second_pass_steps
:
int
,
hr_resize_x
:
int
,
hr_resize_y
:
int
,
hr_sampler_index
:
int
,
hr_prompt
:
str
,
hr_negative_prompt
,
override_settings_texts
,
enable_k_sched
,
k_sched_type
,
sigma_min
,
sigma_max
,
rho
,
*
args
):
override_settings
=
create_override_settings_dict
(
override_settings_texts
)
override_settings
=
create_override_settings_dict
(
override_settings_texts
)
p
=
processing
.
StableDiffusionProcessingTxt2Img
(
p
=
processing
.
StableDiffusionProcessingTxt2Img
(
...
@@ -44,6 +44,7 @@ def txt2img(id_task: str, prompt: str, negative_prompt: str, prompt_styles, step
...
@@ -44,6 +44,7 @@ def txt2img(id_task: str, prompt: str, negative_prompt: str, prompt_styles, step
hr_negative_prompt
=
hr_negative_prompt
,
hr_negative_prompt
=
hr_negative_prompt
,
override_settings
=
override_settings
,
override_settings
=
override_settings
,
enable_karras
=
enable_k_sched
,
enable_karras
=
enable_k_sched
,
k_sched_type
=
k_sched_type
,
sigma_min
=
sigma_min
,
sigma_min
=
sigma_min
,
sigma_max
=
sigma_max
,
sigma_max
=
sigma_max
,
rho
=
rho
rho
=
rho
...
...
modules/ui.py
View file @
e6269cba
...
@@ -514,9 +514,10 @@ def create_ui():
...
@@ -514,9 +514,10 @@ def create_ui():
elif
category
==
"karras_scheduler"
:
elif
category
==
"karras_scheduler"
:
with
FormGroup
(
visible
=
False
,
elem_id
=
"txt2img_karras_scheduler"
)
as
t2i_k_sched_options
:
with
FormGroup
(
visible
=
False
,
elem_id
=
"txt2img_karras_scheduler"
)
as
t2i_k_sched_options
:
with
FormRow
(
elem_id
=
"txt2img_karras_scheduler_row1"
,
variant
=
"compact"
):
with
FormRow
(
elem_id
=
"txt2img_karras_scheduler_row1"
,
variant
=
"compact"
):
t2i_k_sched_sigma_max
=
gr
.
Slider
(
minimum
=
0.0
,
maximum
=
0.5
,
step
=
0.05
,
label
=
'sigma min'
,
value
=
0.1
,
elem_id
=
"txt2img_sigma_min"
)
t2i_k_sched_type
=
gr
.
Dropdown
(
label
=
"Type"
,
elem_id
=
"t2i_k_sched_type"
,
choices
=
[
'karras'
,
'exponential'
,
'polyexponential'
],
value
=
'karras'
)
t2i_k_sched_sigma_min
=
gr
.
Slider
(
minimum
=
5.0
,
maximum
=
50.0
,
step
=
0.1
,
label
=
'sigma max'
,
value
=
10.0
,
elem_id
=
"txt2img_sigma_max"
)
t2i_k_sched_sigma_min
=
gr
.
Slider
(
minimum
=
0.0
,
maximum
=
0.5
,
step
=
0.05
,
label
=
'sigma min'
,
value
=
0.1
,
elem_id
=
"txt2img_sigma_min"
)
t2i_k_sched_rho
=
gr
.
Slider
(
minimum
=
3.0
,
maximum
=
10.0
,
step
=
0.5
,
label
=
'rho'
,
value
=
7.0
,
elem_id
=
"txt2img_rho"
)
t2i_k_sched_sigma_max
=
gr
.
Slider
(
minimum
=
5.0
,
maximum
=
50.0
,
step
=
0.1
,
label
=
'sigma max'
,
value
=
10.0
,
elem_id
=
"txt2img_sigma_max"
)
t2i_k_sched_rho
=
gr
.
Slider
(
minimum
=
0.5
,
maximum
=
10.0
,
step
=
0.1
,
label
=
'rho'
,
value
=
7.0
,
elem_id
=
"txt2img_rho"
)
elif
category
==
"batch"
:
elif
category
==
"batch"
:
if
not
opts
.
dimensions_and_batch_together
:
if
not
opts
.
dimensions_and_batch_together
:
...
@@ -587,8 +588,9 @@ def create_ui():
...
@@ -587,8 +588,9 @@ def create_ui():
hr_negative_prompt
,
hr_negative_prompt
,
override_settings
,
override_settings
,
t2i_enable_k_sched
,
t2i_enable_k_sched
,
t2i_k_sched_
sigma_max
,
t2i_k_sched_
type
,
t2i_k_sched_sigma_min
,
t2i_k_sched_sigma_min
,
t2i_k_sched_sigma_max
,
t2i_k_sched_rho
t2i_k_sched_rho
]
+
custom_inputs
,
]
+
custom_inputs
,
...
@@ -674,7 +676,8 @@ def create_ui():
...
@@ -674,7 +676,8 @@ def create_ui():
(
hr_prompt
,
"Hires prompt"
),
(
hr_prompt
,
"Hires prompt"
),
(
hr_negative_prompt
,
"Hires negative prompt"
),
(
hr_negative_prompt
,
"Hires negative prompt"
),
(
hr_prompts_container
,
lambda
d
:
gr
.
update
(
visible
=
True
)
if
d
.
get
(
"Hires prompt"
,
""
)
!=
""
or
d
.
get
(
"Hires negative prompt"
,
""
)
!=
""
else
gr
.
update
()),
(
hr_prompts_container
,
lambda
d
:
gr
.
update
(
visible
=
True
)
if
d
.
get
(
"Hires prompt"
,
""
)
!=
""
or
d
.
get
(
"Hires negative prompt"
,
""
)
!=
""
else
gr
.
update
()),
(
t2i_enable_k_sched
,
"Enable CustomKarras Schedule"
),
(
t2i_enable_k_sched
,
"Enable Custom Karras Schedule"
),
(
t2i_k_sched_type
,
"Karras Scheduler Type"
),
(
t2i_k_sched_sigma_max
,
"Karras Scheduler sigma_max"
),
(
t2i_k_sched_sigma_max
,
"Karras Scheduler sigma_max"
),
(
t2i_k_sched_sigma_min
,
"Karras Scheduler sigma_min"
),
(
t2i_k_sched_sigma_min
,
"Karras Scheduler sigma_min"
),
(
t2i_k_sched_rho
,
"Karras Scheduler rho"
),
(
t2i_k_sched_rho
,
"Karras Scheduler rho"
),
...
@@ -874,9 +877,10 @@ def create_ui():
...
@@ -874,9 +877,10 @@ def create_ui():
elif
category
==
"karras_scheduler"
:
elif
category
==
"karras_scheduler"
:
with
FormGroup
(
visible
=
False
,
elem_id
=
"img2img_karras_scheduler"
)
as
i2i_k_sched_options
:
with
FormGroup
(
visible
=
False
,
elem_id
=
"img2img_karras_scheduler"
)
as
i2i_k_sched_options
:
with
FormRow
(
elem_id
=
"img2img_karras_scheduler_row1"
,
variant
=
"compact"
):
with
FormRow
(
elem_id
=
"img2img_karras_scheduler_row1"
,
variant
=
"compact"
):
i2i_k_sched_sigma_max
=
gr
.
Slider
(
minimum
=
0.0
,
maximum
=
0.5
,
step
=
0.05
,
label
=
'sigma min'
,
value
=
0.1
,
elem_id
=
"txt2img_sigma_min"
)
i2i_k_sched_type
=
gr
.
Dropdown
(
label
=
"Type"
,
elem_id
=
"t2i_k_sched_type"
,
choices
=
[
'karras'
,
'exponential'
,
'polyexponential'
],
value
=
'karras'
)
i2i_k_sched_sigma_min
=
gr
.
Slider
(
minimum
=
5.0
,
maximum
=
50.0
,
step
=
0.1
,
label
=
'sigma max'
,
value
=
10.0
,
elem_id
=
"txt2img_sigma_max"
)
i2i_k_sched_sigma_min
=
gr
.
Slider
(
minimum
=
0.0
,
maximum
=
0.5
,
step
=
0.05
,
label
=
'sigma min'
,
value
=
0.1
,
elem_id
=
"txt2img_sigma_min"
)
i2i_k_sched_rho
=
gr
.
Slider
(
minimum
=
3.0
,
maximum
=
10.0
,
step
=
0.5
,
label
=
'rho'
,
value
=
7.0
,
elem_id
=
"txt2img_rho"
)
i2i_k_sched_sigma_max
=
gr
.
Slider
(
minimum
=
5.0
,
maximum
=
50.0
,
step
=
0.1
,
label
=
'sigma max'
,
value
=
10.0
,
elem_id
=
"txt2img_sigma_max"
)
i2i_k_sched_rho
=
gr
.
Slider
(
minimum
=
0.5
,
maximum
=
10.0
,
step
=
0.1
,
label
=
'rho'
,
value
=
7.0
,
elem_id
=
"txt2img_rho"
)
elif
category
==
"batch"
:
elif
category
==
"batch"
:
if
not
opts
.
dimensions_and_batch_together
:
if
not
opts
.
dimensions_and_batch_together
:
...
@@ -981,8 +985,9 @@ def create_ui():
...
@@ -981,8 +985,9 @@ def create_ui():
img2img_batch_inpaint_mask_dir
,
img2img_batch_inpaint_mask_dir
,
override_settings
,
override_settings
,
i2i_enable_k_sched
,
i2i_enable_k_sched
,
i2i_k_sched_
sigma_max
,
i2i_k_sched_
type
,
i2i_k_sched_sigma_min
,
i2i_k_sched_sigma_min
,
i2i_k_sched_sigma_max
,
i2i_k_sched_rho
i2i_k_sched_rho
]
+
custom_inputs
,
]
+
custom_inputs
,
outputs
=
[
outputs
=
[
...
@@ -1085,7 +1090,8 @@ def create_ui():
...
@@ -1085,7 +1090,8 @@ def create_ui():
(
steps
,
"Steps"
),
(
steps
,
"Steps"
),
(
sampler_index
,
"Sampler"
),
(
sampler_index
,
"Sampler"
),
(
restore_faces
,
"Face restoration"
),
(
restore_faces
,
"Face restoration"
),
(
i2i_enable_k_sched
,
"Enable Karras Schedule"
),
(
i2i_enable_k_sched
,
"Enable Custom Karras Schedule"
),
(
i2i_k_sched_type
,
"Karras Scheduler Type"
),
(
i2i_k_sched_sigma_max
,
"Karras Scheduler sigma_max"
),
(
i2i_k_sched_sigma_max
,
"Karras Scheduler sigma_max"
),
(
i2i_k_sched_sigma_min
,
"Karras Scheduler sigma_min"
),
(
i2i_k_sched_sigma_min
,
"Karras Scheduler sigma_min"
),
(
i2i_k_sched_rho
,
"Karras Scheduler rho"
),
(
i2i_k_sched_rho
,
"Karras Scheduler rho"
),
...
...
scripts/xyz_grid.py
View file @
e6269cba
...
@@ -10,7 +10,7 @@ import numpy as np
...
@@ -10,7 +10,7 @@ import numpy as np
import
modules.scripts
as
scripts
import
modules.scripts
as
scripts
import
gradio
as
gr
import
gradio
as
gr
from
modules
import
images
,
sd_samplers
,
processing
,
sd_models
,
sd_vae
from
modules
import
images
,
sd_samplers
,
processing
,
sd_models
,
sd_vae
,
sd_samplers_kdiffusion
from
modules.processing
import
process_images
,
Processed
,
StableDiffusionProcessingTxt2Img
from
modules.processing
import
process_images
,
Processed
,
StableDiffusionProcessingTxt2Img
from
modules.shared
import
opts
,
state
from
modules.shared
import
opts
,
state
import
modules.shared
as
shared
import
modules.shared
as
shared
...
@@ -220,6 +220,7 @@ axis_options = [
...
@@ -220,6 +220,7 @@ axis_options = [
AxisOption
(
"Sigma min"
,
float
,
apply_field
(
"s_tmin"
)),
AxisOption
(
"Sigma min"
,
float
,
apply_field
(
"s_tmin"
)),
AxisOption
(
"Sigma max"
,
float
,
apply_field
(
"s_tmax"
)),
AxisOption
(
"Sigma max"
,
float
,
apply_field
(
"s_tmax"
)),
AxisOption
(
"Sigma noise"
,
float
,
apply_field
(
"s_noise"
)),
AxisOption
(
"Sigma noise"
,
float
,
apply_field
(
"s_noise"
)),
AxisOption
(
"Karras Scheduler Type"
,
str
,
apply_field
(
"k_sched_type"
),
choices
=
lambda
:
[
x
for
x
in
sd_samplers_kdiffusion
.
k_diffusion_scheduler
]),
AxisOption
(
"Karras Scheduler Sigma Min"
,
float
,
apply_field
(
"sigma_min"
)),
AxisOption
(
"Karras Scheduler Sigma Min"
,
float
,
apply_field
(
"sigma_min"
)),
AxisOption
(
"Karras Scheduler Sigma Max"
,
float
,
apply_field
(
"sigma_max"
)),
AxisOption
(
"Karras Scheduler Sigma Max"
,
float
,
apply_field
(
"sigma_max"
)),
AxisOption
(
"Karras Scheduler rho"
,
float
,
apply_field
(
"rho"
)),
AxisOption
(
"Karras Scheduler rho"
,
float
,
apply_field
(
"rho"
)),
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment