| | import gradio as gr |
| | from functions import ( |
| | cargar_modalidades_tareas, |
| | generar_grafica_barras, |
| | buscar_datasets, |
| | generar_dataset, |
| | generar_encabezado, |
| | actualizar_modalidades_tareas_desde_huggingface |
| | ) |
| |
|
| | |
| | MODALIDAD_TAREAS = cargar_modalidades_tareas() |
| | tareas_iniciales = list(MODALIDAD_TAREAS.keys()) |
| |
|
| | with gr.Blocks() as demo: |
| | gr.Markdown("# Diseñador de Modelos de Redes Neuronales y Generador de Datasets Multimodales") |
| | |
| | |
| | with gr.Row(): |
| | tareas_disponibles = gr.CheckboxGroup( |
| | choices=tareas_iniciales, |
| | label="Tareas Disponibles", |
| | interactive=True |
| | ) |
| | |
| | |
| | with gr.Row(): |
| | btn_actualizar_json = gr.Button("Actualizar Modalidades desde HuggingFace") |
| | mensaje_actualizacion = gr.Textbox(label="Estado", interactive=False) |
| | |
| | |
| | def actualizar_tareas_handler(): |
| | try: |
| | nuevas_tareas = actualizar_modalidades_tareas_desde_huggingface() |
| | return nuevas_tareas, "✅ Modalidades actualizadas: " + ", ".join(nuevas_tareas) |
| | except Exception as e: |
| | return tareas_iniciales, f"❌ Error: {str(e)}" |
| | |
| | |
| | btn_actualizar_json.click( |
| | fn=actualizar_tareas_handler, |
| | inputs=[], |
| | outputs=[tareas_disponibles, mensaje_actualizacion] |
| | ) |
| | |
| | |
| | with gr.Row(): |
| | grafica_barras = gr.Plot() |
| | btn_actualizar_grafica = gr.Button("Actualizar Gráfica") |
| | btn_actualizar_grafica.click( |
| | fn=lambda tareas: generar_grafica_barras(tareas, MODALIDAD_TAREAS), |
| | inputs=tareas_disponibles, |
| | outputs=grafica_barras |
| | ) |
| | |
| | |
| | with gr.Row(): |
| | btn_generar_encabezado = gr.Button("Generar Encabezado") |
| | encabezado_generado = gr.Textbox(label="Encabezado Generado", interactive=False) |
| | btn_generar_encabezado.click( |
| | fn=generar_encabezado, |
| | inputs=tareas_disponibles, |
| | outputs=encabezado_generado |
| | ) |
| | |
| | |
| | with gr.Row(): |
| | with gr.Column(): |
| | filtro_tamaño = gr.Dropdown(choices=["small", "medium", "large"], label="Tamaño") |
| | filtro_licencia = gr.Dropdown(choices=["mit", "apache-2.0", "cc-by-4.0"], label="Licencia") |
| | btn_buscar_datasets = gr.Button("Buscar Datasets Útiles") |
| | datasets_encontrados = gr.CheckboxGroup(label="Datasets Compatibles") |
| | btn_buscar_datasets.click( |
| | fn=buscar_datasets, |
| | inputs=[tareas_disponibles, filtro_tamaño, filtro_licencia], |
| | outputs=datasets_encontrados |
| | ) |
| | |
| | |
| | with gr.Row(): |
| | pagina_actual = gr.Number(value=1, label="Página") |
| | 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", interactive=False) |
| | btn_generar_dataset.click( |
| | fn=generar_dataset, |
| | inputs=[encabezado_generado, datasets_encontrados, pagina_actual, filas_por_pagina], |
| | outputs=vista_previa_csv |
| | ) |
| |
|
| | demo.launch() |