Pontuar um modelo usando o Sensei Machine Learning API

Este tutorial mostrará como aproveitar as APIs para criar um Experimento e uma Execução de Experimento. Para obter uma lista detalhada da documentação da API, consulte este documento.

Criar um Experimento agendado para pontuação

Semelhante aos Experimentos agendados para treinamento, a criação de um Experimento agendado para pontuação também é feita ao incluir uma seção template no parâmetro body . Além disso, o campo name em tasks no corpo é definido como score.

Este é um exemplo de criação de um Experimento que será executado a cada 20 minutos a partir de startTime e será executado até endTime.

Solicitação

curl -X POST \
  https://platform.adobe.io/data/sensei/experiments \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'Content-Type: application/vnd.adobe.platform.sensei+json;profile=experiment.v1.json' \
  -H 'x-gw-ims-org-id: {IMS_ORG}' \
  -H 'x-api-key: {API_KEY}' \
  -d '{JSON_PAYLOAD}'

{IMS_ORG}: Suas credenciais da organização IMS encontradas na integração exclusiva do Adobe Experience Platform.
{ACCESS_TOKEN}: O valor do token portador específico fornecido após a autenticação.
{API_KEY}: Seu valor específico da chave de API encontrado na integração exclusiva do Adobe Experience Platform.
{JSON_PAYLOAD}: Objeto de Execução de Experimento a ser enviado. O exemplo usado em nosso tutorial é mostrado aqui:

{
    "name": "Experiment for Retail",
    "mlInstanceId": "{INSTANCE_ID}",
    "template": {
        "tasks": [{
            "name": "score",
            "parameters": [
                {
                    "key": "modelId",
                    "value": "{MODEL_ID}"
                }
            ],
            "specification": {
                "type": "SparkTaskSpec",
                "executorCores": 5,
                "numExecutors": 5
            }
        }],
        "schedule": {
            "cron": "*/20 * * * *",
            "startTime": "2018-07-04",
            "endTime": "2018-07-06"
        }
    }
}

{INSTANCE_ID}: A ID que representa a instância MLI.
{MODEL_ID}: A ID que representa o Modelo treinado.

A resposta a seguir é após criar o Experimento agendado.

Resposta

{
  "id": "{EXPERIMENT_ID}",
  "name": "Experiment for Retail",
  "mlInstanceId": "{INSTANCE_ID}",
  "created": "2018-11-11T11:11:11.111Z",
  "updated": "2018-11-11T11:11:11.111Z",
  "template": {
    "tasks": [
      {
        "name": "score",
        "parameters": [...],
        "specification": {
          "type": "SparkTaskSpec",
          "executorCores": 5,
          "numExecutors": 5
        }
      }
    ],
    "schedule": {
      "cron": "*\/20 * * * *",
      "startTime": "2018-07-04",
      "endTime": "2018-07-06"
    }
  }
}

{EXPERIMENT_ID}: A ID que representa o Experimento.
{INSTANCE_ID}: A ID que representa a instância MLI.

Criar uma execução de experimento para pontuação

Agora, com o modelo treinado, podemos criar uma Execução de experiência para pontuação. O valor do parâmetro modelId é o parâmetro id retornado na solicitação de Modelo do GET acima.

Solicitação

curl -X POST \
  https://platform.adobe.io/data/sensei/experiments/{EXPERIMENT_ID}/runs \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'Content-Type: application/vnd.adobe.platform.sensei+json;profile=experimentRun.v1.json' \
  -H 'x-gw-ims-org-id: {IMS_ORG}' \
  -H 'x-api-key: {API_KEY}' \
  -d '{JSON_PAYLOAD}'

{IMS_ORG}: Suas credenciais da organização IMS encontradas na integração exclusiva do Adobe Experience Platform.
{ACCESS_TOKEN}: O valor do token portador específico fornecido após a autenticação.
{API_KEY}: Seu valor específico da chave de API encontrado na integração exclusiva do Adobe Experience Platform.
{EXPERIMENT_ID}: A ID correspondente ao Experimento que você deseja direcionar. Isso pode ser encontrado na resposta ao criar seu Experimento.
{JSON_PAYLOAD}: Dados a publicar. O exemplo usado em nosso tutorial está aqui:

{
   "mode":"score",
    "tasks": [
        {
            "name": "score",
            "parameters": [
                {
                    "key": "modelId",
                    "value": "{MODEL_ID}"
                }
            ]
        }
    ]
}

{MODEL_ID}: A ID correspondente ao Modelo.

A resposta da criação da Execução de Experimento é mostrada abaixo:

Resposta

{
    "id": "{EXPERIMENT_RUN_ID}",
    "mode": "score",
    "experimentId": "{EXPERIMENT_ID}",
    "created": "2018-01-01T11:11:11.011Z",
    "updated": "2018-01-01T11:11:11.011Z",
    "deleted": false,
    "tasks": [
        {
            "name": "score",
            "parameters": [...]
        }
    ]
}

{EXPERIMENT_ID}: A ID correspondente ao Experimento em que a execução está.
{EXPERIMENT_RUN_ID}: A ID correspondente à Execução do experimento que você acabou de criar.

Recuperar um status de Execução de experiência para Execução de experiência agendada

Para obter Execuções de Experimento para Experimentos programados, a consulta é mostrada abaixo:

Solicitação

curl -X GET \
  'https://platform.adobe.io/data/sensei/experiments/{EXPERIMENT_ID}/runs' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-gw-ims-org-id: {IMS_ORG}'

{EXPERIMENT_ID}: A ID correspondente ao Experimento em que a execução está.
{ACCESS_TOKEN}: O valor do token portador específico fornecido após a autenticação.
{IMS_ORG}: Suas credenciais da organização IMS encontradas na integração exclusiva do Adobe Experience Platform.

Como há várias execuções de experimento para um experimento específico, a resposta retornada terá uma matriz de IDs de execução.

Resposta

{
    "children": [
        {
            "id": "{EXPERIMENT_RUN_ID}",
            "experimentId": "{EXPERIMENT_ID}",
            "created": "2018-01-01T11:11:11.011Z",
            "updated": "2018-01-01T11:11:11.011Z"
        },
        {
            "id": "{EXPERIMENT_RUN_ID}",
            "experimentId": "{EXPERIMENT_ID}",
            "created": "2018-01-01T11:11:11.011Z",
            "updated": "2018-01-01T11:11:11.011Z"
        }
    ]
}

{EXPERIMENT_RUN_ID}: A ID correspondente à Execução do experimento.
{EXPERIMENT_ID}: A ID correspondente ao Experimento em que a execução está.

Parar e excluir um experimento programado

Se você quiser interromper a execução de um Experimento agendado antes de seu endTime, isso pode ser feito consultando uma solicitação de DELETE para o {EXPERIMENT_ID}

Solicitação

curl -X DELETE \
  'https://platform.adobe.io/data/sensei/experiments/{EXPERIMENT_ID}' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-gw-ims-org-id: {IMS_ORG}'

{EXPERIMENT_ID}: A ID correspondente ao Experimento.
{ACCESS_TOKEN}: O valor do token portador específico fornecido após a autenticação.
{IMS_ORG}: Suas credenciais da organização IMS encontradas na integração exclusiva do Adobe Experience Platform.

OBSERVAÇÃO

A chamada da API desativará a criação de novas execuções de Experimento. No entanto, não interromperá a execução de Execuções de Experimento já em execução.

Veja a seguir a Resposta notificando que o Experimento foi excluído com êxito.

Resposta

{
    "title": "Success",
    "status": 200,
    "detail": "Experiment successfully deleted"
}

Nesta página

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now