Instalación
Esta guía te ayudará a instalar y configurar el Sistema de Riesgo Crediticio con RBM.
Requisitos del Sistema
Requisitos Mínimos
Python: 3.12.3 (recomendado) o 3.8+ (mínimo)
RAM: 4 GB mínimo, 8 GB recomendado
Espacio en disco: 3 GB para dependencias y modelos
Sistema operativo: Linux, macOS, o Windows 10/11
Dependencias Principales
El sistema requiere las siguientes librerías (ver requirements.txt completo):
Framework Web:
streamlit>=1.28.0- Framework de aplicaciones web
Procesamiento de Datos:
pandas>=2.0.0- Manipulación de datosnumpy>=1.24.0- Computación numéricascipy>=1.11.0- Análisis estadísticostatsmodels>=0.14.0- Modelos estadísticos
Visualización:
plotly>=5.15.0- Gráficos interactivosmatplotlib>=3.7.0- Gráficos estáticosseaborn>=0.12.0- Visualizaciones estadísticasaltair>=5.0.0- Gráficos declarativos
Machine Learning:
scikit-learn>=1.3.0- Modelos tradicionalesxgboost>=1.7.0- Gradient boostinglightgbm>=4.0.0- Gradient boosting eficientetensorflow>=2.13.0- Deep learning y RBM
Sistema RAG:
langchain>=0.0.350- Framework RAGlangchain-community>=0.0.10- Integracioneslangchain-groq>=0.0.3- Cliente Groqchromadb>=0.4.15- Base de datos vectorialsentence-transformers>=2.2.2- Embeddingstransformers>=4.35.0- Modelos de lenguajetorch>=2.1.0- PyTorchgroq>=0.4.0- API Groq
Procesamiento de PDFs:
PyMuPDF>=1.23.0- Extracción de texto de PDFsfitz>=0.0.1.dev2- Procesamiento de documentos
Formatos de Datos:
openpyxl>=3.1.0- Excelxlsxwriter>=3.1.0- Escritura Excelpyarrow>=12.0.0- Parquet
Utilidades:
python-dotenv>=1.0.0- Variables de entornopydantic>=2.4.0- Validación de datostqdm>=4.66.0- Barras de progresojoblib>=1.3.0- Serializaciónrequests>=2.31.0- HTTP requestsarxiv>=1.4.8- Descarga de papers
Documentación:
sphinx>=7.1.0- Generador de documentaciónsphinx-rtd-theme>=1.3.0- Tema ReadTheDocs
Testing:
pytest>=7.4.0- Framework de testingpytest-cov>=4.1.0- Cobertura de código
Desarrollo:
black>=23.9.0- Formateador de códigoflake8>=6.1.0- Linterisort>=5.12.0- Ordenador de imports
Nota
Total de dependencias: 72 paquetes principales + sus dependencias transitivas (~200 paquetes totales)
Instalación Paso a Paso
1. Clonar el Repositorio
git clone https://github.com/fernandogomez0621/AppFIsica.git
cd AppFIsica
2. Crear Ambiente Virtual
# Linux/macOS
python3 -m venv venv_fisica
source venv_fisica/bin/activate
# Windows
python -m venv venv_fisica
venv_fisica\Scripts\activate
3. Instalar Dependencias
pip install --upgrade pip
pip install -r requirements.txt
Nota
La instalación puede tomar 10-15 minutos debido a las dependencias de deep learning.
4. Configurar API Keys
Edita el archivo .streamlit/secrets.toml:
# API Key de Groq (GRATIS en console.groq.com)
GROQ_API_KEY = "tu-api-key-aqui"
5. Ejecutar la Aplicación
streamlit run app.py
La aplicación se abrirá automáticamente en: http://localhost:8501
Instalación Automática (Linux/macOS)
Script de Instalación Completa
Usa el script de instalación automática:
chmod +x install.sh
./install.sh
Este script:
✅ Verifica Python 3.8+
✅ Crea ambiente virtual automáticamente
✅ Instala todas las dependencias
✅ Configura directorios necesarios
✅ Verifica la instalación
✅ Proporciona instrucciones de uso
Script de Activación Rápida
Para sesiones posteriores, usa:
chmod +x activate_env.sh
./activate_env.sh
Este script:
Activa el ambiente virtual
Verifica dependencias
Ejecuta la aplicación Streamlit
Verificación de Instalación
Verificar Dependencias
# Ejecutar en Python
import streamlit
import pandas
import numpy
import plotly
import sklearn
import tensorflow
print("✅ Todas las dependencias instaladas correctamente")
Verificar Aplicación
Ejecuta
streamlit run app.pyVerifica que aparezca el dashboard principal
Prueba generar datos sintéticos
Solución de Problemas
Errores Comunes
Error: ModuleNotFoundError
# Verificar que el ambiente virtual esté activo
which python
# Reinstalar dependencias
pip install -r requirements.txt
Error: GROQ_API_KEY not found
Verifica que
.streamlit/secrets.tomlexisteObtén tu API key en: https://console.groq.com/keys
Asegúrate de que el formato sea correcto
Error: inotify watch limit reached
# Aumentar límite de inotify (Linux)
echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
Problemas de Memoria
Reduce
batch_sizeen configuración RBMUsa menos datos para entrenamiento inicial
Cierra otras aplicaciones
Configuración Avanzada
Variables de Entorno
# Configurar límites de memoria para TensorFlow
export TF_CPP_MIN_LOG_LEVEL=2
export CUDA_VISIBLE_DEVICES="" # Usar solo CPU
# Configurar Streamlit
export STREAMLIT_SERVER_PORT=8501
export STREAMLIT_SERVER_HEADLESS=true
Configuración de Streamlit
Edita .streamlit/config.toml para personalizar:
[theme]
primaryColor = "#FF6B6B"
backgroundColor = "#FFFFFF"
secondaryBackgroundColor = "#F0F2F6"
textColor = "#262730"
Configuración de Modelos
Ajusta hiperparámetros en .streamlit/secrets.toml:
[rbm]
default_n_hidden = 100
default_learning_rate = 0.01
default_n_epochs = 100
Actualización
Para actualizar a una nueva versión:
git pull origin main
pip install -r requirements.txt --upgrade
streamlit run app.py
Desinstalación
Para remover completamente:
# Desactivar ambiente virtual
deactivate
# Eliminar directorio del proyecto
rm -rf AppFIsica/
Soporte
📧 Email: fernandogomez0621@gmail.com
🐛 Issues: https://github.com/fernandogomez0621/AppFIsica/issues
📖 Documentación: Esta documentación
💬 Chat: Sistema RAG integrado para preguntas sobre RBMs
Próximos Pasos
Después de la instalación:
Genera datos: Ve al módulo «Generar Datos»
Explora: Usa «Análisis Descriptivo»
Entrena RBM: Experimenta con «Máquina de Boltzmann»
Aprende: Usa el sistema RAG educativo