使用Sensei Machine Learning API匯入封裝的配方

本教學課程使用Sensei Machine Learning API來建立Engine,也稱為使用者介面中的方式。

開始使用之前,請務必注意,Adobe Experience Platform Data Science Workspace使用不同的術語來參照API和UI中的類似元素。 本教學課程中使用API詞語,下表概述相關詞語:

UI詞語 API期限
配方 引擎
模型 MLInstance
培訓與評估 實驗
服務 MLService

引擎包含機器學習演算法和邏輯,以解決特定問題。 下圖顯示Data Science Workspace中的API工作流程。 本教學課程著重於建立引擎,即機器學習模型的大腦。

快速入門

本教學課程需要以Docker URL格式封裝的配方檔案。 按照將源檔案打包到Recipe教程,建立打包的Recipe檔案或提供您自己的檔案。

  • {DOCKER_URL}:智慧服務的Docker影像的URL位址。

本教學課程要求您完成 Authentication to Adobe Experience Platform tutorial,才能成功呼叫Platform API。 完成驗證教學課程後,所有Experience Platform API呼叫中每個所需標題的值都會顯示在下面:

  • {ACCESS_TOKEN}:驗證後提供的您特定的載體Token值。
  • {IMS_ORG}:您的IMS組織認證可在您獨特的Adobe Experience Platform整合中找到。
  • {API_KEY}:您獨特的Adobe Experience Platform整合中提供您的特定API金鑰價值。

建立引擎

對/engines端點發出POST請求可以建立引擎。 所建立的引擎是根據封裝的方式檔案的格式來設定,該檔案必須包含在API要求中。

使用Docker URL建立引擎

若要建立具有儲存在Docker容器中之封裝配方檔案的引擎,您必須為封裝配方檔案提供Docker URL。

注意

如果您使用Python或R,請使用下列請求。 如果您使用PySpark或Scala,請使用位於Python/R範例下方的PySpark/Scala請求範例。

API格式

POST /engines

請求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: {IMS_ORG}' \
    -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 引擎的所需名稱。 與此引擎對應的配方將繼承此值,該值將作為配方的名稱顯示在Data Science Workspace用戶介面中。
engine.description 引擎的選用說明。 與此引擎對應的配方將繼承此值,該值將作為配方的說明顯示在Data Science Workspace用戶介面中。 請勿移除此屬性,如果您選擇不提供說明,請讓此值為空字串。
engine.type 引擎的執行類型。 此值與Docker影像開發所用的語言相對應。 當提供Docker URL來建立引擎時,typePythonRPySparkSpark(Scala)或Tensorflow
artifacts.default.image.location 您的{DOCKER_URL}將移至此處。 完整的Docker URL具有下列結構:your_docker_host.azurecr.io/docker_image_file:version
artifacts.default.image.name Docker映像檔案的附加名稱。 請勿移除此屬性,如果您選擇不提供其他Docker影像檔名,請讓此值為空字串。
artifacts.default.image.executionType 此引擎的執行類型。 此值與Docker影像開發所用的語言相對應。 當提供Docker URL來建立引擎時,executionTypePythonRPySparkSpark(Scala)或Tensorflow

要求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: {IMS_ORG}' \
    -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 引擎的所需名稱。 與此引擎對應的配方將繼承此值,並以配方名稱顯示在UI中。
description 引擎的選用說明。 與此引擎對應的方式將繼承此值,並以方式說明的形式顯示在UI中。 此為必要屬性。如果您不想提供說明,請將其值設為空字串。
type 引擎的執行類型。 此值對應於Docker影像建立在"PySpark"上的語言。
mlLibrary 建立PySpark和Scala配方引擎時所需的欄位。
artifacts.default.image.location 由Docker URL連結到的Docker映像的位置。
artifacts.default.image.executionType 引擎的執行類型。 此值與Docker影像建立在"Spark"上的語言相對應。

請求標準

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: {IMS_ORG}' \
    -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 引擎的所需名稱。 與此引擎對應的配方將繼承此值,並以配方名稱顯示在UI中。
description 引擎的選用說明。 與此引擎對應的方式將繼承此值,並以方式說明的形式顯示在UI中。 此為必要屬性。如果您不想提供說明,請將其值設為空字串。
type 引擎的執行類型。 此值與Docker影像建立在"Spark"上的語言相對應。
mlLibrary 建立PySpark和Scala配方引擎時所需的欄位。
artifacts.default.image.location 由Docker URL連結到的Docker映像的位置。
artifacts.default.image.executionType 引擎的執行類型。 此值與Docker影像建立在"Spark"上的語言相對應。

回應

成功的回應會傳回包含新建立之引擎之詳細資料(包括其唯一識別碼)的裝載。 id以下是Python引擎的範例回應。 executionTypetype鍵根據提供的開機自檢而改變。

{
    "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"
            }
        }
    }
}

成功的回應會顯示JSON裝載,內含有關新建引擎的資訊。 id鍵代表唯一的引擎識別碼,是下一個教學課程中建立MLInstance的必要項。 請確定引擎識別碼已儲存,然後再繼續後續步驟。

下一步

您已使用API建立引擎,並取得唯一的引擎識別碼作為回應本體的一部分。 在下一個教學課程中,您可以使用此引擎識別碼,學習如何使用API](./train-evaluate-model-api.md)來建立、訓練和評估模型。[

本頁內容

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