選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

針對無伺服器端點自動擴展佈建並行

焦點模式
針對無伺服器端點自動擴展佈建並行 - Amazon SageMaker AI

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

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

Amazon SageMaker AI 會自動擴展或擴展隨需無伺服器端點。對於具有佈建並行的無伺服器端點,您可以使用應用程式自動擴展根據流量設定檔上下擴展佈建並行,進而最佳化成本。

以下是在無伺服器端點上自動擴展佈建並行的先決條件:

您必須先將模型部署到具有佈建並行的無伺服器端點,才能使用自動擴展。部署的模型稱為生產變體。如需使用佈建並行將模型部署到無伺服器端點的詳細資訊,請參閱建立端點組態建立端點。若要指定擴展政策的指標和目標值,您必須設定擴展政策。有關如何定義擴展政策的詳情,請參閱定義擴展政策。在登錄您的模型和制定擴展政策之後,請將此擴展政策套用到已登錄的模型。有關如何套用擴展政策的詳情,請參閱套用擴展政策

如需搭配自動擴展使用的其他先決條件和元件的詳細資訊,請參閱 SageMaker AI 自動擴展文件中的 自動擴展先決條件一節。

註冊模型

若要使用佈建並行將自動擴展新增至無伺服器端點,您必須先使用 AWS CLI 或 Application Auto Scaling API 註冊模型 (生產變體)。

註冊模型 (AWS CLI)

若要註冊模型,請使用 register-scalable-target AWS CLI 命令搭配下列參數:

  • --service-namespace – 將此值設定為 sagemaker

  • --resource-id — 模型的資源識別符 (特別是生產變體)。針對這項參數,資源的類型為 endpoint,而唯一識別符是生產變體的名稱。例如 endpoint/MyEndpoint/variant/MyVariant

  • --scalable-dimension – 將此值設定為 sagemaker:variant:DesiredProvisionedConcurrency

  • --min-capacity — 模型的佈建並行數量下限。將 --min-capacity 至少設定為 1。此值必須小於或等於 --max-capacity 所指定的值。

  • --max-capacity — 應用程式自動擴展要啟用的佈建並行數量上限。將 --max-capacity 設為最小值 1。該值必須大於或等於您為 --min-capacity 指定的值。

下列範例顯示如何註冊名為 MyVariant 的模型,該模型可動態調整規模,以包含 1 到 10 個佈建並行值:

aws application-autoscaling register-scalable-target \ --service-namespace sagemaker \ --scalable-dimension sagemaker:variant:DesiredProvisionedConcurrency \ --resource-id endpoint/MyEndpoint/variant/MyVariant \ --min-capacity 1 \ --max-capacity 10

註冊模型 (應用程式自動擴展 API)

若要註冊您的模型,請使用 RegisterScalableTarget 應用程式自動擴展 API 動作搭配下列參數:

  • ServiceNamespace – 將此值設定為 sagemaker

  • ResourceId — 模型的資源識別符 (特別是生產變體)。針對這項參數,資源的類型為 endpoint,而唯一識別符是生產變體的名稱。例如 endpoint/MyEndpoint/variant/MyVariant

  • ScalableDimension – 將此值設定為 sagemaker:variant:DesiredProvisionedConcurrency

  • MinCapacity — 模型的佈建並行數量下限。將 MinCapacity 至少設定為 1。此值必須小於或等於 MaxCapacity 所指定的值。

  • MaxCapacity — 應用程式自動擴展要啟用的佈建並行數量上限。將 MaxCapacity 設為最小值 1。該值必須大於或等於您為 MinCapacity 指定的值。

下列範例顯示如何註冊名為 MyVariant 的模型,該模型可動態調整規模,以包含 1 到 10 個佈建並行值:

POST / HTTP/1.1 Host: autoscaling.us-east-2.amazonaws.com Accept-Encoding: identity X-Amz-Target: AnyScaleFrontendService.RegisterScalableTarget X-Amz-Date: 20160506T182145Z User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8 Content-Type: application/x-amz-json-1.1 Authorization: AUTHPARAMS { "ServiceNamespace": "sagemaker", "ResourceId": "endpoint/MyEndPoint/variant/MyVariant", "ScalableDimension": "sagemaker:variant:DesiredProvisionedConcurrency", "MinCapacity": 1, "MaxCapacity": 10 }

定義擴展政策

若要指定自動擴展政策的指標和目標值,您可以設定目標追蹤擴展政策。將擴展政策定義為文字檔案中的 JSON 區塊。然後,您可以在叫用 AWS CLI 或 Application Auto Scaling API 時使用該文字檔案。若要快速定義無伺服器端點的目標追蹤擴展政策,請使用 SageMakerVariantProvisionedConcurrencyUtilization 預先定義的指標。

{ "TargetValue": 0.5, "PredefinedMetricSpecification": { "PredefinedMetricType": "SageMakerVariantProvisionedConcurrencyUtilization" }, "ScaleOutCooldown": 1, "ScaleInCooldown": 1 }

套用擴展政策

註冊模型後,您可以使用佈建並行將擴展政策套用至無伺服器端點。請參閱套用目標追蹤擴展政策,了解如何套用您定義的目標追蹤擴展政策。如果流向無伺服器端點的流量具有可預測的例行模式,則您可能需要在特定時間安排擴展動作,而非套用目標追蹤擴展政策。如需安排擴展動作的詳情,請參閱排程擴展

套用目標追蹤擴展政策

您可以使用 AWS Management Console AWS CLI 或 Application Auto Scaling API,使用佈建並行將目標追蹤擴展政策套用至無伺服器端點。

套用目標追蹤擴展政策 (AWS CLI)

若要將擴展政策套用到您的模型,請使用 put-scaling-policy AWS CLI命令搭配下列參數:

  • --policy-name – 擴展政策的名稱。

  • --policy-type – 將此值設定為 TargetTrackingScaling

  • --resource-id — 變體的資源識別符。針對這項參數,資源的類型為 endpoint,而唯一識別符是變體的名稱。例如 endpoint/MyEndpoint/variant/MyVariant

  • --service-namespace – 將此值設定為 sagemaker

  • --scalable-dimension – 將此值設定為 sagemaker:variant:DesiredProvisionedConcurrency

  • --target-tracking-scaling-policy-configuration — 要用於模型的目標追蹤擴展政策組態。

下列範例示範如何將名為 MyScalingPolicy 的目標追蹤擴展政策,套用至名為 MyVariant 的模型。政策的組態是儲存於名為 scaling-policy.json 的檔案中。

aws application-autoscaling put-scaling-policy \ --policy-name MyScalingPolicy \ --policy-type TargetTrackingScaling \ --service-namespace sagemaker \ --scalable-dimension sagemaker:variant:DesiredProvisionedConcurrency \ --resource-id endpoint/MyEndpoint/variant/MyVariant \ --target-tracking-scaling-policy-configuration file://[file-localtion]/scaling-policy.json

套用目標追蹤擴展政策 (應用程式自動擴展 API)

若要將擴展政策套用到您的模型,請使用 PutScalingPolicy 應用程式自動擴展 API 動作並搭配下列參數:

  • PolicyName – 擴展政策的名稱。

  • PolicyType – 將此值設定為 TargetTrackingScaling

  • ResourceId — 變體的資源識別符。針對這項參數,資源的類型為 endpoint,而唯一識別符是變體的名稱。例如 endpoint/MyEndpoint/variant/MyVariant

  • ServiceNamespace – 將此值設定為 sagemaker

  • ScalableDimension – 將此值設定為 sagemaker:variant:DesiredProvisionedConcurrency

  • TargetTrackingScalingPolicyConfiguration — 要用於模型的目標追蹤擴展政策組態。

下列範例示範如何將名為 MyScalingPolicy 的目標追蹤擴展政策,套用至名為 MyVariant 的模型。政策的組態是儲存於名為 scaling-policy.json 的檔案中。

POST / HTTP/1.1 Host: autoscaling.us-east-2.amazonaws.com Accept-Encoding: identity X-Amz-Target: AnyScaleFrontendService.PutScalingPolicy X-Amz-Date: 20160506T182145Z User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8 Content-Type: application/x-amz-json-1.1 Authorization: AUTHPARAMS { "PolicyName": "MyScalingPolicy", "ServiceNamespace": "sagemaker", "ResourceId": "endpoint/MyEndpoint/variant/MyVariant", "ScalableDimension": "sagemaker:variant:DesiredProvisionedConcurrency", "PolicyType": "TargetTrackingScaling", "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 0.5, "PredefinedMetricSpecification": { "PredefinedMetricType": "SageMakerVariantProvisionedConcurrencyUtilization" } } }

套用目標追蹤擴展政策 (AWS Management Console)

若要使用 套用目標追蹤擴展政策 AWS Management Console:

  1. 登入 Amazon SageMaker AI 主控台

  2. 在導覽面板中,選擇 Inference (推論)。

  3. 選擇 Endpoints (端點),檢視所有端點的清單。

  4. 選擇您要套用擴展政策的端點。系統將顯示一個包含端點設定的頁面,其中模型 (生產變體) 會列在 Endpoint runtime settings (端點執行期設定) 區段下。

  5. 選取您要套用擴展政策的生產變體,然後選擇 Configure auto scaling (設定自動擴展)。畫面會顯示 Configure variant automatic scaling (設定變體自動擴展) 對話框。

    主控台中設定變體自動擴展對話框的螢幕擷取畫面。
  6. Variant automatic scaling (變體自動擴展) 區段 Minimum provisioned concurrency (最小佈建並行) 和 Maximum provisioned concurrency (最大佈建並行) 欄位中,分別輸入最小和最大的佈建並行值。佈建並行下限必須小於或等於佈建並行的上限。

  7. 在目標指標結果 (SageMakerVariantProvisionedConcurrencyUtilization) 的 Target value (目標值) 欄位中輸入目標值。

  8. (選用) 在縮減冷卻向外擴展冷卻欄位中,分別輸入縮減冷卻與向外擴展冷卻值 (以秒為單位)。

  9. (選用) 若不想在流量減少時讓自動擴展刪除執行個體,請選取 Disable scale in (停用縮減)。

  10. 選取 Save (儲存)。

排程擴展

如果使用佈建並行傳送至無伺服器端點的流量遵循例行模式,您可能需在特定時間安排擴展動作,以縮減或向外擴展佈建並行。您可以使用 AWS CLI 或 Application Auto Scaling 來排程擴展動作。

排程擴展功能 (AWS CLI)

若要將擴展政策套用至模型,請使用 put-scheduled-action AWS CLI; 命令搭配下列參數:

  • --schedule-action-name — 擴展動作的名稱。

  • --schedule — Cron 表達式,透過週期性排程指定擴展動作的開始和結束時間。

  • --resource-id — 變體的資源識別符。針對這項參數,資源的類型為 endpoint,而唯一識別符是變體的名稱。例如 endpoint/MyEndpoint/variant/MyVariant

  • --service-namespace – 將此值設定為 sagemaker

  • --scalable-dimension – 將此值設定為 sagemaker:variant:DesiredProvisionedConcurrency

  • --scalable-target-action — 擴展動作的目標。

以下範例說明如何將名為 MyScalingAction 的擴展動作新增至週期性排程上名為 MyVariant 的模型。按照指定的排程時間 (每天 UTC 時間下午 12:15),若目前的佈建並行低於 MinCapacity 指定的值。應用程式自動擴展會將佈建並行向外擴展至 MinCapacity 指定的值。

aws application-autoscaling put-scheduled-action \ --scheduled-action-name 'MyScalingAction' \ --schedule 'cron(15 12 * * ? *)' \ --service-namespace sagemaker \ --resource-id endpoint/MyEndpoint/variant/MyVariant \ --scalable-dimension sagemaker:variant:DesiredProvisionedConcurrency \ --scalable-target-action 'MinCapacity=10'

排程擴展功能 (應用程式自動擴展 API)

若要將擴展政策套用到您的模型,請使用 PutScheduledAction 應用程式自動擴展 API 動作並搭配下列參數:

  • ScheduleActionName — 擴展動作的名稱。

  • Schedule — Cron 表達式,透過週期性排程指定擴展動作的開始和結束時間。

  • ResourceId — 變體的資源識別符。針對這項參數,資源的類型為 endpoint,而唯一識別符是變體的名稱。例如 endpoint/MyEndpoint/variant/MyVariant

  • ServiceNamespace – 將此值設定為 sagemaker

  • ScalableDimension – 將此值設定為 sagemaker:variant:DesiredProvisionedConcurrency

  • ScalableTargetAction — 擴展動作的目標。

以下範例說明如何將名為 MyScalingAction 的擴展動作新增至週期性排程上名為 MyVariant 的模型。按照指定的排程時間 (每天 UTC 時間下午 12:15),若目前的佈建並行低於 MinCapacity 指定的值。應用程式自動擴展會將佈建並行向外擴展至 MinCapacity 指定的值。

POST / HTTP/1.1 Host: autoscaling.us-east-2.amazonaws.com Accept-Encoding: identity X-Amz-Target: AnyScaleFrontendService.PutScheduledAction X-Amz-Date: 20160506T182145Z User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8 Content-Type: application/x-amz-json-1.1 Authorization: AUTHPARAMS { "ScheduledActionName": "MyScalingAction", "Schedule": "cron(15 12 * * ? *)", "ServiceNamespace": "sagemaker", "ResourceId": "endpoint/MyEndpoint/variant/MyVariant", "ScalableDimension": "sagemaker:variant:DesiredProvisionedConcurrency", "ScalableTargetAction": "MinCapacity=10" } } }

下一個主題:

清除

上一個主題:

警示和日誌
隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。