121 lines
3.6 KiB
Python
121 lines
3.6 KiB
Python
"""
|
|
API utils
|
|
"""
|
|
from apis.models.base import UpscaleOrVaryMethod
|
|
|
|
def params_to_params(req: object) -> list:
|
|
"""
|
|
Convert params to params string
|
|
"""
|
|
uov_method = req.uov_method.value
|
|
if req.uov_method == UpscaleOrVaryMethod.upscale_custom:
|
|
uov_method = f"Upscale ({req.upscale_multiple}x)"
|
|
params = [
|
|
req.generate_image_grid,
|
|
req.prompt,
|
|
req.negative_prompt,
|
|
req.style_selections,
|
|
req.performance_selection.value,
|
|
req.aspect_ratios_selection,
|
|
req.image_number,
|
|
req.output_format,
|
|
req.image_seed,
|
|
req.read_wildcards_in_order,
|
|
req.sharpness,
|
|
req.guidance_scale,
|
|
req.base_model_name,
|
|
req.refiner_model_name,
|
|
req.refiner_switch
|
|
]
|
|
params.extend(req.loras)
|
|
params.extend([
|
|
req.input_image_checkbox,
|
|
req.current_tab,
|
|
uov_method,
|
|
req.uov_input_image,
|
|
req.outpaint_selections,
|
|
req.inpaint_input_image,
|
|
req.inpaint_additional_prompt,
|
|
req.inpaint_mask_image_upload,
|
|
|
|
req.disable_preview,
|
|
req.disable_intermediate_results,
|
|
req.disable_seed_increment,
|
|
req.black_out_nsfw,
|
|
req.adm_scaler_positive,
|
|
req.adm_scaler_negative,
|
|
req.adm_scaler_end,
|
|
req.adaptive_cfg,
|
|
req.clip_skip,
|
|
req.sampler_name,
|
|
req.scheduler_name,
|
|
req.vae_name,
|
|
req.overwrite_step,
|
|
req.overwrite_switch,
|
|
req.overwrite_width,
|
|
req.overwrite_height,
|
|
req.overwrite_vary_strength,
|
|
req.overwrite_upscale_strength,
|
|
req.mixing_image_prompt_and_vary_upscale,
|
|
req.mixing_image_prompt_and_inpaint,
|
|
req.debugging_cn_preprocessor,
|
|
req.skipping_cn_preprocessor,
|
|
req.canny_low_threshold,
|
|
req.canny_high_threshold,
|
|
req.refiner_swap_method,
|
|
req.controlnet_softness,
|
|
req.freeu_enabled,
|
|
req.freeu_b1,
|
|
req.freeu_b2,
|
|
req.freeu_s1,
|
|
req.freeu_s2,
|
|
req.debugging_inpaint_preprocessor,
|
|
req.inpaint_disable_initial_latent,
|
|
req.inpaint_engine,
|
|
req.inpaint_strength,
|
|
req.inpaint_respective_field,
|
|
req.inpaint_advanced_masking_checkbox,
|
|
req.invert_mask_checkbox,
|
|
req.inpaint_erode_or_dilate,
|
|
req.save_final_enhanced_image_only,
|
|
|
|
req.save_metadata_to_images,
|
|
req.metadata_scheme.value,
|
|
])
|
|
params.extend(req.controlnet_image)
|
|
params.extend([
|
|
req.debugging_dino,
|
|
req.dino_erode_or_dilate,
|
|
req.debugging_enhance_masks_checkbox,
|
|
req.enhance_input_image,
|
|
req.enhance_checkbox,
|
|
req.enhance_uov_method.value,
|
|
req.enhance_uov_processing_order,
|
|
req.enhance_uov_prompt_type
|
|
])
|
|
|
|
enhance_ctrls = []
|
|
for ec in req.enhance_ctrls:
|
|
enhance_ctrls.extend([
|
|
ec.enhance_enabled,
|
|
ec.enhance_mask_dino_prompt,
|
|
ec.enhance_prompt,
|
|
ec.enhance_negative_prompt,
|
|
ec.enhance_mask_model.value,
|
|
ec.enhance_mask_cloth_category,
|
|
ec.enhance_mask_sam_model,
|
|
ec.enhance_mask_text_threshold,
|
|
ec.enhance_mask_box_threshold,
|
|
ec.enhance_mask_sam_max_detections,
|
|
ec.enhance_inpaint_disable_initial_latent,
|
|
ec.enhance_inpaint_engine,
|
|
ec.enhance_inpaint_strength,
|
|
ec.enhance_inpaint_respective_field,
|
|
ec.enhance_inpaint_erode_or_dilate,
|
|
ec.enhance_mask_invert])
|
|
req.enhance_ctrls = enhance_ctrls
|
|
|
|
params.extend(req.enhance_ctrls)
|
|
params.append(req.outpaint_distance)
|
|
return params
|