Esta aplicación web utiliza un modelo de Machine Learning entrenado (XGBoost) para predecir el rendimiento académico de los estudiantes al finalizar su segundo semestre universitario (sobre una escala de 0 a 20 puntos).
La aplicación cuenta con un backend liviano diseñado utilizando FastAPI y un frontend interactivo construido con HTML abstracto y CSS Vanilla.
- Python 3.8 o superior instalado en el sistema.
-
Clonar el repositorio y abrir la consola en el directorio raíz del proyecto:
git clone https://github.com/emsdiaz/predictor-notas-ml.git cd predictor-notas-ml -
Crear e inicializar un entorno virtual de Python (Recomendado):
- En macOS / Linux:
python3 -m venv .venv source .venv/bin/activate - En Windows:
python -m venv .venv .venv\Scripts\activate
- En macOS / Linux:
-
Instalar dependencias necesarias: Esto instalará
FastAPI,uvicorn,xgboost,scikit-learnypandas.pip install -r requirements.txt
Una vez tengas el entorno activo y las librerías instaladas, inicia el proceso backend alojado en FastAPI con el siguiente comando:
uvicorn app:app --reloadEl servidor quedará en ejecución. Deberás abrir tu navegador web favorito (Chrome, Safari, Firefox, Edge) e ir a la siguiente dirección alojada en tu red local:
- Machine Learning: Librería estandarizada Scikit-Learn y XGBoost (Gradient Boosting), persistidos con Joblib.
- Backend / API: Creado enteramente usando FastAPI.
- Frontend / Diseño Plástico: Vanilla JS y CSS con tendencia Glassmorphism.
Nota: Por razones de privacidad de datos, este repositorio incluye únicamente los binarios matemáticos (.joblib) producto del entrenamiento y los componentes del software. Los historiales del conjunto de datos crudo no fueron distribuidos originalmente.