Update app.py
Browse files
app.py
CHANGED
@@ -203,16 +203,26 @@ def update_model_info(model_name):
|
|
203 |
"""
|
204 |
return "<p>Model information not available</p>"
|
205 |
|
206 |
-
def
|
207 |
-
"""
|
208 |
for cat in MODELS:
|
209 |
if cat["category"] == category:
|
210 |
model_names = [model[0] for model in cat["models"]]
|
211 |
if model_names:
|
212 |
-
# Return
|
213 |
-
return
|
214 |
-
|
215 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
216 |
|
217 |
def encode_image_to_base64(image_path):
|
218 |
"""Encode an image file to base64 string"""
|
@@ -718,12 +728,14 @@ def create_app():
|
|
718 |
value=MODELS[0]["category"]
|
719 |
)
|
720 |
|
721 |
-
|
722 |
-
|
723 |
-
|
724 |
-
|
725 |
-
|
726 |
-
|
|
|
|
|
727 |
|
728 |
with gr.Accordion("Generation Parameters", open=False):
|
729 |
with gr.Group(elem_classes="parameter-grid"):
|
@@ -917,10 +929,9 @@ def create_app():
|
|
917 |
|
918 |
# Update model list when category changes
|
919 |
model_categories.change(
|
920 |
-
fn=
|
921 |
inputs=model_categories,
|
922 |
-
|
923 |
-
outputs=[category_models, category_models]
|
924 |
)
|
925 |
|
926 |
# Update main model choice when category model is selected
|
|
|
203 |
"""
|
204 |
return "<p>Model information not available</p>"
|
205 |
|
206 |
+
def update_category_models_ui(category):
|
207 |
+
"""Completely regenerate the models dropdown based on selected category"""
|
208 |
for cat in MODELS:
|
209 |
if cat["category"] == category:
|
210 |
model_names = [model[0] for model in cat["models"]]
|
211 |
if model_names:
|
212 |
+
# Return a completely new dropdown component
|
213 |
+
return gr.Dropdown(
|
214 |
+
choices=model_names,
|
215 |
+
value=model_names[0],
|
216 |
+
label="Models in Category",
|
217 |
+
allow_custom_value=True
|
218 |
+
)
|
219 |
+
# Return empty dropdown if no models found
|
220 |
+
return gr.Dropdown(
|
221 |
+
choices=[],
|
222 |
+
value=None,
|
223 |
+
label="Models in Category",
|
224 |
+
allow_custom_value=True
|
225 |
+
)
|
226 |
|
227 |
def encode_image_to_base64(image_path):
|
228 |
"""Encode an image file to base64 string"""
|
|
|
728 |
value=MODELS[0]["category"]
|
729 |
)
|
730 |
|
731 |
+
# Create a container for the category models dropdown
|
732 |
+
with gr.Column(visible=True, elem_id="category-models-container") as category_models_container:
|
733 |
+
category_models = gr.Dropdown(
|
734 |
+
[model[0] for model in MODELS[0]["models"]],
|
735 |
+
label="Models in Category",
|
736 |
+
value=MODELS[0]["models"][0][0],
|
737 |
+
allow_custom_value=True
|
738 |
+
)
|
739 |
|
740 |
with gr.Accordion("Generation Parameters", open=False):
|
741 |
with gr.Group(elem_classes="parameter-grid"):
|
|
|
929 |
|
930 |
# Update model list when category changes
|
931 |
model_categories.change(
|
932 |
+
fn=update_category_models_ui,
|
933 |
inputs=model_categories,
|
934 |
+
outputs=category_models_container
|
|
|
935 |
)
|
936 |
|
937 |
# Update main model choice when category model is selected
|