Modellentwicklung und Schulung erfolgen auf Experimentebene, bei denen ein Experiment aus einer MLInstanz, Trainingsläufen und Scoring-Läufen besteht.
Sie können ein Experiment erstellen, indem Sie eine Anforderung zur POST ausführen und gleichzeitig einen Namen und eine gültige MLInstance-ID in der Anforderungs-Nutzlast angeben.
Im Gegensatz zur Modellschulung in der Benutzeroberfläche wird beim Erstellen eines Experiments durch einen expliziten API-Aufruf nicht automatisch ein Schulungslauf erstellt und ausgeführt.
API-Format
POST /experiments
Anfrage
curl -X POST \
https://platform.adobe.io/data/sensei/experiments \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'content-type: application/vnd.adobe.platform.sensei+json;profile=experiment.v1.json' \
-d '{
"name": "a name for this Experiment",
"mlInstanceId": "46986c8f-7739-4376-8509-0178bdf32cda"
}'
Eigenschaft | Beschreibung |
---|---|
name |
Der gewünschte Name für das Experiment. Der diesem Experiment entsprechende Schulungslauf erbt diesen Wert, der in der Benutzeroberfläche als Name der Schulungsausführung angezeigt wird. |
mlInstanceId |
Eine gültige MLInstance-ID. |
Antwort
A successful response returns a payload containing the details of the newly created Experiment including its unique identifier (id
).
{
"id": "5cb25a2d-2cbd-4c99-a619-8ddae5250a7b",
"name": "A name for this Experiment",
"mlInstanceId": "46986c8f-7739-4376-8509-0178bdf32cda",
"created": "2019-01-01T00:00:00.000Z",
"createdBy": {
"userId": "Jane_Doe@AdobeID"
},
"updated": "2019-01-01T00:00:00.000Z",
"createdByService": false
}
Sie können Schulungs- oder Bewertungsabläufe erstellen, indem Sie eine POST anfordern, eine gültige Experiment-ID bereitstellen und die ausgeführte Aufgabe angeben. Bewertungsläufe können nur erstellt werden, wenn das Experiment über einen vorhandenen und erfolgreichen Schulungslauf verfügt. Durch die erfolgreiche Erstellung eines Schulungslaufs wird der Modellschulungsvorgang initialisiert, und der erfolgreiche Abschluss führt zu einem geschulten Modell. Das Generieren geschulter Modelle ersetzt alle bereits vorhandenen Modelle, sodass ein Experiment zu jeder Zeit nur ein einziges trainiertes Modell verwenden kann.
API-Format
POST /experiments/{EXPERIMENT_ID}/runs
Parameter | Beschreibung |
---|---|
{EXPERIMENT_ID} |
Eine gültige Experiment-ID. |
Anfrage
curl -X POST \
https://platform.adobe.io/data/sensei/experiments/5cb25a2d-2cbd-4c99-a619-8ddae5250a7b/runs \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'content-type: application/vnd.adobe.platform.sensei+json;profile=experimentRun.v1.json' \
-d '{
"mode": "{TASK}"
}'
Eigenschaft | Beschreibung |
---|---|
{TASK} |
Gibt die Aufgabe des Vorgangs an. Legen Sie diesen Wert entweder train für Schulungen, score Bewertungen oder featurePipeline für Feature-Pipeline fest. |
Antwort
Eine erfolgreiche Antwort gibt eine Nutzlast zurück, die die Details der neu erstellten Ausführung einschließlich der geerbten Standard-Schulungs- oder Bewertungsparameter und der eindeutigen ID ({RUN_ID}
) der Ausführung enthält.
{
"id": "33408593-2871-4198-a812-6d1b7d939cda",
"mode": "{TASK}",
"experimentId": "5cb25a2d-2cbd-4c99-a619-8ddae5250a7b",
"created": "2019-01-01T00:00:00.000Z",
"createdBy": {
"userId": "Jane_Doe@AdobeID"
},
"updated": "2019-01-01T00:00:00.000Z",
"createdBySchedule": false,
"tasks": [
{
"name": "{TASK}",
"parameters": [
{
"key": "parameter",
"value": "parameter value"
}
]
}
]
}
Sie können eine Liste von Experimenten abrufen, die zu einer bestimmten MLInstanz gehören, indem Sie eine einzige GET anfordern und eine gültige MLInstance-ID als Parameter für die Abfrage angeben. Eine Liste der verfügbaren Abfragen finden Sie im Anhang zu den Abfrageparametern für den Asset-Abruf.
API-Format
GET /experiments
GET /experiments?property=mlInstanceId=={MLINSTANCE_ID}
Parameter | Beschreibung |
---|---|
{MLINSTANCE_ID} |
Geben Sie eine gültige MLInstance-ID an, um eine Liste von Experimenten abzurufen, die zu dieser bestimmten MLInstanz gehören. |
Anfrage
curl -X GET \
https://platform.adobe.io/data/sensei/experiments?property=mlInstanceId==46986c8f-7739-4376-8509-0178bdf32cda \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Antwort
Bei einer erfolgreichen Antwort wird eine Liste von Experimenten mit derselben MLInstance-ID ({MLINSTANCE_ID}
) zurückgegeben.
{
"children": [
{
"id": "5cb25a2d-2cbd-4c99-a619-8ddae5250a7b",
"name": "A name for this Experiment",
"mlInstanceId": "46986c8f-7739-4376-8509-0178bdf32cda",
"created": "2019-01-01T00:00:00.000Z",
"updated": "2019-01-01T00:00:00.000Z",
"createdByService": false
},
{
"id": "6cb25a2d-2cbd-4c99-a619-8ddae5250a7b",
"name": "Training Run 1",
"mlInstanceId": "46986c8f-7839-4376-8509-0178bdf32cda",
"created": "2019-01-01T00:00:00.000Z",
"updated": "2019-01-01T00:00:00.000Z",
"createdByService": false
},
{
"id": "7cb25a2d-2cbd-4c99-a619-8ddae5250a7b",
"name": "Training Run 2",
"mlInstanceId": "46986c8f-7939-4376-8509-0178bdf32cda",
"created": "2019-01-01T00:00:00.000Z",
"updated": "2019-01-01T00:00:00.000Z",
"createdByService": false
}
],
"_page": {
"property": "deleted==false",
"count": 3
}
}
Sie können die Details eines bestimmten Experiments abrufen, indem Sie eine GET anfordern, die die ID des gewünschten Experiments im Anforderungspfad enthält.
API-Format
GET /experiments/{EXPERIMENT_ID}
Parameter | Beschreibung |
---|---|
{EXPERIMENT_ID} |
Eine gültige Experiment-ID. |
Anfrage
curl -X GET \
https://platform.adobe.io/data/sensei/experiments/5cb25a2d-2cbd-4c99-a619-8ddae5250a7b \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Antwort
Eine erfolgreiche Antwort gibt eine Nutzlast mit den Details des angeforderten Experiments zurück.
{
"id": "5cb25a2d-2cbd-4c99-a619-8ddae5250a7b",
"name": "A name for this Experiment",
"mlInstanceId": "46986c8f-7739-4376-8509-0178bdf32cda",
"created": "2019-01-01T00:00:00.000Z",
"createdBy": {
"userId": "Jane_Doe@AdobeID"
},
"updated": "2019-01-01T00:00:00.000Z",
"createdByService": false
}
Sie können eine Liste von Schulungs- oder Bewertungsabläufen abrufen, die zu einem bestimmten Experiment gehören, indem Sie eine einzige GET anfordern und eine gültige Experiment-ID angeben. Sie können die Ergebnisse filtern, indem Sie im Anfragepfad Abfrageparameter angeben. For a complete list of available query parameters, see the appendix section on query parameters for asset retrieval.
Beim Kombinieren mehrerer Abfragen-Parameter müssen diese durch das kaufmännische Und (&) getrennt werden.
API-Format
GET /experiments/{EXPERIMENT_ID}/runs
GET /experiments/{EXPERIMENT_ID}/runs?{QUERY_PARAMETER}={VALUE}
GET /experiments/{EXPERIMENT_ID}/runs?{QUERY_PARAMETER_1}={VALUE_1}&{QUERY_PARAMETER_2}={VALUE_2}
Parameter | Beschreibung |
---|---|
{EXPERIMENT_ID} |
Eine gültige Experiment-ID. |
{QUERY_PARAMETER} |
Einer der verfügbaren Parameter für die Abfrage zum Filtern der Ergebnisse. |
{VALUE} |
Der Wert für den Parameter der vorherigen Abfrage. |
Anfrage
Die folgende Anforderung enthält eine Abfrage und ruft eine Liste von Schulungsabläufen ab, die zu einem Experiment gehören.
curl -X GET \
https://platform.adobe.io/data/sensei/experiments/5cb25a2d-2cbd-4c99-a619-8ddae5250a7b/runs?property=mode==train \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Antwort
Eine erfolgreiche Antwort gibt eine Nutzlast zurück, die eine Liste der ausgeführten Vorgänge und deren Details einschließlich der Experiment-Ausführen-ID ({RUN_ID}
) enthält.
{
"children": [
{
"id": "33408593-2871-4198-a812-6d1b7d939cda",
"mode": "train",
"experimentId": "5cb25a2d-2cbd-4c99-a619-8ddae5250a7b",
"created": "2019-01-01T00:00:00.000Z",
"createdBy": {
"userId": "Jane_Doe@AdobeID"
},
"createdBySchedule": false
}
],
"_page": {
"property": "mode==train,experimentId==5cb25a2d-2cbd-4c99-a619-8ddae5250a7b,deleted==false",
"totalCount": 1,
"count": 1
}
}
Sie können ein vorhandenes Experiment aktualisieren, indem Sie seine Eigenschaften durch eine PUT-Anforderung überschreiben, die die ID des Zielgruppen-Experiments im Anforderungspfad enthält und eine JSON-Nutzlast mit aktualisierten Eigenschaften bereitstellt.
In order to ensure the success of this PUT request, it is suggested that first you perform a GET request to retrieve the Experiment by ID. Ändern und aktualisieren Sie dann das zurückgegebene JSON-Objekt und übernehmen Sie die Gesamtheit des geänderten JSON-Objekts als Payload für die PUT-Anfrage.
Der folgende Beispiel-API-Aufruf aktualisiert den Namen eines Experiments, während diese Eigenschaften zunächst verwendet werden:
{
"name": "A name for this Experiment",
"mlInstanceId": "46986c8f-7739-4376-8509-0178bdf32cda",
"created": "2019-01-01T00:00:00.000Z",
"createdBy": {
"userId": "Jane_Doe@AdobeID"
},
"createdByService": false
}
API-Format
PUT /experiments/{EXPERIMENT_ID}
Parameter | Beschreibung |
---|---|
{EXPERIMENT_ID} |
Eine gültige Experiment-ID. |
Anfrage
curl -X PUT \
https://platform.adobe.io/data/sensei/experiments/5cb25a2d-2cbd-4c99-a619-8ddae5250a7b \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'content-type: application/vnd.adobe.platform.sensei+json;profile=experiments.v1.json' \
-d '{
"name": "An upated name",
"mlInstanceId": "46986c8f-7739-4376-8509-0178bdf32cda",
"created": "2019-01-01T00:00:00.000Z",
"createdBy": {
"userId": "Jane_Doe@AdobeID"
},
"createdByService": false
}'
Antwort
Bei erfolgreicher Antwort wird eine Payload mit den aktualisierten Details des Experiments zurückgegeben.
{
"id": "5cb25a2d-2cbd-4c99-a619-8ddae5250a7b",
"name": "An updated name",
"mlInstanceId": "46986c8f-7739-4376-8509-0178bdf32cda",
"created": "2019-01-01T00:00:00.000Z",
"createdBy": {
"userId": "Jane_Doe@AdobeID"
},
"updated": "2019-01-02T00:00:00.000Z",
"createdByService": false
}
Sie können ein einzelnes Experiment löschen, indem Sie eine DELETE-Anforderung ausführen, die die ID des Zielgruppen-Experiments im Anforderungspfad enthält.
API-Format
DELETE /experiments/{EXPERIMENT_ID}
Parameter | Beschreibung |
---|---|
{EXPERIMENT_ID} |
Eine gültige Experiment-ID. |
Anfrage
curl -X DELETE \
https://platform.adobe.io/data/sensei/experiments/5cb25a2d-2cbd-4c99-a619-8ddae5250a7b \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Antwort
{
"title": "Success",
"status": 200,
"detail": "Experiment successfully deleted"
}
Sie können alle Experimente, die zu einer bestimmten MLInstanz gehören, löschen, indem Sie eine DELETE-Anforderung ausführen, die die MLInstance-ID als Abfrage-Parameter enthält.
API-Format
DELETE /experiments?mlInstanceId={MLINSTANCE_ID}
Parameter | Beschreibung |
---|---|
{MLINSTANCE_ID} |
Eine gültige MLInstance-ID. |
Anfrage
curl -X DELETE \
https://platform.adobe.io/data/sensei/experiments?mlInstanceId=46986c8f-7739-4376-8509-0178bdf32cda \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Antwort
{
"title": "Success",
"status": 200,
"detail": "Experiments successfully deleted"
}