Aproveche las perspectivas de los datos en tiempo real para optimizar los precios y obtener una ventaja competitiva.
caso de uso: Personalización, IA Gen
Industrias: Comercio minorista
Productos: MongoDB Atlas, Colecciones de MongoDB Atlas, Clústeres de MongoDB Atlas
Socios: Google Cloud, Vertex AI, Cloud Functions
Resumen de la solución
La fijación dinámica de precios, el arte de ajustar los precios en tiempo real en función de las condiciones del mercado, es una estrategia crucial para las empresas que buscan maximizar su ganancia y obtener una ventaja competitiva. Para implementar eficazmente la fijación de precios dinámica, es esencial contar con una infraestructura tecnológica sólida. Esta solución integra MongoDB Atlas y Google Cloud Vertex AI para crear un microservicio de precios dinámicos en tiempo real. Vertex AI Notebooks y los modelos de TensorFlow utilizan Google Cloud Pub/Sub para una rápida ingesta de datos con el fin de analizar el comportamiento de los clientes y optimizar las estrategias de precios. MongoDB Atlas funciona como una tienda de **funcionalidad** flexible para datos de precios complejos, mientras que los recursos computacionales robustos de Google Cloud permiten cálculos complejos y hospedaje.
El resultado es un sistema de precios escalable y adaptable que ofrece ajustes de precios instantáneos basados en la información de mercado más reciente. Esta integración mejora la eficiencia operativa al gestionar eficazmente grandes conjuntos de datos y escenarios de precios complejos.
Arquitecturas de Referencia
La arquitectura para un microservicio de precios dinámicos integra MongoDB y Google Cloud Vertex IA para facilitar el procesamiento de datos en tiempo real y ajustes de precios receptivos. Google Cloud Pub/Sub gestiona la ingestión y distribución de los datos de comportamiento de los clientes, lo que permite un procesamiento de mensajes escalable y eficiente. Estos datos se limpian y procesan luego en Vertex AI Notebooks, donde TensorFlow desarrolla modelos de aprendizaje automático para predecir precios óptimos basados en patrones identificados en datos históricos.
MongoDB Atlas funciona como repositorio central de datos y almacén de características, almacenando datos complejos de precios y dando soporte a los modelos de aprendizaje automático. El modelo de documentos de MongoDB proporciona la flexibilidad necesaria para gestionar y actualizar dinámicamente los datos de precios. Google Cloud Functions orquesta todo el flujo de trabajo: procesa los eventos de los clientes, los convierte en tensores y garantiza que las predicciones del modelo se actualicen en tiempo real en el catálogo de productos de MongoDB Atlas. En el diagrama de arquitectura, el flujo de datos azul ilustra cómo se incorporan los datos de los eventos de los clientes a un tema de Pub/Sub, lo que genera una suscripción push que activa la Cloud Function. Esta función transforma los eventos sin procesar en tensores y actualiza los precios previstos en el catálogo de productos de MongoDB.
Este enfoque arquitectónico permite el aislamiento de los hilos de eventos sin procesar, lo que facilita el desarrollo de diversos servicios que pueden reaccionar en tiempo real para la fijación dinámica de precios u operar de forma asíncrona para el entrenamiento de modelos. Al mantener un acoplamiento flexible entre los componentes, el sistema es resiliente y evita fallos totales si una parte experimenta problemas. Los editores y suscriptores pueden continuar procesando su lógica de forma independiente, lo que garantiza un sistema robusto y flexible que admite un funcionamiento continuo y actualizaciones fluidas.
Figura 1. Arquitectura de precios dinámicos que integra diferentes componentes de Google Cloud y MongoDB Atlas como tienda de funcionalidades
Ventaja de MongoDB para el modelado de eventos
MongoDB permite almacenar tensores y características relacionadas en una sola colección para soportar arquitecturas basadas en eventos. Este enfoque simplifica la recuperación y el procesamiento de datos, pero requiere una gestión cuidadosa, ya que los documentos grandes pueden afectar el rendimiento. Esta flexibilidad también facilita el análisis de datos integrado y la toma de decisiones en tiempo real.
Figura 2. Estructura de datos en la colección de eventos que representa una visión simulada del usuario de calcetines blancos MongoDB, que incluye información sobre el precio
Para obtener más información, consulta nuestra entrada de blog "Vertex AI y MongoDB para la fijación inteligente de precios en el sector minorista".
Compilar la solución
El repositorio GitHub contiene instrucciones detalladas sobre cómo construir esta solución.
Configurar MongoDB Atlas
Ingresa a MongoDB Atlas y crea un nuevo clúster.
Elija una región que esté más cerca de su base de usuarios para lograr un rendimiento óptimo.
Configure la seguridad de la siguiente manera:
Crea usuarios de base de datos con roles específicos.
Habilite el acceso IP para proteger la conexión de la base de datos.
Conéctese a su clúster usando la cadena de conexión proporcionada por Atlas para la integración de aplicaciones.
Configura Google Cloud
Inicia sesión en Google Cloud console y crea un nuevo Proyecto para tu microservicio.
Asegúrese de haber habilitado las API necesarias para su proyecto.
Instalar e inicializar la CLI de Google Cloud.
Autentifícate con tu cuenta de Google Cloud.
Define tu Proyecto como el por defecto.
Desarrollar el microservicio y el modelo
Clona el repositorio y navega al directorio del microservicio dynamicPricing.
Instale los paquetes de Python necesarios usando pip.
Configura variables de entorno para MongoDB Atlas, credenciales de Google Cloud y Pub/Sub.
Configurar un tema de Pub/Sub en Google Cloud.
Desarrolle la lógica de precios para el servicio dynamicPricing.
Utilice Vertex AI para crear un nuevo cuaderno para conectarse a MongoDB y entrenar el modelo.
Entrena un modelo de TensorFlow limpiando datos, construyendo y entrenando el modelo.
Guarde y cargue el modelo entrenado en Google Cloud Storage.
Registre el modelo en Vertex AI para su gestión e implementación.
Implementar un modelo en un punto final
Implementar el modelo.
Accede a la sección de Vertex IA en la consola de Google Cloud.
Localice y seleccione el modelo que desea implementar.
Haz clic en "implementar al endpoint" en la pestaña "Deploy & Test".
Completa la configuración de la implementación configurando los ajustes del modelo y la supervisión.
Retrieve Endpoint ID.
Ve a "Endpoints" en Vertex IA y anota el ID del endpoint para usarlo en la configuración de Cloud Function.
Configurar la función en la nube.
Crea una nueva función en la nube en Google Cloud.
Establece el activador de la función en el tema de Pub/Sub que creaste.
Implemente código en la función para procesar previamente datos de eventos, invocar el modelo de Vertex IA para predicciones y actualizar MongoDB con los resultados.
Preparar dependencias.
Asegúrese de que el archivo requirements.txt incluya todas las librerías necesarias para la función en la nube.
Simular eventos de clientes.
Utiliza un script proporcionado para generar datos sintéticos de comportamiento del cliente.
Envía estos datos a MongoDB y Pub/Sub para probar la integración del modelo y del microservicio.
Ejecutar la simulación.
Ejecuta el script para validar el sistema completo de extremo a extremo.
Lecciones clave
Almacén de características centralizado: MongoDB funciona como un almacén de características, actuando como un repositorio centralizado para almacenar, gestionar y procesar características para modelos de aprendizaje automático (ML). Sus capacidades polimórficas utilizan una única interfaz para representar diversos tipos de datos, lo que permite incorporar nuevas características y adaptar los modelos de precios. En el contexto de la fijación dinámica de precios, esta capacidad facilita la incorporación de nuevos factores o variables de precios sin interrumpir las operaciones.
Escalabilidad y eficiencia: Google Cloud Pub/Sub puede gestionar grandes volúmenes de datos de clientes de manera eficiente, garantizando escalabilidad para aplicaciones del mundo real.
Actualizaciones de precios en tiempo real: Funciones de nube activan modelos TensorFlow para generar precios dinámicos basados en el comportamiento del cliente. Estos precios generados se insertan o actualizan (upsert) en la colección del catálogo de productos en MongoDB, facilitando ajustes en tiempo real en la aplicación de comercio electrónico.
Autores
Francesco Baldissera, MongoDB
Sebastian Rojas Arbulu, MongoDB