Importeer een verpakt recept met de Sensei Machine Learning API
Dit leerprogramma gebruikt Sensei Machine Learning APIom een Motortot stand te brengen, die ook als Ontvanger in het gebruikersinterface wordt bekend.
Voordat u aan de slag gaat, moet u weten dat Adobe Experience Platform Data Science Workspace verschillende termen gebruikt om te verwijzen naar vergelijkbare elementen in de API en de UI. In deze zelfstudie worden de API-termen gebruikt en in de volgende tabel worden de bijbehorende termen beschreven:
Een engine bevat machine-learningalgoritmen en logica om specifieke problemen op te lossen. In het onderstaande diagram ziet u een visualisatie van de API-workflow in Data Science Workspace . Deze zelfstudie richt zich op het creëren van een Engine, het brein van een machine-learningmodel.
Aan de slag
Voor deze zelfstudie is een ontvangerbestand in een pakket nodig in de vorm van een docker-URL. Volg de Van het Pakket brondossiers in een Ontvangerleerprogramma om een pakket te creëren Ontvangt dossier of uw te verstrekken.
{DOCKER_URL}
: Een URL-adres naar een dockerafbeelding van een intelligente service.
Dit leerprogramma vereist u om de Authentificatie aan het leerprogramma van Adobe Experience Platformte voltooien om vraag aan Platform APIs met succes te maken. Het voltooien van de zelfstudie over verificatie biedt de waarden voor elk van de vereiste headers in alle Experience Platform API-aanroepen, zoals hieronder wordt weergegeven:
{ACCESS_TOKEN}
: uw specifieke togertokenwaarde die u na verificatie opgeeft.{ORG_ID}
: uw organisatiegegevens zijn gevonden in uw unieke Adobe Experience Platform-integratie.{API_KEY}
: uw specifieke API-sleutelwaarde in uw unieke Adobe Experience Platform-integratie.
Een engine maken
De motoren kunnen worden gecreeerd door een verzoek van de POST aan het /engines eindpunt te doen. De gemaakte engine wordt geconfigureerd op basis van de vorm van het pakketbestand met ontvangers die moet worden opgenomen als onderdeel van de API-aanvraag.
Een engine maken met een docker-URL create-an-engine-with-a-docker-url
Als u een engine wilt maken met een pakketbestand Recipe dat is opgeslagen in een Docker-container, moet u de docker-URL opgeven voor het pakketbestand Recipe.
API formaat
POST /engines
Verzoek Python/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
ofwel Python
, R
, PySpark
, Spark
(Scala) of Tensorflow
.artifacts.default.image.location
{DOCKER_URL}
komt hier. Een volledige docker-URL heeft de volgende structuur: your_docker_host.azurecr.io/docker_image_file:version
artifacts.default.image.name
artifacts.default.image.executionType
executionType
ofwel Python
, R
, PySpark
, Spark
(Scala) of Tensorflow
.Verzoek PySpark
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
Verzoek Scala
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
Reactie
Een succesvolle reactie keert een lading terug die de details van de pas gecreëerde Motor met inbegrip van zijn uniek herkenningsteken bevat (id
). De volgende voorbeeldreactie is voor een Python Engine. De toetsen executionType
en type
veranderen op basis van de opgegeven 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"
}
}
}
}
Een geslaagde reactie laat een JSON-lading zien met informatie over de nieuwe engine. De sleutel id
vertegenwoordigt de unieke engine-id en is vereist in de volgende zelfstudie om een MLInstance te maken. Zorg ervoor dat de engine-id is opgeslagen voordat u doorgaat met de volgende stappen.
Volgende stappen next-steps
U hebt een engine gemaakt met behulp van de API en er is een unieke engine-id verkregen als onderdeel van de hoofdtekst van de respons. U kunt dit herkenningsteken van de Motor in het volgende leerprogramma gebruiken aangezien u leert om te creëren, een Model te trainen en te evalueren gebruikend API.