Inteligencia artificial ciudadana con Power Platform

Machine Learning
Microsoft Power Platform
PowerApps
Power Automate
Power BI

Una tendencia tecnológica general es la creciente popularidad de los roles de inteligencia artificial de los ciudadanos. Estos roles son profesionales de la empresa que buscan mejorar los procesos empresariales mediante la aplicación de tecnologías de aprendizaje automático (ML) y e inteligencia artificial (IA). Un colaborador significativo de esta tendencia es la creciente madurez y disponibilidad de las herramientas de poco código para desarrollar modelos de ML.

Con una tasa de errores alta conocida para estas iniciativas, la capacidad de crear rápidamente prototipos y validar una aplicación de inteligencia artificial en una configuración real se convierte en un factor clave para un enfoque de fracasar y responder rápido a los errores. Hay dos herramientas clave para desarrollar modelos que modernizan los procesos e impulsan resultados transformadores:

  • Un kit de herramientas de ML para todos los niveles de aptitud
    • Admite el desarrollo de ML sin código y totalmente codificado.
    • Tiene una GUI flexible y de código bajo.
    • Permite a los usuarios abastecer y preparar datos rápidamente.
    • Permite a los usuarios compilar e implementar modelos rápidamente.
    • Tiene funcionalidades avanzadas y automatizadas de ML para el desarrollo de algoritmos de ML.
  • Un kit de herramientas de desarrollo de aplicaciones con poco código
    • Permite a los usuarios compilar aplicaciones personalizadas y flujos de trabajo de automatización.
    • Crea flujos de trabajo para que los consumidores y los procesos empresariales puedan interactuar con un modelo de ML.

Posibles casos de uso

Estos kits de herramientas minimizan el tiempo y el esfuerzo necesarios para crear prototipos de las ventajas de un modelo de ML en un proceso empresarial. Puede ampliar fácilmente un prototipo a una aplicación de nivel de producción. Entre los usos de estas técnicas se incluyen:

  • Operaciones de fabricación con aplicaciones heredadas que usan predicciones deterministas obsoletas. Estas situaciones pueden beneficiarse de la precisión mejorada de un modelo de ML. La demostración de una precisión mejorada requiere un modelo y un esfuerzo de desarrollo para la integración con sistemas heredados locales.
  • Operaciones del centro de llamadas con aplicaciones heredadas que no se ajustan cuando se produce un desfase de datos. Los modelos que se vuelven a entrenar automáticamente pueden proporcionar un aumento significativo en la predicción de abandono o la precisión de la generación de perfiles de riesgo. La validación requiere la integración con los sistemas existentes de administración de relaciones con clientes y administración de vales. Esta integración podría ser costosa.

Architecture

La arquitectura siguiente se extiende al escenario de aanálisis de un extremo a otro con Azure Synapse. Permite que un modelo de ML personalizado se entrene en Azure Machine Learning y se implemente con una aplicación personalizada compilada con Microsoft Power Platform.

Azure Machine Learning cumple el rol de una GUI de código bajo para el desarrollo de ML. Ha automatizado el aprendizaje automático y la implementación en puntos de conexión por lotes o en tiempo real. Microsoft Power Platform, que incluye Microsoft Power Apps y Microsoft Power Automate, proporciona los kits de herramientas para compilar rápidamente una aplicación personalizada y un flujo de trabajo que implemente el algoritmo de ML. Los usuarios finales de la empresa ahora pueden compilar aplicaciones de ML de producción para transformar procesos empresariales heredados.

Arquitectura de inteligencia artificial ciudadana con Microsoft Power Platform

Descargue un archivo Visio de esta arquitectura.

  1. Ingesta: use canalizaciones de Azure Synapse para extraer datos por lotes de una amplia variedad de orígenes, tanto en el entorno local como en la nube. Las canalizaciones se pueden desencadenar en función de una programación predefinida o en respuesta a un evento. También se pueden invocar mediante una llamada a las API de REST. Puede usar Azure Event Hubs o Azure IoT Hubs para ingerir flujos de datos generados por aplicaciones cliente o dispositivos IoT. Event Hubs o IoT Hub ingieren y almacenan datos de streaming, al tiempo que conservan la secuencia de los eventos recibidos. Los consumidores pueden conectarse a los puntos de conexión del centro para recuperar mensajes para su procesamiento.
  2. Almacenamiento: los datos ingeridos se pueden entregar directamente en formato sin procesar y, a continuación, transformarse en Azure Data Lake. Los datos, una vez seleccionados y transformados en estructuras relacionales, se pueden presentar para su consumo en Azure Synapse Analytics.
  3. Entrenamiento e implementación del modelo: Azure Machine Learning proporciona un servicio de ML de nivel empresarial para compilar e implementar modelos con mayor rapidez. Proporciona a los usuarios de todos los niveles de aptitud un diseñador de código bajo, ML automatizado y un entorno de Jupyter notebook hospedado. Los modelos se pueden implementar como puntos de conexión en tiempo real en Azure Kubernetes Service o como un punto de conexión administrado de Machine Learning. Para la inferencia por lotes de modelos de ML, puede usar canalizaciones de Machine Learning.
  4. Consumo: un modelo, ya sea por lotes o en tiempo real, publicado en Machine Learning puede generar un punto de conexión de REST que se puede consumir en una aplicación personalizada compilada mediante la plataforma Power Apps de código bajo. También puede llamar a un punto de conexión de Machine Learning en tiempo real desde un informe de Power BI para presentar predicciones en informes empresariales.

Nota

Ambas pilas de Machine Learning y Power Platform tienen una variedad de conectores integrados para ayudar a ingerir datos directamente. Pueden ser útiles para un producto mínimo viable (MVP) único. Sin embargo, las secciones Ingesta y Almacenamiento de la arquitectura aconsejan sobre el rol de las canalizaciones de datos estandarizadas para el aprovisionamiento y almacenamiento de datos de diferentes orígenes a escala, patrones que normalmente implementan y mantienen los equipos de la plataforma de datos empresarial.

Componentes

Servicios de Power Platform

  • Microsoft Power Platform: conjunto de herramientas para analizar datos, compilar soluciones, automatizar procesos y crear agentes virtuales. Incluye Power App, Power Automate, Power BI y Power Virtual Agents.
  • Microsoft Power Apps: conjunto de aplicaciones, servicios, conectores y plataforma de datos. Proporciona un entorno de desarrollo rápido de aplicaciones para compilar aplicaciones personalizadas para satisfacer sus necesidades empresariales.
  • Microsoft Power Automate: servicio que le ayuda a crear flujos de trabajo automatizados entre sus aplicaciones y servicios favoritos. Úselo para sincronizar archivos, obtener notificaciones, recopilar datos, etc.
  • Microsoft Power BI: colección de servicios de software, aplicaciones y conectores que funcionan conjuntamente para convertir los orígenes de datos no relacionados en información coherente, interactiva y visualmente atractiva.

Servicios de Azure

  • Azure Machine Learning: servicio de ML empresarial para compilar e implementar modelos rápidamente. Proporciona a los usuarios en todos los niveles de aptitud un diseñador de código bajo, ML automatizado y un entorno de Jupyter Notebook hospedado para admitir su propio IDE preferido.
  • Puntos de conexión administrados de Machine Learning: puntos de conexión en línea que permiten implementar el modelo sin tener que crear y administrar la infraestructura subyacente.
  • Azure Kubernetes Service: Machine Learning tiene distintas modalidades de soporte técnico en los diferentes destinos de proceso. Azure Kubernetes Service es uno de estos destinos, que es una excelente opción para los puntos de conexión del modelo en tiempo real de nivel empresarial.
  • Azure Data Lake: sistema de archivos compatible con Hadoop. Tiene un espacio de nombres jerárquico integrado, y la escala y economía masivas de Azure Blob Storage.
  • Azure Synapse Analytics: servicio de análisis ilimitado que combina la integración de datos, el almacenamiento de datos empresariales y el análisis de macrodatos.
  • Azure Event Hubs y Azure IoT Hub: ambos servicios para ingieren flujos de datos generados por aplicaciones cliente o dispositivos IoT. A continuación, ingieren y almacenan los datos de streaming, al tiempo que conservan la secuencia de los eventos recibidos. Los consumidores pueden conectarse a los puntos de conexión del centro para recuperar mensajes para su procesamiento.

Servicios de plataforma

Para ayudar a garantizar la calidad de las soluciones de Azure, siga las recomendaciones y las instrucciones del Marco de buena arquitectura de Azure. El marco consta de cinco pilares de excelencia arquitectónica:

  • Optimización de costos
  • Excelencia operativa
  • Eficiencia del rendimiento
  • Confiabilidad
  • Seguridad

Para crear un diseño que respete estas recomendaciones, considere la posibilidad de usar los siguientes servicios:

  • Azure Active Directory: servicios de identidad, inicio de sesión único y autenticación multifactor entre cargas de trabajo de Azure.
  • Azure Cost Management and Billing: gobernanza financiera sobre las cargas de trabajo de Azure.
  • Azure Key Vault: administración segura de credenciales y certificados.
  • Azure Monitor: recopilación, análisis y visualización de datos de telemetría de sus recursos de Azure. Use Monitor para identificar de forma proactiva los problemas y maximizar el rendimiento y la confiabilidad.
  • Azure Security Center: refuerce y supervise la posición de seguridad de las cargas de trabajo de Azure.
  • Azure DevOps y GitHub: implemente prácticas de DevOps para aplicar la automatización y el cumplimiento en las canalizaciones de implementación y desarrollo de cargas de trabajo para Azure Synapse y Azure Machine Learning.
  • Azure Policy: implemente normas organizacionales y gobernanza para la coherencia de los recursos, el cumplimiento normativo, la seguridad, el costo y la administración.

Alternativas

Un producto mínimo viable (MVP) de ML se beneficia de la velocidad de obtención de resultados. En algunos casos, las necesidades de un modelo personalizado se pueden satisfacer mediante los servicios Azure Cognitive Services o Azure Applied AI Services entrenados previamente. En otros, Power Apps AI Builder puede proporcionar un modelo adecuado para la finalidad.

Consideraciones

Si usa estos servicios para crear una prueba de concepto o MVP, aún no ha terminado. Todavía queda trabajo para crear una solución de producción. Los marcos como el Marco de buena arquitectura de Azure proporcionan instrucciones de referencia y procedimientos recomendados para aplicarlos a la arquitectura.

Disponibilidad

La mayoría de los componentes usados en este escenario de ejemplo son servicios administrados que se escalan automáticamente. La disponibilidad de los servicios usados en este ejemplo varía según la región.

Las apps basadas en aprendizaje automático suelen requerir un conjunto de recursos para el entrenamiento y otro para atender solicitudes. Los recursos necesarios para el entrenamiento no necesitan generalmente una alta disponibilidad, ya que las solicitudes de producción en vivo no afectan directamente a estos recursos. Los recursos necesarios para atender solicitudes necesitan alta disponibilidad.

DevOps

Las prácticas de DevOps se usan para organizar el enfoque integral que se usa en este ejemplo. Si su organización está empezando a utilizar DevOps, la lista de comprobación de DevOps puede ayudarle con los primeros pasos.

En la guía de DevOps de Machine Learning se presentan los procedimientos recomendados y los aprendizajes sobre la adopción de operaciones de ML (MLOps) en la empresa con Machine Learning.

La automatización de DevOps se puede aplicar a la solución Power Platform que se proporciona en este ejemplo. Para obtener más información sobre DevOps de Power Platform, vea Microsoft Power Platform Build Tools para Azure DevOps: Power Platform | Microsoft Docs.

Implementación de este escenario

Considere este escenario empresarial: un agente de campo usa una aplicación que calcula el precio de mercado de un automóvil. Puede usar Machine Learning para crear rápidamente un prototipo de un modelo de ML de esta aplicación. Use un diseñador de código bajo y las características de ML para crear el modelo y, a continuación, impleméntelo como un punto de conexión de REST en tiempo real.

El modelo puede demostrar el concepto, pero un usuario no tiene ninguna manera fácil de consumir un modelo implementado como una API de REST. Power Platform puede ayudar a cerrar este último tramo como se representa a continuación.

Un modelo de ML creado en Machine Learning obtiene datos de automóviles de Azure Data Lake y proporciona inferencias a un punto de conexión. Una aplicación creada con Power Platform accede al punto de conexión e interactúa con el usuario.

Esta es una interfaz de usuario para la aplicación, creada en Power Apps mediante la interfaz de código bajo que Power Apps proporciona.

La interfaz de usuario proporciona varios controles, como botones y listas desplegables, para que el usuario introduzca los datos del automóvil. La aplicación predice un precio y lo muestra cuando el usuario selecciona el botón Predecir.

Puede usar Power Automate para crear un flujo de trabajo de código bajo para analizar la entrada del usuario, pasarla al punto de conexión de Machine Learning y recuperar la predicción. También puede usar Power BI para interactuar con el modelo de Machine Learning y crear paneles e informes empresariales personalizados.

Esquema del flujo de trabajo.

Para implementar este ejemplo de un extremo a otro, siga las instrucciones paso a paso con este ejemplo de Power App.

Escenarios ampliados

Implementación en Microsoft Teams

La aplicación de ejemplo proporcionada en el ejemplo anterior también se puede implementar en Microsoft Teams. Teams proporciona un canal de distribución excelente para las aplicaciones y proporciona a los usuarios una experiencia de aplicación colaborativa. Para obtener más información sobre la implementación de Power Apps en Teams, consulte Publicación de la aplicación mediante la aplicación Power Apps en Teams: Power Apps | Microsoft Docs.

Consumo de la API desde varias aplicaciones y automatizaciones

En este ejemplo, se configura un flujo de la nube de Power Automate para consumir el punto de conexión de REST como una acción HTTP. En su lugar, podemos configurar un conector personalizado para el punto de conexión de REST y consumirlo directamente desde Power Apps o desde Power Automate. Este enfoque es útil cuando queremos que varias aplicaciones consuman el mismo punto de conexión. También proporciona gobernanza mediante el uso de la directiva DLP del conector en el Centro de administración de Power Platform. Para crear un conector personalizado, consulte Uso de un conector personalizado desde una aplicación de Power Apps | Microsoft Docs. Para obtener más información sobre la DLP del conector de Power Platform, consulte Directivas de prevención de pérdida de datos: Power Platform | Microsoft Docs.

Precios

Precios de Azure: los servicios de infraestructura como servicio (IaaS) y plataforma como servicio (PaaS) propios de Azure usan un modelo de precios basado en el consumo. No requieren una licencia ni una cuota de suscripción. En general, use la calculadora de precios de Azure para calcular los costos. Para otras consideraciones, consulte Optimización de costos en el marco de buena arquitectura.

Precios de Power Platform: Power Apps, Power Automate y Power BI son aplicaciones de software como servicio (SaaS) y tienen sus propios modelos de precios, incluidos por plan de aplicación y por usuario.

Pasos siguientes