預先檢查時間序列資料的端點請求和回應 - Amazon SageMaker

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

預先檢查時間序列資料的端點請求和回應

建議您將模型部署至 SageMaker 即時推論端點,並將請求傳送至端點。手動檢查請求和回應,以確保兩者都符合 時間序列資料的端點請求時間序列資料的端點回應區段中的要求。如果您的模型容器支援批次請求,您可以從單一記錄請求開始,然後嘗試兩個或更多記錄。

下列命令示範如何使用 請求回應 AWS CLI。已 AWS CLI 預先安裝在 Studio 和 SageMaker Notebook 執行個體中。若要安裝 AWS CLI,請遵循安裝指南

aws sagemaker-runtime invoke-endpoint \ --endpoint-name $ENDPOINT_NAME \ --content-type $CONTENT_TYPE \ --accept $ACCEPT_TYPE \ --body $REQUEST_DATA \ $CLI_BINARY_FORMAT \ /dev/stderr 1>/dev/null

參數定義如下:

  • $ENDPOINT NAME — 端點的名稱。

  • $CONTENT_TYPE — 請求的MIME類型 (模型容器輸入)。

  • $ACCEPT_TYPE — 回應的MIME類型 (模型容器輸出)。

  • $REQUEST_DATA — 請求的承載字串。

  • $CLI_BINARY_FORMAT — 命令列介面 (CLI) 參數的格式。對於 AWS CLI v1,此參數應保持空白。對於第 2 版,此參數應設定為 --cli-binary-format raw-in-base64-out

注意

AWS CLI v2 預設會將二進位參數傳遞為 base64 編碼字串。下列進出端點的請求和回應範例使用 AWS CLI v1。

Example 1

在下列程式碼範例中,請求包含單一記錄。

aws sagemaker-runtime invoke-endpoint \ --endpoint-name test-endpoint-json \ --content-type application/json \ --accept application/json \ --body '{"target": [1, 2, 3, 4, 5], "start": "2024-01-01 01:00:00"}' \ /dev/stderr 1>/dev/null

下列程式碼片段顯示對應的回應輸出。

{'predictions': {'mean': [1, 2, 3, 4, 5]}
Example 2

在下列程式碼範例中,請求包含兩個記錄。

aws sagemaker-runtime invoke-endpoint \ --endpoint-name test-endpoint-json-2 \ --content-type application/json \ --accept application/json \ --body $'{"instances": [{"target":[1, 2, 3], "start":"2024-01-01 01:00:00", "dynamic_feat":[[1, 2, 3, 4, 5], [1, 2, 3, 4, 5]]}], {"target":[1, 2, 3], "start":"2024-01-02 01:00:00", "dynamic_feat":[[1, 2, 3, 4, 5], [1, 2, 3, 4, 5]]}]}' \ dev/stderr 1>/dev/null

回應輸出如下:

{'predictions': [{'mean': [1, 2, 3, 4, 5]}, {'mean': [1, 2, 3, 4, 5]}]}