Importe uma fórmula em pacote usando a API do Sensei Machine Learning
Este tutorial usa o Sensei Machine Learning API para criar um Engine, também conhecido como Receita na interface do usuário.
Antes de começar, é importante observar que o Adobe Experience Platform Data Science Workspace usa termos diferentes para se referir a elementos semelhantes na API e na interface. Os termos da API são usados neste tutorial e a tabela a seguir descreve os termos correlacionados:
Um mecanismo contém algoritmos e lógica de aprendizado de máquina para resolver problemas específicos. O diagrama abaixo fornece uma visualização mostrando o fluxo de trabalho da API em Data Science Workspace. Este tutorial foca em criar um mecanismo, o cérebro de um modelo de aprendizado de máquina.
Introdução
Este tutorial requer um arquivo de fórmula empacotado na forma de um URL Docker. Siga o tutorial Empacotar arquivos de origem em uma Receita para criar um arquivo de Receita empacotado ou fornecer o seu próprio arquivo.
{DOCKER_URL}
: Um endereço de URL para uma imagem Docker de um serviço inteligente.
Este tutorial requer que você tenha concluído o tutorial de Autenticação para Adobe Experience Platform para fazer chamadas com êxito para APIs Platform. Concluir o tutorial de autenticação fornece os valores para cada um dos cabeçalhos necessários em todas as chamadas de API da Experience Platform, conforme mostrado abaixo:
{ACCESS_TOKEN}
: Seu valor de token de portador específico fornecido após a autenticação.{ORG_ID}
: as credenciais da sua organização foram encontradas em sua integração exclusiva com o Adobe Experience Platform.{API_KEY}
: O valor da sua chave de API específica foi encontrado na sua integração exclusiva do Adobe Experience Platform.
Criar um mecanismo
Os mecanismos podem ser criados fazendo uma solicitação POST para o endpoint /engines. O mecanismo criado é configurado com base no formulário do arquivo de receita empacotado que deve ser incluído como parte da solicitação de API.
Criar um mecanismo com um URL Docker create-an-engine-with-a-docker-url
Para criar um mecanismo com um arquivo de fórmula empacotado armazenado em um contêiner do Docker, você deve fornecer o URL do Docker para o arquivo de fórmula empacotado.
Formato da API
POST /engines
Solicitar 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
é Python
, R
, PySpark
, Spark
(Scala) ou Tensorflow
.artifacts.default.image.location
{DOCKER_URL}
entra aqui. Uma URL completa do Docker tem a seguinte estrutura: your_docker_host.azurecr.io/docker_image_file:version
artifacts.default.image.name
artifacts.default.image.executionType
executionType
é Python
, R
, PySpark
, Spark
(Scala) ou Tensorflow
.Solicitar 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
Solicitar Escala
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
Resposta
Uma resposta bem-sucedida retorna uma carga contendo os detalhes do Mecanismo recém-criado, incluindo seu identificador exclusivo (id
). O exemplo de resposta a seguir é para um Mecanismo Python. As chaves executionType
e type
são alteradas com base no POST fornecido.
{
"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"
}
}
}
}
Uma resposta bem-sucedida mostra uma carga JSON com informações sobre o mecanismo recém-criado. A chave id
representa o identificador de Mecanismo exclusivo e é necessária no próximo tutorial para criar uma MLInstance. Verifique se o identificador de Mecanismo está salvo antes de prosseguir para as próximas etapas.
Próximas etapas next-steps
Você criou um mecanismo usando a API e um identificador de mecanismo exclusivo foi obtido como parte do corpo da resposta. Você pode usar esse identificador de Mecanismo no próximo tutorial enquanto aprende a criar, treinar e avaliar um Modelo usando a API.