部署用於推論的模型 - Amazon SageMaker

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

部署用於推論的模型

使用 Amazon SageMaker時,您可以從訓練有素機器學習模型開始取得預測或推論 。 SageMaker 提供廣泛的 ML 基礎設施和模型部署選項,協助您滿足所有 ML 推論需求。透過 SageMaker 推論,您可以擴展模型部署、更有效地在生產中管理模型,並減少操作負擔。 SageMaker 為您提供各種推論選項,例如用於取得低延遲推論的即時端點、用於完全受管基礎設施和自動擴展的無伺服器端點,以及用於批次請求的非同步端點。利用適合您使用案例的適當推論選項,您可以確保高效且模型化的部署和推論。

選擇功能

使用 部署 ML 模型有幾個使用案例 SageMaker。本節說明這些使用案例,以及針對每個使用案例建議 SageMaker 的功能。

使用案例

以下是使用 部署 ML 模型的主要使用案例 SageMaker。

  • 使用案例 1:在低程式碼或無程式碼環境中部署機器學習模型。對於初學者或 新手 SageMaker,您可以透過 Amazon SageMaker Studio 介面使用 Amazon 部署預先訓練 SageMaker JumpStart 的模型,而不需要複雜的組態。

  • 使用案例 2:使用程式碼部署具有更多彈性和控制的機器學習模型。經驗豐富的 ML 從業者可以使用 Python 中的 SageMaker ModelBuilder類別,根據其應用程式需求使用自訂設定部署自己的模型SDK,該類別可對各種設定提供精細的控制,例如執行個體類型、網路隔離和資源配置。

  • 使用案例 3:大規模部署機器學習模型。對於想要在生產中大規模管理模型的進階使用者和組織,請使用 AWS SDK for Python (Boto3) 和 AWS CloudFormation 搭配您想要的基礎設施作為程式碼 (IaC) 和 CI/CD 工具,以佈建資源並自動化資源管理。

下表說明與每個使用案例對應的 SageMaker 功能的關鍵考量和權衡。

使用案例 1 使用案例 2 使用案例 3
SageMaker 功能 JumpStart Studio 中使用 來加速基礎模型部署。 ModelBuilder 從 SageMaker Python SDK使用 部署模型。 使用 大規模部署和管理模型 AWS CloudFormation
描述 使用 Studio UI 將預先訓練的模型從目錄部署到預先設定的推論端點。此選項非常適合公民資料科學家,或想要部署模型而不設定複雜設定的人。 使用 Amazon SageMaker Python 中的 ModelBuilder類別SDK來部署您自己的模型並設定部署設定。此選項非常適合經驗豐富的資料科學家,或擁有自己的模型來部署和需要精細控制的任何人。 使用 AWS CloudFormation 和 基礎設施作為程式碼 IaC) 進行程式設計控制和自動化,以部署和管理 SageMaker模型。此選項非常適合需要一致且可重複部署的進階使用者。
已針對 最佳化 快速且簡化的熱門開放原始碼模型部署 部署您自己的模型 持續管理生產中的模型
考量事項 缺少容器設定和特定應用程式需求的自訂 沒有 UI,需要您能夠自在地開發和維護 Python 程式碼 需要基礎設施管理和組織資源,也需要熟悉 AWS SDK for Python (Boto3) 或 AWS CloudFormation 範本。
建議的環境 SageMaker 網域 以您的 AWS 憑證和SDK已安裝的 Python 設定的 SageMaker Python SageMaker IDE開發環境,或諸如 SageMaker JupyterLab AWS CLI、本機開發環境,以及基礎設施作為程式碼 (IaC) 和 CI/CD 工具

其他選項

SageMaker 為您的推論使用案例提供不同的選項,讓您選擇部署的技術廣度和深度:

  • 將模型部署至端點。部署模型時,請考慮下列選項:

    • 即時推論。 即時推論非常適合具有互動式、低延遲需求的推論工作負載。

    • 使用 Amazon SageMaker 無伺服器推論部署模型。 使用無伺服器推論來部署模型,而無需設定或管理任何基礎基礎設施。此選項適用於流量快速之間具有閒置期間的工作負載,並且可以容忍冷啟動。

    • 非同步推論。 會將傳入的請求排入佇列,並以非同步方式處理。此選項非常適合承載大小大 (最高 1GB)、處理時間較長 toAsynchronous (推論一小時) 和近乎即時延遲需求的請求

  • 成本最佳化。若要最佳化推論成本,請考慮下列選項:

    • 使用 SageMaker Neo 進行模型效能最佳化。 使用 SageMaker Neo 以更好的效能和效率最佳化和執行機器學習模型,透過自動最佳化模型以在 AWS Inferentia 晶片等環境中執行,協助您將運算成本降至最低。

    • Amazon SageMaker 模型的自動擴展。 使用自動擴展根據傳入流量模式動態調整端點的運算資源,這可協助您僅支付在給定時間使用的資源,進而最佳化成本。