Utilice estas directrices cuando actualice activos que hacen referencia a especificaciones de software o infraestructuras obsoletas.
En algunos casos, la actualización de activos es transparente. En otros casos, debe volver a entrenar o volver a desplegar los activos. Para obtener directrices generales, consulte Migración de activos que hacen referencia a especificaciones de software que se han dejado de mantener o Migración de activos que hacen referencia a versiones de infraestructura que se han dejado de mantener.
Para obtener más información, consulte las secciones siguientes:
Gestión de activos que hacen referencia a especificaciones de software que se han dejado de mantener
- Durante la migración, los activos que hacen referencia a la especificación de software que se ha dejado de mantener se correlacionan con una especificación de software predeterminada soportada comparable (sólo en los casos en los que el tipo de modelo sigue estando soportado).
- Cuando crea nuevos despliegues de los activos migrados, se utiliza la especificación de software actualizada en los metadatos de activo.
- Los despliegues existentes de los activos migrados se actualizan para utilizar la nueva especificación de software. Si el despliegue o la puntuación falla debido a incompatibilidades de versión de biblioteca o infraestructura, siga las instrucciones de Actualización de especificaciones de software. Si el problema persiste, siga los pasos que se listan en Actualización de un modelo de aprendizaje automático.
Migración de activos que hacen referencia a versiones de infraestructura que se han dejado de mantener
- Durante la migración, los tipos de modelo no se actualizan. Debe actualizar manualmente estos datos. Para obtener más información, consulte Actualización de un modelo de aprendizaje automático.
- Después de la migración, los despliegues existentes se eliminan y no se permiten nuevos despliegues para la infraestructura en desuso.
Actualización de especificaciones de software
Puede actualizar especificaciones de software desde la interfaz de usuario o utilizando la API. Para obtener más información, consulte las secciones siguientes:
- Actualización de especificaciones de software desde la interfaz de usuario
- Actualización de especificaciones de software utilizando la API
Actualización de especificaciones de software desde la interfaz de usuario
- En el espacio de despliegue, pulse el modelo (asegúrese de que no tenga ningún despliegue activo).
- Pulse el símbolo
i
para comprobar los detalles del modelo. - Utilice la lista desplegable para actualizar la especificación de software.
Consulte la imagen de ejemplo:
Actualización de especificaciones de software utilizando la API
Puede actualizar una especificación de software utilizando el mandato de parche de API:
Para el campo software_spec
, escriba /software_spec
. Para el campo value
, utilice el ID o el nombre de la nueva especificación de software.
Consulte este ejemplo:
curl -X PATCH '<deployment endpoint url>/ml/v4/models/6f01d512-fe0f-41cd-9a52-1e200c525c84?space_id=f2ddb8ce-7b10-4846-9ab0-62454a449802&project_id=<project_id>&version=<YYYY-MM-DD>' \n--data-raw '[
{
"op":"replace",
"path":"/software_spec",
"value":{
"id":"6f01d512-fe0f-41cd-9a52-1e200c525c84" // or "name":"tensorflow_rt22.1-py3.9"
}
}
]'
Para obtener más información, consulte Actualización de un activo utilizando el mandato Patch API.
Actualización de un modelo de aprendizaje automático
Siga estos pasos para actualizar un modelo creado con una infraestructura en desuso.
Opción 1: Guardar el modelo con una infraestructura compatible
Descargue el modelo utilizando el Runtime ' watsonx.ai ' API de datos e inteligencia artificial o el ' watsonx.ai ' ' biblioteca cliente Python .
El ejemplo siguiente muestra cómo descargar el modelo:
client.repository.download(<model-id>, filename="xyz.tar.gz")
Edite los metadatos del modelo con el tipo de modelo y la versión soportados en el release actual. Para obtener más información, consulte Especificaciones de software y especificaciones de hardware para despliegues.
El ejemplo siguiente muestra cómo editar metadatos de modelo:
model_metadata = { client.repository.ModelMetaNames.NAME: "example model", client.repository.ModelMetaNames.DESCRIPTION: "example description", client.repository.ModelMetaNames.TYPE: "<new model type>", client.repository.ModelMetaNames.SOFTWARE_SPEC_UID: client.software_specifications.get_uid_by_name("<new software specification name>") }
Guarda el modelo en el repositorio watsonx.ai Runtime. El ejemplo siguiente muestra cómo guardar el modelo en el repositorio:
model_details = client.repository.store_model(model="xyz.tar.gz", meta_props=model_metadata)
Despliegue el modelo.
Puntúe el modelo para generar predicciones.
Si el despliegue o la puntuación fallan, el modelo no es compatible con la nueva versión que se utilizó para guardar el modelo. En este caso, utilice la Opción 2.
Opción 2: Volver a entrenar el modelo con una infraestructura compatible
- Vuelva a entrenar el modelo con un tipo de modelo y una versión soportados en la versión actual.
- Guarde el modelo con el tipo de modelo y la versión soportados.
- Despliegue y puntúe el modelo.
También es posible actualizar un modelo utilizando la API. Para obtener más información, consulte Actualización de un activo utilizando el mandato Patch API.
Actualización de una función Python
Siga estos pasos para actualizar una función Python creada con una infraestructura en desuso.
Opción 1: Guardar la función Python con una especificación de tiempo de ejecución o de software compatible
- Descargue la función ' Python ' utilizando el Runtime ' watsonx.ai ' ' API REST o el ' watsonx.ai ' ' biblioteca cliente Python .
- Guarde la función de Python con una versión de especificación de software o tiempo de ejecución soportada. Para obtener más información, consulte Especificaciones de software y especificaciones de hardware para despliegues.
- Despliegue la función de Python.
- Puntúe la función de Python para generar predicciones.
Si la función Python falla durante la puntuación, la función no es compatible con la nueva versión de especificación de tiempo de ejecución o software que se ha utilizado para guardar la función Python . En este caso, utilice la Opción 2.
Opción 2: Modificar el código de función y guardarlo con una especificación de tiempo de ejecución o software compatible
- Modifique el código de función de Python para que sea compatible con la nueva versión de especificación de software o tiempo de ejecución. En algunos casos, debe actualizar las bibliotecas dependientes que están instaladas dentro del código de función Python .
- Guarde la función de Python con la nueva versión de especificación de software o tiempo de ejecución.
- Despliegue y puntúe la función de Python.
También es posible actualizar una función utilizando la API. Para obtener más información, consulte Actualización de un activo utilizando el mandato Patch API.
Volver a entrenar un flujo de SPSS Modeler
Algunos modelos que se construyeron con ' SPSS Modeler en ' IBM ' watsonx.ai Studio Cloud antes del 1 de septiembre de 2020 ya no se pueden desplegar utilizando ' watsonx.ai Runtime. Este problema se debe a una actualización de la versión de Python en los tiempos de ejecución de SPSS Modeler soportados. Si está utilizando uno de los siguientes seis nodos en su flujo de SPSS Modeler, debe reconstruir y volver a desplegar sus modelos con SPSS Modeler y watsonx.ai Runtime:
- XGBoost Tree
- XGBoost Linear
- One-Class SVM
- HDBSCAN
- Modelado KDE
- Combinación gaussiana
Para volver a entrenar el flujo de SPSS Modeler , siga estos pasos:
- Si utiliza la interfaz de usuario de ' watsonx.ai Studio, abra el flujo ' SPSS Modeler en ' watsonx.ai Studio, vuelva a entrenar y guarde el modelo en ' watsonx.ai Runtime. Después de guardar el modelo en el proyecto, puede promocionarlo a un espacio de despliegue y crear un nuevo despliegue.
- Si está utilizando la API REST o el clientePython, vuelva a entrenar el modelo utilizando SPSS Modeler y guarde el modelo en el repositorio watsonx.ai Runtime con el tipo de modelo '
spss-modeler-18.2
.
Tema principal: Infraestructuras y especificaciones de software