Repositori creat pel curs de Machine Learning de Barcelona Activa
Enllaç del projecte a Streamlit: [https://adriahf-projecte-machine-learning-sprint9app-baqk6r.streamlit.app/)
Els següents models i arxius són essencials per al funcionament de l'aplicació:
| Arxiu/Model | Descripció |
|---|---|
label_encoder.pkl |
Codificador de variables binàries (default, housing, loan) |
one_hot_columns.pkl |
Llista de columnes generades després del One-Hot Encoding (inclou duration) |
pca_columns.pkl |
Columnes utilitzades després d'eliminar duration i contact_unknown |
standard_scaler.pkl |
Estandarditzador de variables numèriques |
pca_model.pkl |
Model PCA amb 18 components principals |
model_lr_final.pkl |
Model entrenat de Regressió Logística per a prediccions |
Conté les dependències de Python necessàries:
streamlit==1.40.1
scikit-learn==1.5.2
pandas==2.2.3
joblib==1.4.2
numpy==1.26.0
setuptools==70.0.0
wheel==0.43.0
scipy==1.14.1
python-dateutil==2.9.0Especifica la versió de Python que s'utilitzarà per a l'aplicació.
python-version=3.11.10Script per a configuracions addicionals:
#!/bin/bash
apt-get update && apt-get install -y python3-distutils- Instal·lar les dependències:
pip install -r requirements.txt
- Provar localment:
streamlit run app.py
-
Crear un repositori públic a GitHub amb tots els arxius necessaris:
app.py: El codi principal de l'aplicació Streamlit.requirements.txt: Les dependències de Python necessàries.- Arxius
.pkl: Models i objectes de preprocessament (label_encoder.pkl,one_hot_columns.pkl,pca_columns.pkl,standard_scaler.pkl,pca_model.pkl,model_lr_final.pkl). - Arxius de configuració opcionals:
runtime.txtisetup.sh.
-
Assegurar que el repositori sigui públic, ja que Streamlit Sharing requereix accés públic per desplegar l'aplicació.
-
Executar l'aplicació en local per verificar que tot funcioni correctament:
streamlit run app.py
-
Crear un compte a Streamlit. Iniciar sessió amb el compte de GitHub per vincular-lo.
-
Vincular el compte de GitHub a Streamlit Sharing. Això permetrà a Streamlit accedir als repositoris.
-
Realitzar un
git pushdel codi al repositori de GitHub. Assegurar-se que tots els arxius necessaris (comapp.py,requirements.txti els arxius.pkl) estiguin inclosos. -
Configurar l'aplicació a Streamlit Sharing:
- Repository: Seleccionar el repositori de GitHub
- Branch: Triar la branca on s'ha fet el push
- Main file path: Indicar el camí de l'arxiu principal de l'aplicació (
app.py)
-
Clicar "Deploy" per iniciar el procés de desplegament. Streamlit començarà a configurar l'entorn i a instal·lar les dependències.
-
Resoldre els errors que puguin aparèixer durant el desplegament. Aquests errors solen estar relacionats amb dependències faltants, arxius no trobats o versions incompatibles de Python. Consultar els logs per obtenir més informació i corregir els problemes al codi local abans de fer un nou
git push. -
Un cop resolts els errors, l'aplicació s'executarà correctament a Streamlit Sharing. S'hi podrà accedir mitjançant l'enllaç proporcionat per la plataforma.
Durant el procés de desplegament, poden aparèixer alguns errors comuns.
- Causa: Falta una llibreria a l'entorn de desplegament.
- Solució: Afegeix la llibreria faltant al fitxer
requirements.txti fes un nougit push.
- Causa: Els arxius
.pklno es troben al directori correcte o no s'han pujat al repositori. - Solució: Assegura’t que els arxius
.pklestiguin al directori arrel del repositori i fes un nougit push.
- Causa: La versió de Python utilitzada localment no coincideix amb la del servidor de Streamlit.
- Solució: Especifica la versió correcta de Python al fitxer
runtime.txt(per exemple,python-3.10.12).