搭配 Amazon 使用 Hugging Face 的資源 SageMaker - Amazon SageMaker

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

搭配 Amazon 使用 Hugging Face 的資源 SageMaker

Amazon SageMaker 可讓客戶在 上使用 Hugging Face 模型進行自然語言處理 (NLP) 進行訓練、微調和執行推論 SageMaker。您可以使用 Hugging Face 進行訓練和推論。下一節提供 Hugging Face 模型的相關資訊,並包含可用來了解如何搭配 使用 Hugging Face 的參考資料 SageMaker。

此功能可透過開發 Hugging Face AWS Deep Learning Containers 獲得。這些容器包括 Hugging Face 轉換器、權杖化工具和資料集程式庫,可讓您將這些資源用於訓練和推論任務。有關可用深度學習容器圖像的清單,請參閱可用的深度學習容器映像檔。這些深度學習容器映像檔會獲得維護並定期更新安全性修補程式。

若要搭配 SageMaker Python 使用 Hugging Face 深度學習容器SDK進行訓練,請參閱 Hugging Face SageMaker 估算器 。透過 Hugging Face 估算器,您可以使用 Hugging Face SageMaker 模型,就像任何其他估算器一樣。不過,使用 SageMaker Python SDK是選用的。您也可以搭配 AWS CLI 和 協調 Hugging Face 深度學習容器的使用 AWS SDK for Python (Boto3)。

若要取得有關 Hugging Face 及其中可用模型的更多資訊,請參閱 Hugging Face 文件

培訓

若要執行訓練,請使用 Hugging Face 中提供的任何數千種模型,並針對您的使用案例進行微調,並進行額外的訓練。透過 SageMaker,您可以使用標準訓練或利用SageMaker 分散式資料和模型平行訓練

與其他使用自訂程式碼 SageMaker 的訓練任務一樣,您可以透過將指標定義傳遞至 SageMaker Python 來擷取自己的指標SDK。如需範例,請參閱定義訓練指標 (SageMaker Python SDK)。 您可以使用 TrainingJobAnalytics方法,使用 CloudWatch和 作為 Pandas DataFrame來存取擷取的指標。模型經過訓練和微調後,您可以像任何其他模型一樣使用模型來執行推論任務。

如何使用 Hugging Face 估算器執行訓練

您可以使用 SageMaker Python 實作訓練任務的 Hugging Face 估算器SDK。 SageMaker Python SDK是開放原始碼程式庫,用於在 上訓練和部署機器學習模型 SageMaker。如需 Hugging Face 估算器的詳細資訊,請參閱 SageMaker Python SDK 文件。

透過 SageMaker Python SDK,您可以在下列環境中使用 Hugging Face Estimator 執行訓練任務:

  • Amazon SageMaker Studio Classic:Studio Classic 是機器學習 (MLIDE) 的第一個完全整合的開發環境 ()。Studio Classic 提供單一的 Web 型視覺化界面,您可以在其中執行下列所有 ML 開發步驟:

    • 準備

    • build

    • 訓練和調校

    • 部署和管理模型

    如需在 Studio Classic 中使用 Jupyter Notebook 的資訊,請參閱 使用 Amazon SageMaker Studio Classic Notebook

  • SageMaker 筆記本執行個體 :Amazon SageMaker 筆記本執行個體是執行 Jupyter 筆記本應用程式的機器學習 (ML) 運算執行個體。此應用程式可讓您在筆記本執行個體中執行 Jupyter Notebook,以:

    • 準備和處理資料

    • 編寫程式碼來訓練模型

    • 將模型部署至 SageMaker 託管

    • 在沒有 Debugger、Model Monitoring 和 Web 型 SageMaker Studio 功能的情況下測試或驗證模型 IDE

  • 本機:如果您已連線至 AWS 並具有適當的 SageMaker 許可,則可以在SDK本機使用 SageMaker Python。透過本機使用,您可以在 SageMaker 中為 Hugging Face 啟動遠端訓練和推論任務 AWS。這可在您的本機機器,以及其他具有已連線 SageMaker Python SDK和適當許可 AWS 的服務上運作。

Inference

對於推論,您可以使用訓練過的 Hugging Face 模型或其中一個預先訓練的 Hugging Face 模型,透過 部署推論任務 SageMaker。透過這種協作,您只需一行程式碼,即可使用 部署訓練過的模型和預先訓練的模型 SageMaker。您也可以執行推論任務,而不必撰寫任何自訂推論程式碼。使用自訂推論程式碼,您可以提供自己的 Python 指令碼來自訂推論邏輯。

如何使用 Hugging Face Deep Learning Containers 部署推論任務

您可以使用 執行推論的兩個選項 SageMaker。您可以使用訓練過的模型執行推論,或部署預先訓練的 Hugging Face 模型。

  • 使用訓練過的模型執行推論:您有兩種選項可以使用訓練過的模型執行推論:

    • 使用您使用現有 Hugging Face 模型搭配 SageMaker Hugging Face 深度學習容器訓練的模型執行推論。

    • 攜帶您現有的 Hugging Face 模型,並使用 部署 SageMaker。

    當您使用使用使用 SageMaker Hugging Face Estimator 訓練的模型執行推論時,您可以在訓練完成後立即部署模型。您也可以將訓練過的模型上傳到 Amazon S3 儲存貯體,並在稍後執行推論時擷取。

    如果您攜帶自己的現有 Hugging Face 模型,則必須將訓練過的模型上傳到 Amazon S3 儲存貯體。然後,您可以在執行推論時擷取該儲存貯體,如部署 Hugging Face Transformer 的推論範例 所示。

  • 使用預先訓練的 HuggingFace 模型執行推論:您可以使用數千種預先訓練的 Hugging Face 模型之一來執行推論任務,而不需要額外的訓練。若要執行推論,請從 Hugging Face 模型 清單中選擇預先訓練的模型,如部署預先訓練的 Hugging Face Transformer for 推論範例 中所述。

您想要做什麼?

Hugging Face 筆記本儲存庫中的下列筆記本展示如何在 SageMaker 各種使用案例中將 Hugging Face 深度學習容器與 搭配使用。

我想要在 中使用 Hugging Face SageMaker 搭配 來訓練和部署文字分類模型 PyTorch。

如需 Jupyter Notebook 範例,請參閱PyTorch 入門示範。

我想要在 中使用 Hugging Face SageMaker 搭配 來訓練和部署文字分類模型 TensorFlow。

如需 Jupyter Notebook 範例,請參閱TensorFlow 入門範例

我想要使用 Hugging Face 和 SageMaker Distributed 執行資料平行處理的分散式訓練。

如需 Jupyter 筆記本範例,請參閱分散式訓練範例

我想要使用 Hugging Face 和 SageMaker Distributed 執行模型平行處理的分散式訓練。

如需 Jupyter 筆記本範例,請參閱模型並行性範例

我想要在 中使用 Hugging Face 使用 Spot 執行個體來訓練和部署模型 SageMaker。

如需 Jupyter 筆記本範例,請參閱 Spot 執行個體範例

我想要擷取自訂指標,並在 中使用 Hugging Face 訓練文字分類模型時使用 SageMaker Checkpointing SageMaker。

如需 Jupyter 筆記本範例,請參閱使用自訂指標訓練範例

我想要在 中使用 Hugging Face 訓練分散式問題回答 TensorFlow 模型 SageMaker。

如需 Jupyter Notebook 範例,請參閱分散式 TensorFlow 訓練範例

我想要在 中使用 Hugging Face 訓練分散式摘要模型 SageMaker。

如需 Jupyter 筆記本範例,請參閱分散式摘要訓練範例

我想要在 中使用 Hugging Face 訓練影像分類模型 SageMaker。

如需 Jupyter 筆記本範例,請參閱視覺轉換器訓練範例

我想要在 中部署訓練有素的 Hugging Face 模型 SageMaker。

如需 Jupyter 筆記本範例,請參閱部署 Hugging Face 轉換器以進行推論範例

我想要在 中部署預先訓練的 Hugging Face 模型 SageMaker。

如需 Jupyter 筆記本範例,請參閱部署預先訓練 Hugging Face 轉換器以進行推論範例