Entrenamiento y despliegue de modelos con BaseModelService
BaseModelService es una clase Python que se distribuye como parte del cliente de Python para la Onesait Platform. El código de este cliente lo mantiene la comunidad de la Plataforma en Github, y puede ser instalado mediante pip:
pip install onesaitplatform-client-services
El uso de BaseModelService nos permite:
- Entrenar y reentrenar modelos para generar distintas versiones de estos.
- Registrar las distintas versiones de cada modelo con los parámetros con los que se entrenaron y las métricas con las que se evaluaron.
- Registrar y guardar los artefactos que se generan para cada versión de cada modelo.
- Recuperar los modelos previamente entrenados y guardados para usarlos en inferencia.
Todo ello se hace aprovechando las herramientas que la Plataforma proporciona para:
- Las ontologías, para trazar las distintas versiones de los modelos y guardar datasets de entrenamiento.
- El File Repository, para guardar los artefactos de los modelos y datasets de entrenamiento.
BaseModelService abstrae al desarrollador del modelo la gestión de toda esta funcionalidad, permitiéndole hacer uso de ella de una manera sencilla. Como sugiere su nombre, BaseModelService es una clase madre a partir de la cual el desarrollador del modelo creará una clase hija que herede de ella.
La clase hija contendrá el código específico para entrenar un modelo concreto, guardarlo en una ruta local, cargar posteriormente la versión guardada también desde una ruta local y usarlo en inferencia. El desarrollador del modelo podrá usar cualquier tipo de librería de Python (scikit-learn, Tensorflow, PyTorch, etc.). Podrá también usar los mecanismos de guardado y carga de modelo que prefiera.
El resto de tareas de interacción con la Plataforma ya han sido definidas en la clase madre BaseModelService: descarga del dataset desde un archivo del File Repository, o desde una ontología; guardado de los modelos entrenados en el File Repository, descarga de estos modelos desde dicho File Repository, control de las distintas versiones de un mismo modelo y selección de la versión preferida.
Como ejemplos del uso de BaseModelService, os proponemos estos dos tutoriales:
- Entrenamiento y despliegue de modelos con BaseModelService.
- Creación de una clase hija de BaseModelService: SentimentAnalysisModelService.
YouTube | Release 3.0.0 Feature – Wrapper for model creation