"Images filename pattern":"Use following tags to define how filenames for images are chosen: [steps], [cfg], [prompt], [prompt_spaces], [width], [height], [sampler], [seed], [model_hash], [prompt_words], [date]; leave empty for default.",
"Directory name pattern":"Use following tags to define how subdirectories for images and grids are chosen: [steps], [cfg], [prompt], [prompt_spaces], [width], [height], [sampler], [seed], [model_hash], [prompt_words], [date]; leave empty for default.",
"Max prompt words":"Set the maximum number of words to be used in the [prompt_words] option; ATTENTION: If the words are too long, they may exceed the maximum length of the file path that the system can handle",
"Loopback":"Process an image, use it as an input, repeat.",
"Loops":"How many times to repeat processing an image and using it as input for the next iteration",
"grid_save":OptionInfo(True,"Always save all generated image grids"),
"return_grid":OptionInfo(True,"Show grid in results for web"),
"grid_format":OptionInfo('png','File format for grids'),
"grid_extended_filename":OptionInfo(False,"Add extended info (seed, prompt) to filename when saving grid"),
"grid_only_if_multiple":OptionInfo(True,"Do not save grids consisting of one picture"),
"n_rows":OptionInfo(-1,"Grid row count; use -1 for autodetect and 0 for it to be same as batch size",gr.Slider,{"minimum":-1,"maximum":16,"step":1}),
"jpeg_quality":OptionInfo(80,"Quality for saved jpeg images",gr.Slider,{"minimum":1,"maximum":100,"step":1}),
"export_for_4chan":OptionInfo(True,"If PNG image is larger than 4MB or any dimension is larger than 4000, downscale and save copy as JPG"),
"enable_pnginfo":OptionInfo(True,"Save text information about generation parameters as chunks to png files"),
"add_model_hash_to_info":OptionInfo(False,"Add model hash to generation information"),
"img2img_color_correction":OptionInfo(False,"Apply color correction to img2img results to match original colors."),
"save_images_before_color_correction":OptionInfo(False,"Save a copy of image before applying color correction to img2img results"),
"img2img_fix_steps":OptionInfo(False,"With img2img, do exactly the amount of steps the slider specifies (normally you'd do less with less denoising)."),
"enable_quantization":OptionInfo(False,"Enable quantization in K samplers for sharper and cleaner results. This may change existing seeds. Requires restart to apply."),
"font":OptionInfo("","Font for image grids that have text"),
"enable_emphasis":OptionInfo(True,"Use (text) to make model pay more attention to text and [text] to make it pay less attention"),
"enable_batch_seeds":OptionInfo(True,"Make K-diffusion samplers produce same images in a batch as when making a single image"),
"save_txt":OptionInfo(False,"Create a text file next to every image with generation parameters."),
"save_images_before_face_restoration":OptionInfo(False,"Save a copy of image before doing face restoration."),
"jpeg_quality":OptionInfo(80,"Quality for saved jpeg images",gr.Slider,{"minimum":1,"maximum":100,"step":1}),
"export_for_4chan":OptionInfo(True,"If PNG image is larger than 4MB or any dimension is larger than 4000, downscale and save copy as JPG"),
"use_original_name_batch":OptionInfo(False,"Use original name for output filename during batch process in extras tab"),
}))
options_templates.update(options_section(('saving-paths',"Paths for saving"),{
"outdir_samples":OptionInfo("","Output directory for images; if empty, defaults to three directories below",component_args=hide_dirs),
"outdir_txt2img_samples":OptionInfo("outputs/txt2img-images",'Output directory for txt2img images',component_args=hide_dirs),
"outdir_img2img_samples":OptionInfo("outputs/img2img-images",'Output directory for img2img images',component_args=hide_dirs),
"outdir_extras_samples":OptionInfo("outputs/extras-images",'Output directory for images from extras tab',component_args=hide_dirs),
"outdir_grids":OptionInfo("","Output directory for grids; if empty, defaults to two directories below",component_args=hide_dirs),
"outdir_txt2img_grids":OptionInfo("outputs/txt2img-grids",'Output directory for txt2img grids',component_args=hide_dirs),
"outdir_img2img_grids":OptionInfo("outputs/img2img-grids",'Output directory for img2img grids',component_args=hide_dirs),
"outdir_save":OptionInfo("log/images","Directory for saving images using the Save button",component_args=hide_dirs),
}))
options_templates.update(options_section(('saving-to-dirs',"Saving to a directory"),{
"save_to_dirs":OptionInfo(False,"Save images to a subdirectory"),
"grid_save_to_dirs":OptionInfo(False,"Save grids to subdirectory"),
"directories_filename_pattern":OptionInfo("","Directory name pattern"),
"ESRGAN_tile":OptionInfo(192,"Tile size for ESRGAN upscalers. 0 = no tiling.",gr.Slider,{"minimum":0,"maximum":512,"step":16}),
"ESRGAN_tile_overlap":OptionInfo(8,"Tile overlap, in pixels for ESRGAN upscalers. Low values = visible seam.",gr.Slider,{"minimum":0,"maximum":48,"step":1}),
"realesrgan_enabled_models":OptionInfo(["Real-ESRGAN 4x plus","Real-ESRGAN 4x plus anime 6B"],"Select which RealESRGAN models to show in the web UI. (Requires restart)",gr.CheckboxGroup,lambda:{"choices":realesrgan_models_names()}),
"SWIN_tile":OptionInfo(192,"Tile size for all SwinIR.",gr.Slider,{"minimum":16,"maximum":512,"step":16}),
"SWIN_tile_overlap":OptionInfo(8,"Tile overlap, in pixels for SwinIR. Low values = visible seam.",gr.Slider,{"minimum":0,"maximum":48,"step":1}),
"random_artist_categories":OptionInfo([],"Allowed categories for random artists selection when using the Roll button",gr.CheckboxGroup,{"choices":artist_db.categories()}),
"show_progress_every_n_steps":OptionInfo(0,"Show show image creation progress every N sampling steps. Set 0 to disable.",gr.Slider,{"minimum":0,"maximum":32,"step":1}),
"multiple_tqdm":OptionInfo(True,"Add a second progress bar to the console that shows progress for an entire job. Broken in PyCharm console."),
"memmon_poll_rate":OptionInfo(8,"VRAM usage polls per second during generation. Set to 0 to disable.",gr.Slider,{"minimum":0,"maximum":40,"step":1}),
"img2img_color_correction":OptionInfo(False,"Apply color correction to img2img results to match original colors."),
"save_images_before_color_correction":OptionInfo(False,"Save a copy of image before applying color correction to img2img results"),
"img2img_fix_steps":OptionInfo(False,"With img2img, do exactly the amount of steps the slider specifies (normally you'd do less with less denoising)."),
"enable_quantization":OptionInfo(False,"Enable quantization in K samplers for sharper and cleaner results. This may change existing seeds. Requires restart to apply."),
"enable_emphasis":OptionInfo(True,"Use (text) to make model pay more attention to text and [text] to make it pay less attention"),
"enable_batch_seeds":OptionInfo(True,"Make K-diffusion samplers produce same images in a batch as when making a single image"),
"random_artist_categories":OptionInfo([],"Allowed categories for random artists selection when using the Roll button",gr.CheckboxGroup,{"choices":artist_db.categories()}),
"show_progress_every_n_steps":OptionInfo(0,"Show show image creation progress every N sampling steps. Set 0 to disable.",gr.Slider,{"minimum":0,"maximum":32,"step":1}),
"return_grid":OptionInfo(True,"Show grid in results for web"),
"add_model_hash_to_info":OptionInfo(True,"Add model hash to generation information"),
"font":OptionInfo("","Font for image grids that have text"),
"js_modal_lightbox":OptionInfo(True,"Enable full page image viewer"),
"js_modal_lightbox_initialy_zoomed":OptionInfo(True,"Show images zoomed in by default in full page image viewer"),
"use_original_name_batch":OptionInfo(False,"Use original name for output filename during batch process"),