Experiments-Endpunkt
Die Modellentwicklung und das Training erfolgen auf Experimentebene, wo ein Experiment aus einer MLI-Instanz, Trainings-Läufen und Scoring-Läufen besteht.
Erstellen eines Experiments create-an-experiment
Sie können ein Experiment erstellen, indem Sie eine POST-Anfrage ausführen und dabei einen Namen und eine gültige MLInstance-ID in der Anfrage-Payload angeben.
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: {ORG_ID}' \
-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"
}'
name
mlInstanceId
Antwort
Bei einer erfolgreichen Antwort wird eine Payload zurückgegeben, die die Details des neu erstellten Experiments einschließlich der eindeutigen Kennung (id
) enthält.
{
"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
}
Erstellen und Ausführen eines Trainings- oder Scoring-Durchgangs experiment-training-scoring
Sie können Trainings- oder Scoring-Durchgänge erstellen, indem Sie eine Experimentanforderung ausführen, eine gültige POST-ID angeben und die Ausführungsaufgabe angeben. Scoring-Durchgänge können nur erstellt werden, wenn das Experiment über einen vorhandenen und erfolgreichen Trainings-Durchgang verfügt. Wenn ein Trainings-Durchgang erfolgreich erstellt wurde, wird das Modell-Trainingsverfahren initialisiert, und nach erfolgreichem Abschluss wird ein trainiertes Modell generiert. Das Generieren trainierter Modelle ersetzt alle zuvor vorhandenen, sodass ein Experiment immer nur ein trainiertes Modell verwenden kann.
API-Format
POST /experiments/{EXPERIMENT_ID}/runs
{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: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'content-type: application/vnd.adobe.platform.sensei+json;profile=experimentRun.v1.json' \
-d '{
"mode": "{TASK}"
}'
{TASK}
train
für das Training, als score
für die Bewertung oder als featurePipeline
für die Feature Pipeline fest.Antwort
Bei einer erfolgreichen Antwort wird eine Payload zurückgegeben, die die Details des neu erstellten Durchgangs enthält, einschließlich der geerbten Standard-Trainings- oder Bewertungsparameter und der eindeutigen ID des Durchgangs ({RUN_ID}
).
{
"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"
}
]
}
]
}
Abrufen einer Liste von Experimenten
Sie können eine Liste von Experimenten abrufen, die zu einer bestimmten MLInstance gehören, indem Sie eine einzige GET-Anfrage ausführen und eine gültige MLInstance-ID als Abfrageparameter 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}
{MLINSTANCE_ID}
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: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Antwort
Eine erfolgreiche Antwort gibt eine Liste von Experimenten zurück, die dieselbe MLInstance-ID ({MLINSTANCE_ID}
) haben.
{
"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
}
}
Abrufen eines bestimmten Experiments retrieve-specific
Sie können die Details eines bestimmten Experiments abrufen, indem Sie eine GET-Anfrage ausführen, die die ID des gewünschten Experiments im Anfragepfad enthält.
API-Format
GET /experiments/{EXPERIMENT_ID}
{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: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Antwort
Eine erfolgreiche Antwort gibt eine Payload zurück, die die Details des angeforderten Experiments enthält.
{
"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
}
Abrufen einer Liste von Experimentausführungen
Sie können eine Liste von Trainings- oder Scoring-Durchgängen abrufen, die zu einem bestimmten Experiment gehören, indem Sie eine einzige GET-Anfrage ausführen und eine gültige Experiment-ID angeben. Sie können die Ergebnisse filtern, indem Sie im Anfragepfad Abfrageparameter angeben. Eine vollständige Liste der verfügbaren Abfrageparameter finden Sie im Anhang unter Abfrageparameter für den Asset-Abruf.
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}
{EXPERIMENT_ID}
{QUERY_PARAMETER}
{VALUE}
Anfrage
Die folgende Anfrage enthält eine Abfrage und ruft eine Liste von Trainings-Lä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: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Antwort
Bei einer erfolgreichen Antwort wird eine Payload zurückgegeben, die eine Liste der Ausführungen und jedes ihrer Details enthält, einschließlich der Experiment-Ausführungs-ID ({RUN_ID}
).
{
"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
}
}
Aktualisieren eines Experiments
Sie können ein vorhandenes Experiment aktualisieren, indem Sie seine Eigenschaften über eine PUT-Anfrage überschreiben, die die ID des Zielexperiments im Anfragepfad enthält, und eine JSON-Payload mit aktualisierten Eigenschaften angeben.
Der folgende Beispiel-API-Aufruf aktualisiert den Namen eines Experiments, während es anfänglich diese Eigenschaften hat:
{
"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}
{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: {ORG_ID}' \
-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
}
Löschen eines Experiments
Sie können ein einzelnes DELETE löschen, indem Sie eine Experimentanfrage ausführen, die die ID des Zielexperiments im Anfragepfad enthält.
API-Format
DELETE /experiments/{EXPERIMENT_ID}
{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: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Antwort
{
"title": "Success",
"status": 200,
"detail": "Experiment successfully deleted"
}
Löschen von Experimenten nach MLInstance-ID
Sie können alle Experimente löschen, die zu einer bestimmten MLInstance gehören, indem Sie eine DELETE-Anfrage ausführen, die die MLInstance-ID als Abfrageparameter enthält.
API-Format
DELETE /experiments?mlInstanceId={MLINSTANCE_ID}
{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: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Antwort
{
"title": "Success",
"status": 200,
"detail": "Experiments successfully deleted"
}