Update app.py
Browse files
app.py
CHANGED
@@ -1,4 +1,3 @@
|
|
1 |
-
# app.py
|
2 |
import gradio as gr
|
3 |
from functions import (
|
4 |
cargar_modalidades_tareas,
|
@@ -6,31 +5,46 @@ from functions import (
|
|
6 |
buscar_datasets,
|
7 |
generar_dataset,
|
8 |
generar_encabezado,
|
9 |
-
actualizar_modalidades_tareas_desde_huggingface
|
10 |
)
|
11 |
|
12 |
-
|
|
|
13 |
|
14 |
-
# Cargar
|
15 |
-
|
16 |
-
|
17 |
-
except json.JSONDecodeError:
|
18 |
-
# Si el JSON est谩 corrupto, actualizar desde HuggingFace <button class="citation-flag" data-index="1">
|
19 |
-
actualizar_modalidades_tareas_desde_huggingface()
|
20 |
-
MODALIDAD_TAREAS = cargar_modalidades_tareas()
|
21 |
|
22 |
with gr.Blocks() as demo:
|
23 |
gr.Markdown("# Dise帽ador de Modelos de Redes Neuronales y Generador de Datasets Multimodales")
|
24 |
-
|
25 |
-
#
|
26 |
with gr.Row():
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
inputs=[],
|
32 |
-
outputs=mensaje_actualizacion
|
33 |
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
34 |
|
35 |
# Panel 1: Seleccionar Tareas
|
36 |
with gr.Row():
|
|
|
|
|
1 |
import gradio as gr
|
2 |
from functions import (
|
3 |
cargar_modalidades_tareas,
|
|
|
5 |
buscar_datasets,
|
6 |
generar_dataset,
|
7 |
generar_encabezado,
|
8 |
+
actualizar_modalidades_tareas_desde_huggingface
|
9 |
)
|
10 |
|
11 |
+
# Estado para almacenar las tareas disponibles
|
12 |
+
tareas_disponibles_state = gr.State([])
|
13 |
|
14 |
+
# Cargar inicialmente las tareas
|
15 |
+
MODALIDAD_TAREAS = cargar_modalidades_tareas()
|
16 |
+
tareas_iniciales = [t for datos in MODALIDAD_TAREAS.values() for t in datos["tareas"].keys()]
|
|
|
|
|
|
|
|
|
17 |
|
18 |
with gr.Blocks() as demo:
|
19 |
gr.Markdown("# Dise帽ador de Modelos de Redes Neuronales y Generador de Datasets Multimodales")
|
20 |
+
|
21 |
+
# Panel 1: Tareas Disponibles (ahora vinculado al State)
|
22 |
with gr.Row():
|
23 |
+
tareas_disponibles = gr.CheckboxGroup(
|
24 |
+
choices=tareas_iniciales,
|
25 |
+
label="Tareas Disponibles",
|
26 |
+
interactive=True
|
|
|
|
|
27 |
)
|
28 |
+
tareas_disponibles_state.value = tareas_iniciales # Inicializar State
|
29 |
+
|
30 |
+
# Panel 2: Bot贸n de Actualizaci贸n
|
31 |
+
with gr.Row():
|
32 |
+
btn_actualizar_json = gr.Button("Actualizar Modalidades desde HuggingFace")
|
33 |
+
mensaje_actualizacion = gr.Textbox(label="Estado", interactive=False)
|
34 |
+
|
35 |
+
# Al actualizar el JSON, refrescar las tareas
|
36 |
+
def actualizar_tareas_handler():
|
37 |
+
nuevas_tareas = actualizar_modalidades_tareas_desde_huggingface()
|
38 |
+
return {
|
39 |
+
tareas_disponibles: gr.CheckboxGroup.update(choices=nuevas_tareas),
|
40 |
+
mensaje_actualizacion: "Tareas actualizadas correctamente."
|
41 |
+
}
|
42 |
+
|
43 |
+
btn_actualizar_json.click(
|
44 |
+
fn=actualizar_tareas_handler,
|
45 |
+
inputs=[],
|
46 |
+
outputs=[tareas_disponibles, mensaje_actualizacion]
|
47 |
+
)
|
48 |
|
49 |
# Panel 1: Seleccionar Tareas
|
50 |
with gr.Row():
|