0 / 0
Volver a la versión inglesa de la documentación
Cambio de la versión de Python para un modelo desplegado existente con la API REST
Última actualización: 21 nov 2024
API REST de Decision Optimization que cambia la versión de Python en el modelo desplegado

Puede actualizar un modelo de Decision Optimization existente utilizando la API REST en tiempo de ejecución dewatsonx.ai. Esto puede ser útil, por ejemplo, si en el modelo ha especificado explícitamente una versión de Python que ahora ha quedado en desuso.

Antes de empezar

Necesitará SPACE-ID, MODEL-ID y DEPLOYMENT-ID para realizar este cambio. Consulte Ejemplo de API REST para obtener más detalles.

Acerca de esta tarea

Los siguientes pasos muestran cómo actualizar un modelo desplegado Decision Optimization existente utilizando la API REST en tiempo de ejecución dewatsonx.ai. El ejemplo de la API REST utiliza curl, una herramienta de línea de mandatos y una biblioteca para transferir datos con la sintaxis de URL. Puede descargar curl y leer más sobre él en http://curl.haxx.se.

Los usuarios de Windows, deben utilizar ^ en lugar de \ como separador de varias líneas y doblar las comillas dobles en estos ejemplos de código. Los usuarios de Windows también necesitan utilizar indentación de al menos un carácter de espacio en las líneas de cabecera.

Para mayor claridad, se han colocado algunos ejemplos de código en este procedimiento en un archivo json para que los mandatos sean más legibles y más fáciles de utilizar.

Procedimiento

Para cambiar la versión de Python para un modelo desplegado existente:

  1. Crear una revisión de en el modelo de Decision Optimization

    Todas las solicitudes de API requieren un parámetro de versión que tome una fecha en el formato version=YYYY-MM-DD. Este ejemplo de código publica un modelo que utiliza el archivo update_model.json. El URL variará según la región/ubicación elegida para el servicio de aprendizaje de máquina.

    curl --location --request POST \
      "https://us-south.ml.cloud.ibm.com/ml/v4/models/MODEL-ID-HERE/revisions?version=2021-12-01" \
      -H "Authorization: bearer TOKEN-HERE" \
      -H "Content-Type: application/json" \
      -d @revise_model.json
    El archivo revise_model.json contiene el código siguiente:
    {
      "commit_message": "Save current model",
      "space_id": "SPACE-ID-HERE"
    }
    Anote el número de revisión del modelo "rev" que se proporciona en la salida para utilizarlo en el paso siguiente.
  2. Actualice un despliegue existente para que los trabajos actuales no se vean afectados:
    curl --location --request PATCH \
      "https://us-south.ml.cloud.ibm.com/ml/v4/deployments/DEPLOYMENT-ID-HERE?version=2021-12-01&space_id=SPACE-ID-HERE" \
      -H "Authorization: bearer TOKEN-HERE" \
      -H "Content-Type: application/json" \
      -d @revise_deploy.json
    El archivo revise_deploy.json contiene el código siguiente:
    [
      {
      "op": "add",
      "path": "/asset",
      "value": {
        "id":"MODEL-ID-HERE",
        "rev":"MODEL-REVISION-NUMBER-HERE"
       }
      }
    ]
  3. Parche un modelo existente para especificar explícitamente Python 3.11
    curl --location --request PATCH \
      "https://us-south.ml.cloud.ibm.com/ml/v4/models/MODEL-ID-HERE?rev=MODEL-REVISION-NUMBER-HERE&version=2021-12-01&space_id=SPACE-ID-HERE" \
      -H "Authorization: bearer TOKEN-HERE" \
      -H "Content-Type: application/json" \
      -d @update_model.json
    El archivo update_model.json, con el valor predeterminado Versión de Python indicado explícitamente, contiene el código siguiente:
    [
     {
     "op": "add",
     "path": "/custom",
     "value": {
       "decision_optimization":{
          "oaas.docplex.python": "3.11"
         }
       }
     }
    ]
    De forma alternativa, para eliminar cualquier mención explícita de una versión Python para que se utilice siempre la versión predeterminada:
    [
     {
     "op": "remove",
     "path": "/custom/decision_optimization"
     }
    ]
  4. Parchea el despliegue para usar el modelo que se creó para Python para usar la versión 3.11
    curl --location --request PATCH \
      "https://us-south.ml.cloud.ibm.com/ml/v4/deployments/DEPLOYMENT-ID-HERE?version=2021-12-01&space_id=SPACE-ID-HERE" \
      -H "Authorization: bearer TOKEN-HERE" \
      -H "Content-Type: application/json" \
      -d @update_deploy.json
    El archivo update_deploy.json contiene el código siguiente:
    [
     {
       "op": "add",
       "path": "/asset",
       "value": { "id":"MODEL-ID-HERE"}
     }
    ]

Resultado

Podrá publicar nuevos trabajos utilizando el DEPLOYMENT-ID sin tener que volver a desplegar el modelo.