Python -Version für ein vorhandenes bereitgestelltes Modell mit der REST-API ändern

Letzte Aktualisierung: 21. Nov. 2024
Decision Optimization REST-API zum Ändern der Python -Version im bereitgestellten Modell

Sie können ein bestehendes Decision Optimization mithilfe der watsonx.ai Runtime REST API aktualisieren. Dies kann beispielsweise nützlich sein, wenn Sie in Ihrem Modell explizit eine Python-Version angegeben haben, die jetzt veraltet ist.

Vorbereitende Schritte

Sie benötigen Ihre SPACE-ID, MODELL-ID und IMPLEMENTIERUNGS-ID, um diese Änderung vorzunehmen. Weitere Informationen finden Sie unter Beispiel für REST-API .

Informationen zu dieser Task

Die folgenden Schritte zeigen Ihnen, wie Sie ein bestehendes Modell der Decision Optimization mit Hilfe der watsonx.ai Runtime REST API aktualisieren können. In dem REST-API-Beispiel wird 'curl' verwendet, ein Befehlszeilentool mit zugehöriger Bibliothek für die Übertragung von Daten in URL-Syntax. Sie können curl herunterladen und weitere Informationen dazu unter http://curl.haxx.selesen.

Verwenden Sie unter Windows das Zeichen ^ anstelle von \ als Trennzeichen bei mehreren Zeilen und Anführungszeichen (") in allen Codebeispielen. Windows-Benutzer müssen in den Kopfzeilen außerdem eine Einrückung von mindestens einer Zeichenbreite verwenden.

Zur Verdeutlichung wurden einige Codebeispiele in dieser Prozedur in eine Datei json eingefügt, um die Befehle lesbarer und benutzerfreundlicher zu machen.

Prozedur

Gehen Sie wie folgt vor, um die Python -Version für ein vorhandenes bereitgestelltes Modell zu ändern:

  1. Erstellen Sie eine -Revision für Ihr Decision Optimization -Modell

    Alle API-Anforderungen erfordern einen Versionsparameter, der ein Datum im Format version=YYYY-MM-DD annimmt. Dieses Codebeispiel übergibt ein Modell, das die Datei update_model.json verwendet. Die URL variiert je nach Auswahl von Region/Standort für Ihren Machine Learning-Service.

    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
    Die Datei revise_model.json enthält den folgenden Code:
    {
      "commit_message": "Save current model",
      "space_id": "SPACE-ID-HERE"
    }
    Beachten Sie die Modellrevisionsnummer "rev", die in der Ausgabe zur Verwendung im nächsten Schritt bereitgestellt wird.
  2. Aktualisieren Sie eine vorhandene Bereitstellung, damit aktuelle Jobs nicht beeinträchtigt werden:
    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
    Die Datei revise_deploy.json enthält den folgenden Code:
    [
      {
      "op": "add",
      "path": "/asset",
      "value": {
        "id":"MODEL-ID-HERE",
        "rev":"MODEL-REVISION-NUMBER-HERE"
       }
      }
    ]
  3. Patch eines bestehenden Modells zur expliziten Angabe der Python Version 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
    Die Datei update_model.json mit dem explizit angegebenen Standardwert Python-Version enthält den folgenden Code:
    [
     {
     "op": "add",
     "path": "/custom",
     "value": {
       "decision_optimization":{
          "oaas.docplex.python": "3.11"
         }
       }
     }
    ]
    Gehen Sie alternativ wie folgt vor, um jede explizite Erwähnung einer Python-Version zu entfernen, sodass immer die Standardversion verwendet wird:
    [
     {
     "op": "remove",
     "path": "/custom/decision_optimization"
     }
    ]
  4. Patch der Bereitstellung zur Verwendung des Modells, das für Python erstellt wurde, um die Version 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
    Die Datei update_deploy.json enthält den folgenden Code:
    [
     {
       "op": "add",
       "path": "/asset",
       "value": { "id":"MODEL-ID-HERE"}
     }
    ]

Ergebnisse

Sie können neue Jobs mithilfe der Bereitstellungs-ID (deployment-ID) veröffentlichen, ohne Ihr Modell erneut bereitstellen zu müssen.