Importieren eines gepackten Rezepts mit der Sensei Machine Learning API
In diesem Tutorial wird Sensei Machine Learning API verwendet, um eine Engine zu erstellen, die in der Benutzeroberfläche auch als Rezept bezeichnet wird.
Bevor Sie beginnen, sollten Sie beachten, dass Adobe Experience Platform Data Science Workspace unterschiedliche Begriffe verwendet, um auf ähnliche Elemente in der API und Benutzeroberfläche zu verweisen. Die API-Begriffe werden in diesem Tutorial verwendet. In der folgenden Tabelle sind die entsprechenden Begriffe aufgeführt:
Eine Engine enthält Algorithmen und Logik für maschinelles Lernen, um bestimmte Probleme zu lösen. Das folgende Diagramm zeigt eine Visualisierung des API-Workflows in Data Science Workspace. Dieses Tutorial konzentriert sich auf die Erstellung einer Engine, des Gehirns eines Modells für maschinelles Lernen.
Erste Schritte
Für dieses Tutorial ist eine gepackte Rezeptdatei in Form einer Docker-URL erforderlich. Folgen Sie dem Tutorial Quelldateien in einem Rezept verpacken , um eine gepackte Rezeptdatei zu erstellen oder eine eigene anzugeben.
{DOCKER_URL}
: Eine URL-Adresse für ein Docker-Bild eines intelligenten Dienstes.
Für dieses Tutorial müssen Sie das Tutorial Authentifizierung für Adobe Experience Platform abgeschlossen haben, damit Sie erfolgreich Aufrufe an Platform -APIs durchführen können. Durch Abschluss des Authentifizierungs-Tutorials werden die Werte für die einzelnen erforderlichen Header in allen Experience Platform-API-Aufrufen bereitgestellt, wie unten dargestellt:
{ACCESS_TOKEN}
: Ihr spezifischer Bearer-Tokenwert, der nach der Authentifizierung bereitgestellt wird.{ORG_ID}
: Ihre Organisationsberechtigungen in Ihrer eindeutigen Adobe Experience Platform-Integration.{API_KEY}
: Ihr spezifischer API-Schlüsselwert in Ihrer eindeutigen Adobe Experience Platform-Integration.
Engine erstellen
Engines können erstellt werden, indem eine POST-Anfrage an den Endpunkt /engine gesendet wird. Die erstellte Engine wird basierend auf dem Formular der verpackten Rezeptdatei konfiguriert, die als Teil der API-Anfrage enthalten sein muss.
Erstellen einer Engine mit einer Docker-URL create-an-engine-with-a-docker-url
Um eine Engine mit einer gepackten Rezeptdatei zu erstellen, die in einem Docker-Container gespeichert ist, müssen Sie die Docker-URL für die gepackte Rezeptdatei angeben.
API-Format
POST /engines
Python anfordern/R
curl -X POST \
https://platform.adobe.io/data/sensei/engines \
-H 'Authorization: {ACCESS_TOKEN}' \
-H 'X-API-KEY: {API_KEY}' \
-H 'content-type: multipart/form-data' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H `x-sandbox-name: {SANDBOX_NAME}` \
-F 'engine={
"name": "Retail Sales Engine Python",
"description": "A description for Retail Sales Engine, this Engines execution type is Python",
"type": "Python"
"artifacts": {
"default": {
"image": {
"location": "{DOCKER_URL}",
"name": "retail_sales_python",
"executionType": "Python"
}
}
}
}'
engine.name
engine.description
engine.type
type
entweder Python
, R
, PySpark
, Spark
(Scala) oder Tensorflow
.artifacts.default.image.location
{DOCKER_URL}
geht hierhin. Eine vollständige Docker-URL weist die folgende Struktur auf: your_docker_host.azurecr.io/docker_image_file:version
artifacts.default.image.name
artifacts.default.image.executionType
executionType
entweder Python
, R
, PySpark
, Spark
(Scala) oder Tensorflow
.PySpark anfordern
curl -X POST \
https://platform.adobe.io/data/sensei/engines \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'content-type: multipart/form-data' \
-F 'engine={
"name": "PySpark retail sales recipe",
"description": "A description for this Engine",
"type": "PySpark",
"mlLibrary":"databricks-spark",
"artifacts": {
"default": {
"image": {
"name": "modelspark",
"executionType": "PySpark",
"packagingType": "docker",
"location": "v1d2cs4mimnlttw.azurecr.io/sarunbatchtest:0.0.1"
}
}
}
}'
name
description
type
mlLibrary
artifacts.default.image.location
artifacts.default.image.executionType
Anforderungsskala
curl -X POST \
https://platform.adobe.io/data/sensei/engines \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'content-type: multipart/form-data' \
-F 'engine={
"name": "Spark retail sales recipe",
"description": "A description for this Engine",
"type": "Spark",
"mlLibrary":"databricks-spark",
"artifacts": {
"default": {
"image": {
"name": "modelspark",
"executionType": "Spark",
"packagingType": "docker",
"location": "v1d2cs4mimnlttw.azurecr.io/sarunbatchtest:0.0.1"
}
}
}
}'
name
description
type
mlLibrary
artifacts.default.image.location
artifacts.default.image.executionType
Antwort
Eine erfolgreiche Antwort gibt eine Payload zurück, die die Details der neu erstellten Engine einschließlich ihrer eindeutigen Kennung (id
) enthält. Die folgende Beispielantwort bezieht sich auf eine Python -Engine. Die Tasten executionType
und type
ändern sich je nach bereitgestellter POST.
{
"id": "{ENGINE_ID}",
"name": "A name for this Engine",
"description": "A description for this Engine",
"type": "Python",
"algorithm": "Classification",
"created": "2019-01-01T00:00:00.000Z",
"createdBy": {
"userId": "Jane_Doe@AdobeID"
},
"updated": "2019-01-01T00:00:00.000Z",
"artifacts": {
"default": {
"image": {
"location": "{DOCKER_URL}",
"name": "An additional name for the Docker image",
"executionType": "Python",
"packagingType": "docker"
}
}
}
}
Eine erfolgreiche Antwort zeigt eine JSON-Payload mit Informationen zur neu erstellten Engine an. Der Schlüssel id
stellt die eindeutige Engine-Kennung dar und ist im nächsten Tutorial zum Erstellen einer MLInstance erforderlich. Stellen Sie sicher, dass die Engine-ID gespeichert wird, bevor Sie mit den nächsten Schritten fortfahren.
Nächste Schritte next-steps
Sie haben eine Engine mit der API erstellt und eine eindeutige Engine-Kennung wurde als Teil des Antworttextes abgerufen. Sie können diese Engine-Kennung im nächsten Tutorial verwenden, während Sie erfahren, wie Sie mit der API🔗 ein Modell erstellen, trainieren und bewerten.