Descubra cómo trabajar con el catálogo de modelos de Data Science.
Catálogo de modelos
El catálogo de modelos es un repositorio centralizado y gestionado de artefactos de modelo. Los modelos almacenados en el catálogo de modelos se pueden compartir entre los miembros de un equipo y se pueden volver a cargar en una sesión de bloc de notas. Por ejemplo, los modelos del catálogo de modelos también se pueden desplegar como puntos finales HTTP mediante un despliegue de modelo.
Una entrada de modelo en el catálogo de modelos tiene dos componentes:
Un artefacto de modelo es un archivo zip que incluye el objeto de modelo guardado. Un script de Python que proporciona instrucciones sobre cómo utilizar el modelo para fines de inferencia (score.py) y un archivo que documenta el entorno de tiempo de ejecución del modelo (runtime.yaml). Puede obtener un artefacto, score.py, y ejemplos de runtime.yaml de Github.
Los artefactos de modelo almacenados en el catálogo de modelos son inmutables por diseño. Cualquier cambio que desee aplicar a un modelo requiere que se cree un nuevo modelo. La inmutabilidad evita que se realicen cambios no deseados y garantiza que se pueda realizar el seguimiento de cualquier modelo en producción hasta el artefacto exacto que hay detrás de las predicciones del modelo.
Importante
Los artefactos tienen un límite de tamaño máximo de 100 MB cuando se guardan desde la consola. El límite de tamaño se ha eliminado de ADS, los SDK de OCI y la CLI. Los modelos grandes tienen limitaciones de artefactos de hasta 400 GB.
Documentación de Modelos 🔗
Puede utilizar estas opciones para documentar cómo ha entrenado el modelo, el caso de uso y las funciones de predicción necesarias.
Nota
ADS rellena automáticamente la procedencia y la taxonomía en su nombre cuando guarda un modelo con ADS.
Procedencia
La Procedencia del modelo es documentación que le ayuda a mejorar la reproducibilidad y auditabilidad del modelo. Puede documentar el recurso en el que se ha entrenado el modelo (ya sea una sesión de bloc de notas o una ejecución de trabajo) y la referencia de Git al código fuente de entrenamiento. Estos parámetros se extraen automáticamente cuando guarda un modelo con el SDK de ADS.
Cuando está trabajando dentro de un repositorio de Git, ADS puede obtener información de Git y rellenar automáticamente los campos de metadatos de proveniencia del modelo para usted.
Taxonomía
La Taxonomía permite describir el modelo que está guardando en el catálogo de modelos. Puede utilizar campos predefinidos para documentar lo siguiente:
Caso de uso de Machine Learning
Marco de modelo de Machine Learning
Versión
Objeto de estimador
Hiperparámetros
Resultados de la prueba de artefactos
O bien, puede crear metadatos personalizados.
Pruebas de introspección de modelo
La introspección en el contexto de los modelos de Machine Learning consiste en una serie de pruebas y comprobaciones que se ejecutan en un artefacto de modelo para probar todos los aspectos del estado operativo del modelo. Estas pruebas tienen como objetivo score.py y runtime.yaml con el fin de capturar algunos errores e incidencias comunes del artefacto de modelo. Los resultados de las pruebas de introspección forman parte de los metadatos predefinidos del modelo. Si guarda el modelo utilizando la consola, puede almacenar los resultados de la prueba en formato JSON en el campo Resultados de la prueba de artefactos al seleccionar Taxonomía de modelos de documentos. Si decide guardar el modelo mediante el SDK de Python de OCI, utilice la clave de metadatos ArtifactTestResults.
Como parte de nuestra plantilla de artefacto de modelo, incluimos un script de Python que contiene una serie de definiciones de prueba de introspección. Estas pruebas son opcionales y puede ejecutarlas antes de guardar el modelo en el catálogo de modelos. A continuación, puede guardar los resultados de la prueba como parte de los metadatos del modelo para mostrarlos en la consola de OCI.
Nuestro blog de Data Science contiene más información sobre el uso de la introspección de modelo.
Esquemas de entrada y salida del modelo
La definición de esquema es una descripción de las funciones necesarias para realizar una predicción de modelo correcta. La definición de esquema es un contrato que define la carga útil de entrada necesaria que deben proporcionar los clientes del modelo. Las definiciones de esquema de entrada y salida se utilizan solo con fines de documentación en esta versión del catálogo de modelos. Los esquemas tienen el formato de archivo JSON.
Es posible que desee definir ambos esquemas. Como mínimo, es necesario un esquema de entrada para cualquier predicción de modelo.
Puede que el esquema de salida no sea siempre necesario. Por ejemplo, cuando el modelo devuelve un valor de punto flotante simple, no tiene mucho sentido definir un esquema para una salida tan simple. Puede transmitir esa información en la descripción del modelo.