File size: 2,840 Bytes
efdd1f5 a48c7f7 1da3f58 d628526 1da3f58 0c4f209 8bf0097 c8e0946 a48c7f7 8bf0097 2b833bb d628526 a48c7f7 33f2548 c7d73f9 33f2548 d628526 7c0815f 1da3f58 7c0815f 8bf0097 7c0815f 6b3f7f3 33f2548 d628526 1cd532e 1da3f58 1cd532e 33f2548 1cd532e efdd1f5 1da3f58 cba4d16 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
import gradio as gr
from functions import (
MODALIDAD_TAREAS,
generar_grafica_barras,
generar_encabezado,
buscar_datasets,
generar_dataset
)
# Interfaz Gradio
with gr.Blocks() as demo:
gr.Markdown("# Diseñador de Modelos de Redes Neuronales y Generador de Datasets Multimodales")
# Panel 1: Lista de Tareas Disponibles con Checkboxes
with gr.Row():
gr.Markdown("### Selecciona Tareas")
todas_las_tareas = [tarea for tareas in MODALIDAD_TAREAS.values() for tarea in tareas]
tareas_seleccionadas = gr.CheckboxGroup(choices=todas_las_tareas, label="Tareas Disponibles", interactive=True)
# Panel 2: Gráfica de Barras
with gr.Row():
gr.Markdown("### Distribución de Tareas Seleccionadas por Modalidad")
grafica_barras = gr.Plot(label="Gráfica de Barras")
btn_actualizar_grafica = gr.Button("Actualizar Gráfica")
btn_actualizar_grafica.click(
fn=lambda tareas: generar_grafica_barras(tareas),
inputs=tareas_seleccionadas,
outputs=grafica_barras
)
# Panel 3: Generar Encabezado del CSV
with gr.Row():
btn_generar_encabezado = gr.Button("Generar Encabezado del CSV")
encabezado_generado = gr.Textbox(label="Encabezado Generado", interactive=False)
btn_generar_encabezado.click(
fn=generar_encabezado,
inputs=tareas_seleccionadas,
outputs=encabezado_generado
)
# Panel 4: Buscar Datasets Compatibles con Filtros Adicionales
with gr.Row():
with gr.Column():
filtro_tamaño = gr.Dropdown(choices=["small", "medium", "large"], label="Filtrar por Tamaño")
filtro_licencia = gr.Dropdown(choices=["mit", "apache-2.0", "cc-by-4.0"], label="Filtrar por Licencia")
btn_buscar_datasets = gr.Button("Buscar Datasets Compatibles")
datasets_encontrados = gr.Textbox(label="Datasets Encontrados", interactive=False)
btn_buscar_datasets.click(
buscar_datasets,
inputs=[tareas_seleccionadas, filtro_tamaño, filtro_licencia],
outputs=datasets_encontrados
)
# Panel 5: Generar Dataset con Paginación
with gr.Row():
pagina_actual = gr.Number(value=1, label="Página Actual")
filas_por_pagina = gr.Number(value=5, label="Filas por Página")
btn_generar_dataset = gr.Button("Generar Dataset")
vista_previa_csv = gr.Textbox(label="Vista Previa del CSV", interactive=False)
btn_descargar_csv = gr.File(label="Descargar CSV")
btn_generar_dataset.click(
generar_dataset,
inputs=[encabezado_generado, datasets_encontrados, pagina_actual, filas_por_pagina],
outputs=vista_previa_csv
)
# Ejecutar la aplicación
demo.launch() |