forked from innovacion/Mayacontigo
3.8 KiB
3.8 KiB
💬 ChatEgresos
ChatEgresos es un proyecto del equipo de Innovación en Banorte diseñado para acelerar la creación de aplicaciones RAG (Retrieval-Augmented Generation) enfocadas en la gestión, consulta y análisis de información de egresos.
Este repositorio no solo contiene la aplicación principal, sino también una librería de componentes reutilizables y notebooks para el procesamiento de documentos, evaluación de modelos y generación de datos sintéticos.
🚀 Inicio Rápido
# Instala dependencias del monorepo
mise setup
# Crea una nueva aplicación RAG (ejemplo de prueba)
mise new prueba
# Levanta un entorno de desarrollo
mise dev --app prueba
✅ Prerrequisitos
Si estás en el entorno de desarrollo oficial, ya deberías contar con estas herramientas.
De lo contrario, instálalas previamente:
- Mise → Documentación
- Docker → Documentación
- Vault → Documentación
📂 Estructura del Proyecto
chategresos/
├── apps/ # Aplicaciones individuales de ChatEgresos
├── packages/ # Paquetes compartidos
├── notebooks/ # Notebooks para procesamiento y evaluación
├── .templates/ # Plantillas de aplicaciones
├── .containers/ # Configuraciones de Docker
└── compose.yaml # Servicios de Docker Compose
🛠️ Comandos de Desarrollo
📌 Crear Nuevos Proyectos
# Crea una nueva aplicación RAG
mise new <nombre-app>
# Creación interactiva
mise new
🖥️ Entorno de Desarrollo
# Inicia servidores de desarrollo (frontend + backend)
mise dev
mise dev --app <nombre-app> # App específica
mise dev --no-dashboard # Sin dashboard en vivo
mise dev --check-deps # Verifica dependencias
mise dev --list-apps # Lista apps disponibles
📦 Gestión de Contenedores
# Inicia contenedores localmente
mise container:start
mise container:start <nombre-app>
# Subir imágenes a Azure Container Registry
mise container:push
mise container:push <nombre-imagen>
🏗️ Stack Tecnológico
Tecnologías Principales
- Frontend → React / Next.js + TypeScript
- Backend → Python + FastAPI / Uvicorn
- Paquetería → pnpm (Node.js), uv (Python)
- Contenedores → Docker & Docker Compose
Infraestructura
- Gestión de Secretos → HashiCorp Vault
- Registro de Contenedores → Azure Container Registry
- Observabilidad → OpenTelemetry
- Proxy Inverso → Traefik
🎯 Tu Primera App en ChatEgresos
-
Genera desde plantilla
mise new mi-app-chategresos -
Inicia el entorno
mise dev --app mi-app-chategresos -
Accede a tu aplicación
- 🌐 Frontend: http://localhost:3000
- ⚙️ API Backend: http://localhost:8000
🔧 Configuración
Desarrollo Local
- Frontend → Puerto
3000 - Backend APIs → Puerto
8000 - Contenedores → Puertos auto-asignados (8001+)
Depuración
- Usa
--no-dashboardpara un log más limpio - Ejecuta
mise dev --check-depspara verificar dependencias - Logs de contenedores:
docker logs <nombre-contenedor>
🤝 Contribuyendo
- Crea nuevas aplicaciones usando las plantillas disponibles
- Respeta la estructura del monorepo
- Usa los comandos de desarrollo recomendados
- Verifica dependencias y realiza pruebas antes de hacer PRs
📖 Recursos Adicionales
- 📁 Plantillas →
.templates/ - 🐳 Docker Config →
.containers/ - ⚡ Tareas Automáticas →
.mise/tasks/
✨ ChatEgresos: Innovación con IA para la gestión de egresos 🚀