| from app_settings import AppSettings |
| from typing import Any |
| import gradio as gr |
| from constants import LCM_DEFAULT_MODEL, LCM_DEFAULT_MODEL_OPENVINO |
| from state import get_settings |
| from frontend.utils import get_valid_model_id |
|
|
| app_settings = get_settings() |
| app_settings.settings.lcm_diffusion_setting.openvino_lcm_model_id = get_valid_model_id( |
| app_settings.openvino_lcm_models, |
| app_settings.settings.lcm_diffusion_setting.openvino_lcm_model_id, |
| ) |
|
|
|
|
| def change_lcm_model_id(model_id): |
| app_settings.settings.lcm_diffusion_setting.lcm_model_id = model_id |
|
|
|
|
| def change_lcm_lora_model_id(model_id): |
| app_settings.settings.lcm_diffusion_setting.lcm_lora.lcm_lora_id = model_id |
|
|
|
|
| def change_lcm_lora_base_model_id(model_id): |
| app_settings.settings.lcm_diffusion_setting.lcm_lora.base_model_id = model_id |
|
|
|
|
| def change_openvino_lcm_model_id(model_id): |
| app_settings.settings.lcm_diffusion_setting.openvino_lcm_model_id = model_id |
|
|
|
|
| def get_models_ui() -> None: |
| with gr.Blocks(): |
| with gr.Row(): |
| lcm_model_id = gr.Dropdown( |
| app_settings.lcm_models, |
| label="LCM model", |
| info="Diffusers LCM model ID", |
| value=get_valid_model_id( |
| app_settings.lcm_models, |
| app_settings.settings.lcm_diffusion_setting.lcm_model_id, |
| LCM_DEFAULT_MODEL, |
| ), |
| interactive=True, |
| ) |
| with gr.Row(): |
| lcm_lora_model_id = gr.Dropdown( |
| app_settings.lcm_lora_models, |
| label="LCM LoRA model", |
| info="Diffusers LCM LoRA model ID", |
| value=get_valid_model_id( |
| app_settings.lcm_lora_models, |
| app_settings.settings.lcm_diffusion_setting.lcm_lora.lcm_lora_id, |
| ), |
| interactive=True, |
| ) |
| lcm_lora_base_model_id = gr.Dropdown( |
| app_settings.stable_diffsuion_models, |
| label="LCM LoRA base model", |
| info="Diffusers LCM LoRA base model ID", |
| value=get_valid_model_id( |
| app_settings.stable_diffsuion_models, |
| app_settings.settings.lcm_diffusion_setting.lcm_lora.base_model_id, |
| ), |
| interactive=True, |
| ) |
| with gr.Row(): |
| lcm_openvino_model_id = gr.Dropdown( |
| app_settings.openvino_lcm_models, |
| label="LCM OpenVINO model", |
| info="OpenVINO LCM-LoRA fused model ID", |
| value=get_valid_model_id( |
| app_settings.openvino_lcm_models, |
| app_settings.settings.lcm_diffusion_setting.openvino_lcm_model_id, |
| ), |
| interactive=True, |
| ) |
|
|
| lcm_model_id.change(change_lcm_model_id, lcm_model_id) |
| lcm_lora_model_id.change(change_lcm_lora_model_id, lcm_lora_model_id) |
| lcm_lora_base_model_id.change( |
| change_lcm_lora_base_model_id, lcm_lora_base_model_id |
| ) |
| lcm_openvino_model_id.change( |
| change_openvino_lcm_model_id, lcm_openvino_model_id |
| ) |
|
|