SergioSCA commited on
Commit
1cd532e
verified
1 Parent(s): 7c0815f

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +18 -9
app.py CHANGED
@@ -51,7 +51,7 @@ def buscar_datasets(modalidades_seleccionadas, tareas_seleccionadas, filtro_tama
51
  return "\n".join(resultados)
52
 
53
  # Funci贸n para generar el dataset
54
- def generar_dataset(encabezado, datasets_seleccionados):
55
  if not datasets_seleccionados:
56
  raise ValueError("Debes seleccionar al menos un dataset.")
57
 
@@ -63,11 +63,11 @@ def generar_dataset(encabezado, datasets_seleccionados):
63
  dataset_id = dataset_id.strip("- ").split(":")[0] # Extraer ID del dataset
64
  try:
65
  dataset = load_dataset(dataset_id, split="train")
66
- for i, fila in enumerate(dataset):
67
- if i >= 5: # Limitar a 5 filas por simplicidad
68
- break
69
  valores = [str(fila.get(col, "valor_default")) for col in columnas[1:]] # Ignorar 'id'
70
- filas.append(f"id_{i}," + ",".join(valores))
71
  except Exception as e:
72
  filas.append(f"Error cargando dataset {dataset_id}: {str(e)}")
73
 
@@ -84,8 +84,9 @@ with gr.Blocks() as demo:
84
  modalidades_seleccionadas = gr.CheckboxGroup(choices=modalidades, label="Selecciona Modalidades")
85
 
86
  # Panel 2: Configuraci贸n de Tareas (CheckboxGroup expandido)
87
- with gr.Row():
88
- tareas_disponibles = gr.CheckboxGroup(choices=[], label="Selecciona Tareas", interactive=True, elem_classes=["expanded-checkbox"])
 
89
  modalidades_seleccionadas.change(actualizar_tareas, inputs=modalidades_seleccionadas, outputs=tareas_disponibles)
90
 
91
  # Panel 3: Generar Encabezado del CSV
@@ -107,18 +108,26 @@ with gr.Blocks() as demo:
107
  outputs=datasets_encontrados
108
  )
109
 
110
- # Panel 5: Generar Dataset
111
  with gr.Row():
 
 
112
  btn_generar_dataset = gr.Button("Generar Dataset")
113
  vista_previa_csv = gr.Textbox(label="Vista Previa del CSV", interactive=False)
114
  btn_descargar_csv = gr.File(label="Descargar CSV")
115
- btn_generar_dataset.click(generar_dataset, inputs=[encabezado_generado, datasets_encontrados], outputs=vista_previa_csv)
 
 
 
 
116
 
117
  # Estilo CSS para expandir el 谩rea de selecci贸n de tareas
118
  demo.css = """
119
  .expanded-checkbox {
120
  max-height: 200px; /* Altura m谩xima */
121
  overflow-y: auto; /* Scroll vertical si es necesario */
 
 
122
  }
123
  """
124
 
 
51
  return "\n".join(resultados)
52
 
53
  # Funci贸n para generar el dataset
54
+ def generar_dataset(encabezado, datasets_seleccionados, pagina_actual=1, filas_por_pagina=5):
55
  if not datasets_seleccionados:
56
  raise ValueError("Debes seleccionar al menos un dataset.")
57
 
 
63
  dataset_id = dataset_id.strip("- ").split(":")[0] # Extraer ID del dataset
64
  try:
65
  dataset = load_dataset(dataset_id, split="train")
66
+ inicio = (pagina_actual - 1) * filas_por_pagina
67
+ fin = pagina_actual * filas_por_pagina
68
+ for i, fila in enumerate(dataset[inicio:fin]):
69
  valores = [str(fila.get(col, "valor_default")) for col in columnas[1:]] # Ignorar 'id'
70
+ filas.append(f"id_{inicio + i}," + ",".join(valores))
71
  except Exception as e:
72
  filas.append(f"Error cargando dataset {dataset_id}: {str(e)}")
73
 
 
84
  modalidades_seleccionadas = gr.CheckboxGroup(choices=modalidades, label="Selecciona Modalidades")
85
 
86
  # Panel 2: Configuraci贸n de Tareas (CheckboxGroup expandido)
87
+ with gr.Column():
88
+ gr.Markdown("### Selecciona Tareas")
89
+ tareas_disponibles = gr.CheckboxGroup(choices=[], label="Tareas Disponibles", interactive=True, elem_classes=["expanded-checkbox"])
90
  modalidades_seleccionadas.change(actualizar_tareas, inputs=modalidades_seleccionadas, outputs=tareas_disponibles)
91
 
92
  # Panel 3: Generar Encabezado del CSV
 
108
  outputs=datasets_encontrados
109
  )
110
 
111
+ # Panel 5: Generar Dataset con Paginaci贸n
112
  with gr.Row():
113
+ pagina_actual = gr.Number(value=1, label="P谩gina Actual")
114
+ filas_por_pagina = gr.Number(value=5, label="Filas por P谩gina")
115
  btn_generar_dataset = gr.Button("Generar Dataset")
116
  vista_previa_csv = gr.Textbox(label="Vista Previa del CSV", interactive=False)
117
  btn_descargar_csv = gr.File(label="Descargar CSV")
118
+ btn_generar_dataset.click(
119
+ generar_dataset,
120
+ inputs=[encabezado_generado, datasets_encontrados, pagina_actual, filas_por_pagina],
121
+ outputs=vista_previa_csv
122
+ )
123
 
124
  # Estilo CSS para expandir el 谩rea de selecci贸n de tareas
125
  demo.css = """
126
  .expanded-checkbox {
127
  max-height: 200px; /* Altura m谩xima */
128
  overflow-y: auto; /* Scroll vertical si es necesario */
129
+ border: 1px solid #ccc; /* Borde para mejorar la visibilidad */
130
+ padding: 10px; /* Espaciado interno */
131
  }
132
  """
133