Servir a un modelo ML

Objective

After completing this lesson, you will be able to desplegar un modelo de ML en SAP AI Core y utilizar la URL de despliegue para inferir

Implementación de modelos en SAP AI Core

Después de formar un modelo, es decir, ha aprendido patrones (ocultos) del conjunto de datos proporcionado, el modelo debe desplegarse. Al desplegar el modelo, se pueden enviar nuevos datos al modelo y obtener una "predicción" para el registro de datos indicado. Esto también se llama servicio de modelo o inferencia.

Un clúster de Kubernetes se puede configurar para proporcionar contenedores de CPU (baratos) y GPU para servicio de modelo.

Además, se puede enviar un gran número de solicitudes al servidor de modelo al mismo tiempo. Con el fin de procesar estas solicitudes de "inferencia" de manera oportuna, Kubernetes permite escalar el Model Server "bajo demanda".

Aquí tenemos 2 casos:

  • Escalado automático: añadir (clonar) nuevos contenedores bajo demanda.

  • Escalar a cero: permite la rentabilidad y el pago por uso, cerrando los contenedores inactivos.

La implementación de un modelo en SAP AI Core consiste en escribir una aplicación web que pueda atender las solicitudes de inferencia a través de un punto final expuesto en Internet, que se podría escalar fácilmente en la infraestructura de Kubernetes.

Pasos para desplegar un modelo formado: enviar una plantilla de servicio para obtener el URL de despliegue, que se puede utilizar en cualquier aplicación para la inferencia de modelo.

Aplicación de servicio

Para servir a un modelo, debe codificar y desarrollar una aplicación de servicio que se ejecutará en forma de contenedor.

Todo comienza con una solicitud de inferencia enviada a un extremo. Internamente, la aplicación web tiene que interpretar los datos contenidos en el cuerpo de la llamada y luego tiene que recuperar el modelo del almacén de objetos de hiperescalador, aplicarlo a los datos y empaquetar la predicción en una respuesta que será consumida por un servicio personalizado.

Descripción del flujo de trabajo de aplicación en servicio: Cuando los datos son recibidos por el servidor modelo, los datos pueden ser preprocesados, por ejemplo, normalizados antes de alimentar el modelo y obtener el resultado de inferencia.

Nota

Si bien hay diferentes formas de inferir (es decir, inferencia por lotes), buscamos principalmente la inferencia en línea con un extremo expuesto (API de IA) que el usuario final llama mediante una solicitud http.

La codificación es fundamental, pero, como se ha mencionado anteriormente, el servidor de modelo que se desplegará se define mediante una plantilla específica. Esta plantilla autónoma creará un ejecutable con la definición de los parámetros necesarios, el contenedor que se va a ejecutar, los recursos necesarios para iniciar la aplicación web y el número de réplicas del servidor de modelo que se iniciará.

Esta combinación del ejecutable de servicio adecuado, con la referencia al modelo que se va a utilizar, permitirá que SAP AI Core inicie su despliegue.

Cuando el servidor de modelo se está ejecutando y la URL de despliegue está lista, el último paso del workflow ML en SAP AI Core es el consumo del modelo a través del punto final expuesto. La API se puede integrar fácilmente en cualquier aplicación empresarial mediante una solicitud http, como una libreta Jupyter, Postman o una aplicación CAP, etc.

Construya un predictor de precios de la casa con SAP AI Core