Inteligencia Artificial y Analitica Avanzada
- 8 motores de IA clasica (sin LLMs)
- Pronostico de demanda Prophet + SARIMAX
- 18 tareas Celery Beat automatizadas
- Segmentacion RFM + K-Means
- Deteccion de anomalias multicapa
- Simulacion Monte Carlo para flujo de caja
Inteligencia Artificial y Analitica Avanzada
Tener datos no sirve de nada si no los convertis en decisiones. Supersmartket toma toda la informacion que genera tu negocio (ventas, clientes, stock, trafico, flujo de caja) y la procesa con 8 motores de inteligencia artificial para darte insights accionables. No necesitas ser data scientist: el sistema te dice que esta pasando, por que y que podes hacer al respecto.
Lo que hace distinto a nuestro enfoque: no usamos IA generativa ni LLMs. Todos los modelos son machine learning clasico: algoritmos explicables, predecibles, sin alucinaciones, sin dependencia de APIs externas y sin costos variables por tokens. Cada resultado se puede auditar, cada prediccion tiene un intervalo de confianza, y cada recomendacion tiene una explicacion matematica detras.
Desde saber que productos se compran juntos hasta simular 1.000 escenarios de flujo de caja con Monte Carlo, el modulo de inteligencia te da ventajas competitivas que antes solo tenian las grandes cadenas. Y todo corre mientras dormis: 18 tareas automatizadas que se ejecutan cada noche, cada hora o cada semana sin que tengas que tocar un boton.
Canasta, demanda, segmentacion, anomalias, flujo de caja, conversion, health scoring y reconocimiento facial. 18 tareas Celery Beat que corren solas y te avisan cuando hay algo importante.
Por que IA clasica y no ChatGPT
Antes de entrar en detalle, es importante entender por que elegimos machine learning clasico en vez de modelos de lenguaje (LLMs) como GPT o similares. No es una limitacion: es una decision de diseno deliberada.
Analisis de canasta (Market Basket Analysis)
El analisis de canasta descubre que productos compran juntos tus clientes. Es la version inteligente y automatizada de “el que compra pan tambien compra fiambre”, pero respaldada por miles de transacciones y un algoritmo que encuentra patrones que al ojo humano se le escapan.
El algoritmo: FP-Growth
Usamos FP-Growth (Frequent Pattern Growth) de la libreria mlxtend. Es el algoritmo estandar de la industria para reglas de asociacion, elegido por sobre Apriori por su eficiencia: construye un arbol compacto en memoria que evita generar candidatos innecesarios, lo que lo hace mucho mas rapido con datasets grandes.
El algoritmo analiza todas las transacciones del periodo seleccionado y genera reglas de asociacion de hasta 3 items: “Si un cliente compra X e Y, es probable que tambien compre Z”.
Metricas: Soporte, Confianza y Lift
Cada regla tiene tres metricas que te ayudan a evaluar su calidad:
| Metrica | Que mide | Formula simplificada | Ejemplo |
|---|---|---|---|
| Soporte | Que porcentaje de tickets contienen la combinacion. | Tickets con A y B / Total de tickets | Soporte 8% = en el 8% de todas las compras aparecen pan y fiambre juntos. |
| Confianza | Si alguien compro X, que probabilidad hay de que compre Y. | Tickets con A y B / Tickets con A | Confianza 65% = el 65% de los que compran pan tambien compran fiambre. |
| Lift | Cuanto mas probable es la compra conjunta vs. la probabilidad individual. | Confianza / Soporte de B | Lift 2.3 = es 2.3 veces mas probable que compren juntos de lo que seria por azar. |
En terminos simples: el soporte te dice si la regla es relevante (aplica a muchos tickets), la confianza te dice si es confiable (cuando pasa una cosa, la otra tambien pasa), y el lift te dice si hay una relacion real (no es casualidad). Un lift de 1.0 significa que no hay relacion; arriba de 1.0, hay asociacion positiva.
Configuracion y parametros
El sistema viene con valores por defecto optimizados para supermercados, pero podes ajustarlos:
| Parametro | Valor por defecto | Que controla |
|---|---|---|
| Soporte minimo | 2% | Descarta combinaciones que aparecen en menos del 2% de los tickets. Subilo si queres solo reglas masivas. |
| Confianza minima | 50% | Solo muestra reglas donde hay al menos 50% de probabilidad. Bajalo para explorar asociaciones menos fuertes. |
| Lift minimo | 1.0 | Solo reglas con asociacion positiva real. Subilo a 1.5+ para ver solo las mas significativas. |
| Ventana temporal | 30 dias | Periodo de transacciones a analizar. |
| Maximo de items por regla | 3 | Reglas de hasta 3 productos. Mas de 3 genera reglas demasiado especificas y poco accionables. |
Podes filtrar ademas por categoria (para enfocarte en un rubro) y por periodo (para ver si las asociaciones cambian segun la epoca del ano).
Combos sugeridos
A partir de las reglas de asociacion con mejor score (combinacion de confianza y lift), el sistema te sugiere combos que podrias armar como promocion. Por ejemplo, si descubre que cerveza + papas fritas + mani tienen lift alto, te propone un “combo picada” con descuento.
Cada sugerencia incluye:
- Productos involucrados con sus metricas de asociacion.
- Precio sugerido del combo basado en margenes individuales.
- Estimacion de unidades vendidas basada en la frecuencia historica.
Cada sugerencia se puede:
- Aceptar: Se crea automaticamente una promocion tipo combo con los productos sugeridos en el modulo de Marketing.
- Dismiss (descartar): Si no te interesa, la descartas y no te la vuelve a sugerir.
Cross-merchandising: recomendaciones de ubicacion
El cross-merchandising son sugerencias de ubicacion en gondola basadas en las reglas de asociacion. Si los datos dicen que queso crema y tostadas se compran juntos pero estan en gondolas distintas, el sistema te sugiere ponerlos cerca.
La logica es simple: si dos productos tienen asociacion fuerte pero estan lejos fisicamente, hay una oportunidad de aumentar ventas acercandolos. El sistema cruza las reglas de asociacion con tu layout de categorias para generar recomendaciones accionables.
Cada sugerencia tiene un status que podes actualizar:
- Pendiente: La sugerencia fue generada pero no la revisaste.
- Aceptada: La implementaste en la gondola.
- Rechazada: No aplica para tu layout.
Pronostico de demanda (Prophet + SARIMAX Ensemble)
El pronostico de demanda usa un ensemble de dos modelos de series temporales para predecir cuanto vas a vender de cada producto en los proximos dias. Es la herramienta que te permite comprar la cantidad justa: ni de mas (que genera sobre-stock y merma) ni de menos (que genera quiebres y ventas perdidas).
Arquitectura del ensemble
No confiamos en un solo modelo. Usamos un ensemble (combinacion) de dos modelos complementarios:
| Modelo | Libreria | Fortaleza | Rol en el ensemble |
|---|---|---|---|
| Prophet | prophet (Meta) | Excelente descomposicion estacional, robusto ante datos faltantes, manejo nativo de feriados | Modelo primario. Captura tendencia general y estacionalidad. |
| SARIMAX | statsmodels | Modelo estadistico riguroso para series con estacionalidad multiplicativa | Modelo secundario. Parametros (1,1,1)(1,1,1,7) para capturar ciclo semanal. Se activa con 30+ dias de historia. |
El ensemble final promedia las predicciones de ambos modelos, lo que reduce la varianza y produce resultados mas estables que cualquiera de los dos por separado. Es la misma tecnica que usan los ganadores de competencias de prediccion (Kaggle): combinar modelos distintos siempre supera a un modelo individual.
Cadena de fallback (degradacion elegante)
Una de las decisiones de diseno mas importantes: el sistema siempre te da una respuesta, incluso cuando no tiene datos suficientes para los modelos avanzados. La cadena de fallback es:
- Ensemble Prophet + SARIMAX: Si hay 90+ dias de datos, se usa el ensemble completo. Maxima precision.
- Prophet solo: Si hay entre 30 y 90 dias, se usa solo Prophet (SARIMAX necesita mas historia para sus parametros estacionales).
- Regresion lineal: Si hay entre 14 y 30 dias, se ajusta una regresion lineal simple sobre la tendencia.
- Promedio movil 7 dias: Si hay menos de 14 dias, se usa el promedio de los ultimos 7 dias como prediccion constante.
Esto significa que desde el primer dia que usas Supersmartket, ya tenes pronostico de demanda. No es perfecto al principio, pero es mejor que adivinar. Y a medida que acumulas datos, el sistema automaticamente escala a modelos mas sofisticados.
Regresores argentinos
Aca es donde la inteligencia se adapta a la realidad de tu mercado. Los modelos incluyen regresores especificos del mercado argentino que otros sistemas ignoran:
| Regresor | Efecto en la demanda | Dias impactados |
|---|---|---|
| Tarjeta Alimentar | Acreditacion mensual del programa social. Pico de demanda en alimentos basicos. | Dias 1 al 7 de cada mes |
| Quincena (payroll) | Cobro de sueldos. Pico general de consumo. | Dias 1-2 y 15-16 de cada mes |
| Feriados nacionales | Cambio de patron de compras (stockeo previo, dia cerrado). | Segun calendario AFIP |
Estos regresores se incorporan como variables exogenas en Prophet y SARIMAX, mejorando significativamente la precision en las fechas afectadas. Un modelo generico que no conoce la Tarjeta Alimentar va a subestimar las ventas la primera semana de cada mes; el nuestro no.
Intervalos de confianza
Cada prediccion viene con un intervalo de confianza del 80% que te dice el rango donde es probable que caigan las ventas reales. El intervalo se ensancha a medida que la prediccion se aleja en el tiempo (mas incertidumbre a futuro).
En el grafico de prediccion, esto se ve como una banda sombreada:
- Linea central: Prediccion puntual (el valor mas probable).
- Banda sombreada: Intervalo del 80%. Los valores reales deberian caer dentro de esta banda el 80% de las veces.
- Linea de datos reales: Cuando pasa el tiempo, se superponen los datos reales para evaluar visualmente la precision.
Horizontes de prediccion
| Horizonte | Precision tipica (MAPE) | Uso recomendado |
|---|---|---|
| 7 dias | < 15% | Productos perecederos, reposicion diaria |
| 14 dias | 15-20% | Planificacion de compras semanales |
| 30 dias | 20-25% | Negociacion con proveedores |
Urgencia de reposicion
El sistema no solo predice demanda: cruza la prediccion con el stock actual para calcular la urgencia de reposicion de cada producto:
| Nivel de urgencia | Criterio | Accion sugerida |
|---|---|---|
| Critico | Stock cubre menos de 1 dia de demanda predicha | Compra de emergencia hoy |
| Alto | Stock cubre menos de 3 dias | Incluir en la proxima orden de compra |
| Medio | Stock cubre menos de 7 dias | Planificar compra esta semana |
| Bajo | Stock cubre 7+ dias | Sin accion necesaria |
Backfill diario de valores reales
Todos los dias, el sistema toma las ventas reales del dia anterior y las compara con la prediccion que habia hecho. Este proceso de backfill sirve para:
- Calcular las metricas de precision (MAPE) continuamente.
- Reentrenar los modelos con datos actualizados.
- Detectar si el modelo esta perdiendo precision (concept drift).
Metricas de precision (MAPE)
El MAPE (Mean Absolute Percentage Error) es la metrica principal. Te dice, en promedio, cuanto se desvio la prediccion de la realidad:
| MAPE | Interpretacion |
|---|---|
| < 10% | Excelente. Pronostico muy confiable. |
| 10-20% | Bueno. Suficiente para decisiones de compra. |
| 20-30% | Aceptable. Usalo como referencia con margen de seguridad. |
| > 30% | Pobre. El producto es muy erratico. Mejor complementar con criterio manual. |
Segmentacion de clientes (RFM + K-Means)
La segmentacion clasifica automaticamente a tus clientes en grupos basados en su comportamiento real de compra. No es una encuesta ni un formulario: son datos duros de como gastan, con que frecuencia y hace cuanto.
El modelo: RFM + K-Means Clustering
El proceso de segmentacion tiene dos etapas:
Etapa 1: Calculo de metricas RFM
Para cada cliente, el sistema calcula tres variables:
| Variable | Que mide | Ejemplo |
|---|---|---|
| Recency (R) | Hace cuantos dias fue su ultima compra | R = 3 (compro hace 3 dias) |
| Frequency (F) | Cuantas veces compro en los ultimos 90 dias | F = 12 (12 visitas en 3 meses) |
| Monetary (M) | Cuanto gasto en total en los ultimos 90 dias | M = $185.000 |
Las tres variables se normalizan con MinMaxScaler (escala 0-1) para que ninguna domine sobre las otras por diferencia de magnitud.
Etapa 2: K-Means Clustering
Con las variables RFM normalizadas, se aplica K-Means para agrupar a los clientes en 5 segmentos basados en la similitud de su comportamiento:
| Segmento | Perfil tipico | Estrategia recomendada |
|---|---|---|
| VIP | Compra frecuente, gasto alto, compra reciente. Son tus mejores clientes. | Tratamiento preferencial, ofertas exclusivas, comunicacion personalizada. No perder bajo ningun concepto. |
| Regular | Compra con frecuencia moderada, gasto medio. El grueso de tu base. | Mantener la frecuencia, incentivar aumento de ticket con cross-selling. |
| Ocasional | Compra cada tanto, gasto bajo. Viene cuando hay oferta o necesidad puntual. | Promociones agresivas para aumentar frecuencia antes de que se vaya. |
| Nuevo | Primera compra reciente. No tiene historial suficiente para clasificar. | Welcome journey: incentivo para la segunda compra, darlo a conocer el programa de fidelidad. |
| En riesgo | Fue activo pero lleva tiempo sin comprar. La recency es alta. | Campana de reactivacion urgente. Oferta agresiva de win-back antes de que sea irrecuperable. |
Procesamiento por lotes
Para bases de clientes grandes (> 10.000 clientes), el algoritmo K-Means se ejecuta en batches para no saturar la memoria del servidor. El sistema particiona automaticamente la base en bloques, procesa cada uno y consolida los resultados. No necesitas hacer nada: la segmentacion escala sin problemas.
Estimacion de LTV (Lifetime Value)
Para cada cliente, ademas del segmento, el sistema calcula una estimacion de su valor de vida (LTV):
LTV estimado = Gasto mensual promedio x Meses de retencion estimados
Los meses de retencion se estiman a partir de la frecuencia historica y el segmento. Un VIP tiene retencion estimada alta; un cliente en riesgo tiene retencion estimada baja. El LTV te ayuda a decidir cuanto vale la pena invertir en retener a cada cliente.
Transiciones de segmento
El sistema trackea como cambian los clientes de segmento a lo largo del tiempo. Esto te dice si tus acciones de marketing estan funcionando:
- VIP que pasa a Regular: Alerta. Algo esta pasando. Revisar si hay quiebres de stock en sus productos habituales.
- Ocasional que pasa a Regular: Excelente. Tu estrategia de fidelizacion esta funcionando.
- Regular que pasa a En riesgo: Hay que actuar rapido antes de perderlo.
- En riesgo que vuelve a Regular: La campana de reactivacion funciono.
El reporte de transiciones te muestra un flujo mes a mes de cuantos clientes se movieron entre segmentos y en que direccion. Lo que buscas es que los flujos netos vayan hacia arriba (de En riesgo hacia VIP).
Lookup por cliente
Desde la ficha de cualquier cliente podes ver:
- Segmento actual con su etiqueta y color.
- Metricas RFM detalladas (Recency, Frequency, Monetary).
- LTV estimado en pesos.
- Historial de segmento: como fue cambiando su clasificacion en el tiempo.
- Recomendacion de accion basada en el segmento.
Deteccion de anomalias (multicapa)
Las anomalias son cosas que se salen de lo normal. A veces son buenas (un dia vendiste el triple de lo habitual) y a veces son malas (el stock de un producto bajo de golpe sin ventas registradas). El sistema detecta 5 tipos de anomalias automaticamente para que no se te escape nada.
Tipo 1: Anomalias de ventas (Z-score)
El detector de ventas usa Z-score sobre la distribucion historica para identificar valores atipicos. Clasifica cada anomalia en tres subtipos:
| Subtipo | Que significa | Ejemplo |
|---|---|---|
| Spike (pico) | Ventas inusualmente altas en un momento puntual | ”Las ventas de cerveza hoy son 3x el promedio sin que haya promocion activa.” |
| Trend (tendencia) | Cambio sostenido en el nivel de ventas | ”Las ventas de lacteos vienen cayendo un 15% sostenido durante 3 semanas.” |
| Drop (caida) | Caida abrupta en un dia o periodo corto | ”Las ventas de pan cayeron un 60% de un dia para el otro.” |
Cada anomalia incluye el Z-score para que puedas evaluar que tan extrema es la desviacion (un Z-score de 2 es inusual; de 3 es muy raro; de 4+ es excepcional).
Tipo 2: Anomalias de merma (shrinkage)
El detector de merma analiza por categoria con una ventana movil de 90 dias para identificar niveles de merma anormales:
- Compara la merma actual de cada categoria con su promedio historico.
- Detecta cuando una categoria tiene merma significativamente superior a su baseline.
- Util para identificar posibles robos sistematicos, problemas de cadena de frio, o errores de recepcion de mercaderia.
Tipo 3: Anomalias de transacciones (cashier void rate)
Monitorea la tasa de anulacion por cajero. Una tasa de voids inusualmente alta en un cajero puede indicar:
- Error sistematico en el uso del POS.
- Posible fraude (anulaciones ficticias).
- Necesidad de capacitacion.
El sistema compara cada cajero con el promedio general y alerta cuando un cajero esta significativamente por encima.
Tipo 4: Erosion de margen
Monitorea el margen bruto por producto y detecta cuando un producto esta perdiendo margen de forma sostenida. Las causas tipicas:
- El proveedor aumento el costo pero no se actualizo el precio de venta.
- Una promocion vigente esta erosionando el margen mas de lo previsto.
- Error en la carga de precios.
Tipo 5: Pico de desperdicio (waste spike)
Compara el desperdicio de los ultimos 7 dias contra el baseline de los ultimos 30 dias para detectar picos:
- Productos perecederos que se estan venciendo a una tasa inusual.
- Problemas de sobre-pedido en una categoria.
- Fallos en la cadena de frio que causan merma acelerada.
Severidad y umbrales configurables
Cada anomalia se clasifica en tres niveles de severidad:
| Severidad | Criterio | Canal de notificacion |
|---|---|---|
| Critical | Requiere accion inmediata. Potencial perdida significativa. | Push notification + email + alerta en dashboard |
| Warning | Deberia revisarse pronto. Posible problema en desarrollo. | Email + alerta en dashboard |
| Info | Dato interesante, no requiere accion urgente. | Solo alerta en dashboard |
Los umbrales de cada tipo de anomalia son configurables por tienda. Lo que es normal para un supermercado grande puede ser anomalo para un minimarket y viceversa. Desde Inteligencia > Anomalias > Configuracion podes ajustar:
- Sensibilidad por tipo: Estricto, Normal o Permisivo para cada tipo de anomalia individualmente.
- Umbrales de Z-score: Para afinar cuando algo se considera anomalo.
- Canales de notificacion: Que alertas queres recibir por push, por email o solo en el dashboard.
Acciones sobre anomalias
Cuando el sistema detecta una anomalia, aparece en tu panel de alertas. Podes:
- Reconocer: “OK, lo vi, me encargo.” La anomalia deja de aparecer como pendiente.
- Marcar como falso positivo: “Esto no es una anomalia real, fue por tal motivo.” El sistema aprende y ajusta la sensibilidad para no repetir falsas alarmas similares.
Pronostico de flujo de caja (Ensemble + Monte Carlo)
El pronostico de flujo de caja va mas alla de una simple prediccion lineal. Combina el mismo enfoque de ensemble de la demanda con simulacion Monte Carlo para darte no solo una prediccion puntual, sino un rango completo de escenarios posibles.
Arquitectura del pronostico
El flujo de caja se pronostica en tres capas:
Capa 1: Prediccion de ingresos (Ensemble Prophet + SARIMAX)
Usa el mismo ensemble de Prophet + SARIMAX descrito en el pronostico de demanda, pero aplicado a los ingresos totales del negocio. Incluye los mismos regresores argentinos (Tarjeta Alimentar, quincena, feriados) para capturar los ciclos de facturacion locales.
Capa 2: Prediccion de egresos
Los egresos se modelan en dos componentes:
- Gastos fijos: Se proyectan directamente desde el modulo de finanzas (alquiler, sueldos, servicios). Son conocidos y predecibles.
- Gastos variables: Se estiman como proporcion de los ingresos predichos, calibrados con la relacion historica gastos/ventas.
Capa 3: Simulacion Monte Carlo (1.000 escenarios)
Aca es donde el pronostico se vuelve poderoso. En vez de darte un solo numero, el sistema ejecuta 1.000 simulaciones variando aleatoriamente los parametros dentro de sus distribuciones de probabilidad. De esas 1.000 simulaciones se extraen:
| Metrica | Que significa |
|---|---|
| P10 (Percentil 10) | Escenario pesimista. Solo el 10% de las simulaciones dieron un resultado peor que este. |
| P50 (Mediana) | Escenario mas probable. El valor central de las 1.000 simulaciones. |
| P90 (Percentil 90) | Escenario optimista. Solo el 10% de las simulaciones dieron un resultado mejor que este. |
Horizonte y metricas
| Parametro | Valor |
|---|---|
| Horizonte | 90 dias |
| Regresores | Tarjeta Alimentar, quincena, feriados nacionales |
| Simulaciones Monte Carlo | 1.000 |
| Actualizacion | Semanal (domingos 3 AM) |
Que muestra el reporte
El reporte de flujo de caja proyectado te muestra dia a dia:
- Ingresos esperados con banda P10-P90.
- Egresos esperados (fijos + variables estimados).
- Posicion de caja acumulada: El saldo que vas a tener cada dia, considerando ingresos menos egresos.
- Alertas de liquidez: Si en algun punto del horizonte la posicion acumulada cruza debajo de cero (o de un umbral que vos definis), el sistema te avisa con anticipacion para que tomes accion.
Tasa de conversion (Vigilancia + Ventas)
La tasa de conversion te dice que porcentaje de las personas que entran a tu local terminan comprando algo. Es una metrica clave de retail que antes solo podian medir las grandes cadenas con sistemas carisimos.
Requisito: camaras de conteo de personas
La tasa de conversion depende de saber cuanta gente entra al local. Para eso necesitas camaras de conteo de personas (people-counting cameras) configuradas en el modulo de vigilancia (ver Vigilancia y Seguridad). Estas camaras se instalan en las entradas del local y cuentan automaticamente cada persona que ingresa y sale.
Sin camaras de conteo, la tasa de conversion no se puede calcular y esta seccion del modulo no estara disponible.
Formula
Tasa de conversion = Transacciones del dia / Visitantes del dia x 100
- Visitantes: Contados por las camaras de conteo de personas en las entradas.
- Transacciones: Cantidad de tickets cerrados en el POS.
Metricas disponibles
| Metrica | Detalle |
|---|---|
| Conversion diaria | Porcentaje de hoy. Se registra dia a dia para construir serie historica. |
| Promedio 7 dias | Suaviza fluctuaciones diarias. Ideal para seguimiento semanal. |
| Promedio 30 dias | La metrica estrategica. Elimina ruido y muestra la tendencia real. |
| Por franja horaria | Saber a que horas convertis mejor y a que horas la gente “mira pero no compra”. |
Tendencia automatica
El sistema clasifica automaticamente la tendencia de tu tasa de conversion comparando el promedio de los ultimos 7 dias con el de los 30 anteriores:
| Estado | Significado | Accion sugerida |
|---|---|---|
| Mejorando | La tasa viene subiendo en las ultimas semanas. | Segui haciendo lo que estas haciendo. Identifica que cambio para replicarlo. |
| Estable | La tasa se mantiene sin cambios significativos. | Busca oportunidades para mejorar (surtido, layout, atencion). |
| En declive | La tasa viene bajando sostenidamente. | Alerta. Revisa surtido, precios, atencion y experiencia en el local. |
Un supermercado tipico tiene una tasa de conversion entre 70% y 90%. Si tu tasa esta por debajo o en declive sostenido, hay un problema que requiere atencion.
Strategy Health Scoring (puntaje de salud estrategica)
El Health Score es un sistema de scoring de 3 niveles que resume la salud de tu negocio en un numero de 0 a 100. No es un unico indicador: es una jerarquia que va desde KPIs individuales hasta pilares estrategicos.
Los 3 niveles
- Nivel 1: KPIs individuales. Cada indicador clave (margen bruto, rotacion de inventario, tasa de conversion, merma, etc.) tiene su propio score de 0 a 100 basado en umbrales definidos para la industria y calibrados a tu negocio.
- Nivel 2: Estrategias. Los KPIs se agrupan en estrategias (rentabilidad, eficiencia operativa, experiencia del cliente, etc.). Cada estrategia tiene un score calculado como promedio ponderado de sus KPIs componentes. Los pesos reflejan la importancia relativa de cada KPI dentro de la estrategia.
- Nivel 3: Pilares. Las estrategias se agrupan en pilares de negocio (financiero, operativo, comercial). Cada pilar tiene su score como promedio ponderado de sus estrategias. El Health Score general es el promedio ponderado de los pilares.
Escala y significado
| Rango | Significado | Color |
|---|---|---|
| 80-100 | Excelente. El area esta funcionando de forma optima. | Verde |
| 60-79 | Bueno. Hay oportunidades de mejora pero nada critico. | Amarillo-verde |
| 40-59 | Atencion. Algunos indicadores estan fuera de rango. | Amarillo |
| 20-39 | Preocupante. Se requieren acciones correctivas. | Naranja |
| 0-19 | Critico. Accion inmediata necesaria. | Rojo |
Alertas automaticas
El sistema genera alertas cuando:
- Un KPI cruza un umbral critico (ej: merma supera el 3%).
- Una estrategia baja mas de 10 puntos en una semana.
- Un pilar entra en zona de atencion (< 60).
- El Health Score general cae debajo de 50.
Cada alerta incluye el detalle del KPI que la disparo, la tendencia (si viene bajando hace tiempo o es una caida puntual) y acciones sugeridas.
Reconocimiento facial (pgvector)
El modulo de reconocimiento facial permite identificar personas en las camaras del local para seguridad y personalizacion de la experiencia, con un enfoque de privacidad primero que no almacena fotos ni video.
Como funciona
| Paso | Proceso | Donde ocurre |
|---|---|---|
| 1 | La camara captura un frame con un rostro | En el local (edge) |
| 2 | Un modelo de deteccion facial extrae el rostro del frame | En el local (edge) |
| 3 | El rostro se convierte en un vector de 512 dimensiones (embedding) | En el local (edge) |
| 4 | El frame original se descarta. Solo se envia el vector numerico | Red local |
| 5 | El vector se compara contra vectores conocidos en PostgreSQL usando pgvector | Servidor |
| 6 | Si hay match (distancia coseno debajo del umbral), se identifica a la persona | Servidor |
Privacidad primero
El diseno del modulo prioriza la privacidad de forma estructural, no como un feature agregado:
- Edge processing: Todo el procesamiento de imagen ocurre en el dispositivo local. Las imagenes nunca viajan por la red ni se almacenan en la nube.
- Solo vectores: Lo que se almacena en la base de datos son vectores numericos de 512 dimensiones. No son fotos. No se puede reconstruir un rostro a partir de su vector.
- No cloud video: No hay streaming de video a la nube. Las camaras procesan localmente y solo transmiten vectores.
- PostgreSQL pgvector: Los vectores se almacenan en tu propia base de datos PostgreSQL con la extension pgvector, que permite busquedas de similitud eficientes sin servicios externos.
Pipeline automatizado: 18 tareas Celery Beat
Todo lo que describimos arriba corre automaticamente. No necesitas abrir un panel, ejecutar un analisis ni recordar nada. El pipeline de Celery Beat ejecuta 18 tareas programadas en horarios de baja actividad para que cuando llegues al local a la manana, todo este actualizado.
Tareas diarias (corren todas las noches)
| Tarea | Horario | Que hace |
|---|---|---|
| Pronostico de demanda | 3:00 AM | Actualiza predicciones de todos los productos activos con datos del dia anterior |
| Backfill de predicciones | 3:30 AM | Compara predicciones con ventas reales y calcula metricas de precision (MAPE) |
| Tasa de conversion | 1:00 AM | Calcula la conversion del dia anterior y actualiza tendencias |
| Health Score KPIs | 4:00 AM | Recalcula todos los KPIs individuales con datos actualizados |
| Health Score Estrategias | 4:15 AM | Recalcula los scores de estrategia y pilares |
| Deteccion de anomalias - ventas | 4:30 AM | Evalua anomalias de ventas del dia anterior |
| Alertas de salud | 4:45 AM | Genera notificaciones si hay cambios significativos en health scores |
| Urgencia de reposicion | 5:00 AM | Cruza stock actual con demanda predicha y calcula urgencias |
Tareas periodicas (cada N horas)
| Tarea | Frecuencia | Que hace |
|---|---|---|
| Deteccion de anomalias - stock | Cada 4 horas | Busca movimientos de stock sospechosos |
| Deteccion de anomalias - transacciones | Cada 4 horas | Evalua tasa de voids por cajero |
| Deteccion de anomalias - waste | Cada 6 horas | Compara desperdicio reciente vs baseline |
| Deteccion de anomalias - margen | Cada 6 horas | Monitorea erosion de margen por producto |
Tareas semanales
| Tarea | Dia y horario | Que hace |
|---|---|---|
| Analisis de canasta | Lunes 2:00 AM | Procesa transacciones de la semana con FP-Growth |
| Combos sugeridos | Lunes 2:30 AM | Genera sugerencias de combos a partir de las reglas de asociacion |
| Cross-merchandising | Lunes 2:45 AM | Actualiza recomendaciones de ubicacion en gondola |
| Segmentacion RFM | Domingo 2:00 AM | Reclasifica todos los clientes con K-Means |
| Transiciones de segmento | Domingo 2:30 AM | Calcula flujos de clientes entre segmentos |
| Pronostico de flujo de caja | Domingo 3:00 AM | Ejecuta ensemble + Monte Carlo para 90 dias |
Todos los horarios estan configurados para ejecutarse en madrugada y primeras horas, cuando no hay actividad de venta, para no impactar la performance del sistema.
Ejecucion manual vs. automatica
Ademas del pipeline automatico, podes ejecutar cualquier analisis on-demand desde Inteligencia > Ejecutar analisis:
- Selecciona el tipo de analisis que queres ejecutar.
- Configura los parametros (periodo, categoria, producto, etc.).
- Hace clic en Ejecutar ahora.
- El analisis corre en segundo plano (algunos toman segundos, otros varios minutos).
- Cuando termina, te notifica y podes ver los resultados.
Esto es util cuando queres resultados actualizados antes del proximo ciclo automatico, necesitas un analisis con parametros especificos, o estas explorando datos.
Resultados de analisis
Desde Inteligencia > Resultados tenes acceso al historial completo de todos los analisis ejecutados:
- Tipo de analisis: Canasta, demanda, anomalias, segmentacion, conversion, flujo de caja, health scoring.
- Parametros: Con que configuracion se ejecuto.
- Estado: Completado, en proceso, fallido.
- Duracion: Cuanto tardo en ejecutarse.
- Fecha: Cuando se ejecuto (automatico vs manual).
- Resultados: Link para ver los resultados detallados.
Este historial te permite comparar resultados entre ejecuciones, ver como evolucionan las metricas y detectar si algun analisis esta fallando sistematicamente.
Degradacion elegante: siempre una respuesta
Una decision de diseno fundamental: el sistema siempre te da una respuesta, no importa cuanta (o cuan poca) informacion tenga. Nunca vas a ver una pantalla vacia que diga “datos insuficientes”.
Esta cadena de fallback aplica a todos los motores. Nunca vas a quedarte sin datos para tomar decisiones, aunque la precision mejora significativamente con mas historia.
Permisos por rol
Contenido relacionado
- Productos: Productos y Catalogo para entender las categorias y datos de productos que alimentan los analisis.
- Clientes: Clientes y Fidelizacion para ver los perfiles de clientes que se segmentan con RFM.
- Marketing: Marketing y Promociones para crear promociones basadas en los insights del analisis de canasta.
- Vigilancia: Vigilancia y Seguridad para el conteo de trafico que alimenta la tasa de conversion y el reconocimiento facial.
- Finanzas: Finanzas y Contabilidad para el flujo de caja historico que alimenta el pronostico con Monte Carlo.
- Inventario: Inventario y Stock para los datos de stock que alimentan la urgencia de reposicion y las anomalias de merma.