在 Amazon SageMaker Studio Classic 中安装外部库和内核 - Amazon SageMaker
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

在 Amazon SageMaker Studio Classic 中安装外部库和内核

重要

截至 2023 年 11 月 30 日,之前的亚马逊 SageMaker Studio 体验现在被命名为 Amazon St SageMaker udio Classic。以下部分专门介绍如何使用 Studio Classic 应用程序。有关使用更新后的 Studio 体验的信息,请参阅亚马逊 SageMaker Studio

Amazon SageMaker Studio Classic 笔记本电脑已经安装了多张图片。这些图像包含内核和 Python 包,包括 scikit-learn、Pandas、、、和 mxNe NumPy t TensorFlow。 PyTorch您也可以安装自己的包含所选软件包和内核的映像。有关安装您自己的映像的更多信息,请参阅 带上你自己的 SageMaker 图片

Amazon SageMaker Studio Classic 笔记本电脑中不同的 Jupyter 内核是独立的 conda 环境。有关 conda 环境的信息,请参阅管理环境

软件包安装工具

重要

目前,亚马逊 SageMaker 笔记本中的所有套餐均已获得亚马逊使用许可 SageMaker ,不需要额外的商业许可。但是,将来可能会发生变化,我们建议您定期查看许可条款以了解是否有任何更新。

从终端安装 Python 软件包时使用的方法因映像不同而异。Studio Classic 支持以下软件包安装工具:

  • 笔记本 – 支持以下命令。如果下面的一条命令对映像不起作用,请尝试另一条命令。

    • %conda install

    • %pip install

  • Jupyter 终端 – 您可以直接使用 pip 和 conda 安装软件包。您也可以使用 apt-get install 从终端安装系统软件包。

注意

我们不建议使用pip install -upip install --user,因为这些命令会在用户的 Amazon EFS 卷上安装软件包,并且可能会阻止 JupyterServer 应用程序重启。可以改用生命周期配置在应用程序重启时重新安装所需的软件包,如 使用生命周期配置安装软件包 中所示。

我们建议使用 %pip%conda 从笔记本中安装软件包,因为这些函数正确考虑了正在使用的活动环境或解释器。有关更多信息,请参阅添加 %pip 和 %conda 魔术函数。您也可以使用系统命令语法(以 ! 开头的行)安装软件包。例如,!pip install!conda install

Conda

Conda 是一个开源软件包管理系统和环境管理系统,可以安装软件包及其依赖项。 SageMaker 支持在 conda-forge 频道中使用 conda。有关更多信息,请参阅 Conda 通道。conda-forge 通道是一个社区通道,贡献者可以在这里上传软件包。

注意

从 conda-forge 安装软件包最多可能需要 10 分钟时间。计时与 conda 解析依赖关系图的方式有关。

所有 SageMaker 提供的环境均正常运行。用户安装的软件包可能无法正常运行。

Conda 有两种激活环境的方法:conda activatesource activate。有关更多信息,请参阅管理环境

支持的 conda 操作
  • 在单个环境中 conda install 软件包

  • 在所有环境中 conda install 软件包

  • 从主 conda 存储库安装软件包

  • 从 conda-forge 安装软件包

  • 更改 conda 安装位置以使用 Amazon EBS

  • 支持 conda activatesource activate

Pip

Pip 是用于安装和管理 Python 软件包的工具。默认情况下,Pip 在 Python 软件包索引 (PyPI) 上搜索软件包。与 conda 不同,Pip 没有内置的环境支持。因此,Pip 在处理依赖本机库或系统库的软件包时,不如 conda 那么彻底。Pip 可以用来在 Conda 环境中安装软件包。您可以将替代软件包存储库与 Pip 一起使用,而不是 PyPI。

支持的 Pip 操作
  • 使用 Pip 在没有活动 conda 环境的情况下安装软件包

  • 使用 Pip 在 conda 环境中安装软件包

  • 使用 Pip 在所有 conda 环境中安装软件包

  • 更改 Pip 安装位置以使用 Amazon EBS

  • 使用 Pip 安装软件包时使用替代存储库

不支持

SageMaker 旨在支持尽可能多的软件包安装操作。但是,如果软件包是由安装的, SageMaker 并且您对这些软件包使用了以下操作,则可能会使您的环境变得不稳定:

  • 卸载

  • 降级

  • Upgrading

由于网络条件或配置的潜在问题,或者 conda 或的可用性 PyPi,软件包可能无法在固定或确定的时间内安装。

注意

尝试在依赖关系不兼容的环境中安装软件包可能会导致安装失败。如果出现问题,您可以联系库维护者以更新软件包依赖关系。修改环境(例如删除或更新现有软件包)时,可能会导致该环境不稳定。

使用生命周期配置安装软件包

在 Studio Classic 实例的 Amazon EBS 卷上安装自定义映像和内核,这样当你停止和重启笔记本时,它们就会持续存在,并且你安装的任何外部库都不会被更新。 SageMaker为此,请使用生命周期配置,其中包括创建笔记本 (on-create)) 时运行的脚本和每次重启笔记本 (on-start) 时运行的脚本。有关在 Studio Classic 中使用生命周期配置的更多信息,请参阅在 Amazon SageMaker Studio 经典版中使用生命周期配置。有关示例生命周期配置脚本,请参阅 SageMakerStudio Classic 生命周期配置示例