Erstellen Sie eine Onlinebereitstellung für Modelle für maschinelles Lernen, Decision Optimization -Lösungen oder Python -Funktionen, um Vorhersagen oder Ergebnisse in Echtzeit zu generieren Erstellen Sie beispielsweise eine Onlinebereitstellung für ein Klassifikationsmodell, das trainiert wird, um vorherzusagen, ob sich ein Bankkunde für eine Werbeaktion registriert. Das Übergeben neuer Kundendaten an den Bereitstellungsendpunkt gibt eine Vorhersage in Echtzeit zurück.
Implementierbare Assettypen für Onlinebereitstellungen
Sie können Onlinebereitstellungen für die folgenden Assettypen erstellen:
- Functions
- Modelle
- AutoAI -Modelle
- Decision Optimization-Modelle
- Modelle für föderiertes Lernen
- Modelle, die aus einer Datei importiert werden
- Modelle, die mit unterstützten Frameworks erstellt wurden
- SPSS Modeler -Modelle
Sie können keine R Shiny-Anwendungsressourcen bereitstellen auf Cloud Pak for Data as a Service.
Möglichkeiten zum Erstellen einer Onlineimplementierung
Sie können eine Onlineimplementierung auf eine der folgenden Arten erstellen:
- Verwenden Sie einen No-Code-Ansatz, um eine Onlinebereitstellung aus einem Bereitstellungsbereich zu erstellen.
- Verwenden Sie Code, um eine Onlineimplementierung programmgesteuert mithilfe von Notebooks zu erstellen.
Nach der Erstellung einer Online-Bereitstellung wird eine Endpunkt-URL generiert. Sie können die Endpunkt-URL verwenden, um die Implementierung zu testen oder um sie in Ihre Anwendungen einzuschließen.
Vorbereitende Schritte
Sie müssen Ihre Anmeldedaten für die Aufgabe einrichten, indem Sie einen API-Schlüssel erstellen. Weitere Informationen finden Sie unter Verwalten von Berechtigungsnachweisen für Aufgaben.
Onlinebereitstellung aus einem Bereitstellungsbereich erstellen
Führen Sie die folgenden Schritte aus, um Ihre Onlinebereitstellung aus einem Bereitstellungsbereich zu erstellen:
Stufen Sie das Asset, das Sie bereitstellen möchten, in einen Bereich hoch oder fügen Sie es hinzu. Weitere Informationen finden Sie unter Assets in einem Bereitstellungsbereich.
Klicken Sie auf der Seite "Assets" im Aktionsmenü auf Bereitstellen .
Klicken Sie auf der Seite mit den Bereitstellungsdetails auf Neue Bereitstellung.
Wählen Sie Online als Bereitstellungstyp aus.
Geben Sie einen Namen und eine optionale Beschreibung für die Implementierung an.
Verwenden Sie das Feld Serving name , um einen Namen für Ihre Implementierung anstelle der Implementierungs-ID anzugeben.
Hinweis:- Der Bereitstellungsname muss innerhalb des Namensbereichs eindeutig sein.
- Der Serving-Name darf nur die folgenden Zeichen enthalten: [a-z,0-9, _] und darf maximal 36 Zeichen lang sein.
- Der Bereitstellungsname funktioniert nur als Teil der Vorhersage-URL. Möglicherweise müssen Sie irgendwann die Implementierungs-ID verwenden.
Optional: Wählen Sie eine Hardwarespezifikation aus, wenn Sie Python -Funktionen, Tensorflow -Modelle oder Modelle mit angepassten Softwarespezifikationenbereitstellen. Wenn Sie beispielsweise eine Implementierung skalieren, können Sie die Hardwareressourcen erhöhen.
Einschränkung:Sie können keine angepassten Hardwarespezifikationen in der Benutzerschnittstelle in einem Bereitstellungsbereich erstellen oder auswählen. Weitere Informationen zur Erstellung und Auswahl einer Hardwarespezifikation finden Sie unter Hardwarespezifikationen für Implementierungen verwalten.
Optional: Wählen Sie eine Softwarespezifikation aus, die mit Ihrer Anlage kompatibel ist. Sie können Softwarespezifikationen nur für Funktionen auswählen.
Klicken Sie auf Erstellen, um die Bereitstellung zu erstellen.
Onlineimplementierung testen
Führen Sie die folgenden Schritte aus, um Ihre Onlineimplementierung zu testen:
- Klicken Sie auf der Registerkarte Bereitstellungen Ihres Bereichs auf den Bereitstellungsnamen.
- Klicken Sie auf die Registerkarte Test , um Daten einzugeben und eine Vorhersage oder eine andere Antwort vom implementierten Asset abzurufen.
Die Art und Weise, wie Sie Testdaten für eine Onlineimplementierung bereitstellen, hängt vom Typ der implementierten Ressource ab. Für die meisten Assets können Sie Testdaten direkt in ein Formular eingeben, eine Datei hochladen, die Testdaten enthält, oder die Testdaten als JSON-Code einfügen. Das folgende Beispiel zeigt die Testschnittstelle für ein Klassifikationsmodell:
Zur Bereitstellung von Testdaten:
- Wenn Ihr bereitgestelltes Modell über ein definiertes Schema verfügt, müssen Ihre Testdaten dasselbe Schema verwenden. Geben Sie für ein Klassifikationsmodell beispielsweise Testdaten ein, indem Sie dieselben Spalten verwenden und die Vorhersagespalte weglassen.
JSON-Beispielcode zum Testen einer Implementierung
Wenn Sie JSON-Code als Nutzdaten oder Eingabedaten für eine Bereitstellung übergeben, müssen Ihre Eingabedaten den Anforderungen des implementierten Assets entsprechen.
Beispiel: Bei einem Modell mit einem Schema muss der fields
mit den Spaltenüberschriften für die Daten übereinstimmen und der values
muss die Daten (in derselben Reihenfolge) enthalten. Verwenden Sie das folgende Format:
{"input_data":[{
"fields": [<field1>, <field2>, ...],
"values": [[<value1>, <value2>, ...]]
}]}
Sehen Sie sich dieses Beispiel an:
{"input_data":[{
"fields": ["PassengerId","Pclass","Name","Sex","Age","SibSp","Parch","Ticket","Fare","Cabin","Embarked"],
"values": [[1,3,"Braund, Mr. Owen Harris",0,22,1,0,"A/5 21171",7.25,null,"S"]]
}]}
Für die Formatierung der JSON-Eingabe:
- Alle Zeichenfolgen sind in Anführungszeichen eingeschlossen. Die Notation Python für Wörterverzeichnisse sieht ähnlich aus, aber Python -Zeichenfolgen in einfachen Anführungszeichen werden in den JSON-Daten nicht akzeptiert.
- Geben Sie fehlende Werte mit
null
an.
Endpunkt für eine Onlineimplementierung abrufen
Führen Sie die folgenden Schritte aus, um die Endpunkt-URL für Ihre Onlineimplementierung abzurufen, damit Sie über Ihre Anwendungen auf die Implementierung zugreifen können:
- Klicken Sie auf der Registerkarte Bereitstellungen Ihres Bereichs auf den Bereitstellungsnamen.
- Suchen Sie auf der Registerkarte API-Referenz nach den privaten und öffentlichen Endpunktlinks. Sie können Code-Snippets auch in verschiedenen Programmiersprachen wie Python, Java usw. finden, um die Endpunktdetails in eine Anwendung einzuschließen.
Wenn Sie beim Erstellen Ihrer Onlinebereitstellung Serving name hinzugefügt haben, werden zwei Endpunkt-URLs angezeigt. Die erste URL enthält die Implementierungs-ID, die zweite URL Ihren Serving-Namen. Sie können entweder eine dieser URLs mit Ihrer Implementierung verwenden.
Auf die Details der Onlinebereitstellung zugreifen
Führen Sie die folgenden Schritte aus, um Bereitstellungsdetails zu überprüfen oder zu aktualisieren:
- Klicken Sie auf der Registerkarte Implementierungen Ihres Bereichs auf einen Bereitstellungsnamen.
- Klicken Sie auf die Registerkarte Bereitstellungsdetails , um auf Informationen zu Ihrer Onlineimplementierung zuzugreifen.
Onlineimplementierung programmgestützt mithilfe von Notebooks erstellen
Sie können eine Onlineimplementierung programmgesteuert erstellen, indem Sie Folgendes verwenden:
- watsonx.ai Runtime REST API.
- watsonx Python -Clientbibliothek.
Um auf Beispiel-Notebooks zuzugreifen, die das Erstellen und Verwalten von Deployments mit dem watsonx.ai Runtime Python demonstrieren, siehe Beispiele für maschinelles Lernen und Beispiele.
Online-Implementierung programmgesteuert testen
Zum programmgesteuerten Testen Ihrer Onlinebereitstellung müssen Sie Nutzdaten vorbereiten, die dem Schema der vorhandenen Modellanforderungen des implementierten Assets entsprechen. Beispielsweise müssen die Eingabedaten (Nutzdaten) für ein Klassifikationsmodell mit dem Schema des bereitgestellten Modells übereinstimmen. Im folgenden Beispiel für ein Klassifikationsmodell werden Testdaten mit Spalten und Werten bereitgestellt, die genau dem Modellschema entsprechen:
model_details = client.repository.get_details("<model_id>") # retrieves details and includes schema
columns_in_schema = []
for i in range(0, len(model_details['entity']['schemas']['input'][0].get('fields'))):
columns_in_schema.append(model_details['entity']['schemas']['input'][0].get('fields')[i]['name'])
X = X[columns_in_schema] # where X is a pandas dataframe that contains values to be scored
#(...)
scoring_values = X.values.tolist()
array_of_input_fields = X.columns.tolist()
payload_scoring = {"input_data": [{"fields": [array_of_input_fields],"values": scoring_values}]}
Endpunkt für eine Onlineimplementierung programmgesteuert abrufen
So rufen Sie die Endpunkt-URL Ihrer Onlineimplementierung aus einem Notebook ab:
- Listen Sie die Einsätze auf, indem Sie die Python "
client.deployments.list()
aufrufen. - Suchen Sie die Zeile mit Ihrer Implementierung. Die Implementierungsendpunkt-URL wird in der Spalte
url
aufgelistet.
Weitere Informationen
Informationen zum Erstellen einer Batchbereitstellung finden Sie unter Batchbereitstellung erstellen.
Informationen zum Verwalten von Bereitstellungsjobs und zum Aktualisieren, Skalieren oder Löschen einer Onlinebereitstellung finden Sie unter Assets verwalten.
Weitere Informationen zu Bereitstellungsendpunkten finden Sie unter Endpunkt-URLs.
Übergeordnetes Thema: Vorhersagebereitstellungen verwalten