import gradio as gr import pandas as pd import numpy as np def process_csv(file): if file is None: return gr.Markdown("Por favor, sube un archivo CSV.") try: df = pd.read_csv(file.name) overview = f"### Vista Previa de los Datos\n\n{df.head().to_markdown(index=False)}\n\n### Información del DataFrame\n\n```\n{df.info()}\n```\n\n### Descripción Estadística\n\n{df.describe().to_markdown()}\n" return gr.Markdown(overview) except Exception as e: return gr.Markdown(f"Error al procesar el archivo: {e}") with gr.Blocks(title="Mini AutoML Studio") as demo: gr.HTML("

🤖 Mini AutoML Studio: Tu DataRobot en un clic 🚀

") gr.Markdown( "

"+ "Sube tu archivo CSV y esta plataforma detectará el tipo de problema, limpiará los datos, "+ "hará ingeniería de características, entrenará múltiples modelos, generará un leaderboard "+ "y explicará los resultados. ¡Ideal para mostrar tus habilidades en ML!"+ "

" ) with gr.TabbedInterface( [ gr.Interface( fn=process_csv, inputs=gr.File(label="Sube tu archivo CSV", file_types=[".csv"]), outputs=gr.Markdown(label="Análisis Preliminar de Datos"), title="1. Carga de Datos y Exploración", live=False ) ] ) as tabs: # More tabs for problem detection, preprocessing, models, leaderboard, explainability will be added here pass if __name__ == "__main__": demo.launch(share=True)