

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

# 在 Amazon SageMaker Studio Classic 中安装外部库和内核
<a name="studio-notebooks-add-external"></a>

**重要**  
截至 2023 年 11 月 30 日，之前的亚马逊 SageMaker Studio 体验现在被命名为 Amazon St SageMaker udio Classic。以下部分专门介绍如何使用 Studio Classic 应用程序。有关使用更新的 Studio 体验的信息，请参阅 [亚马逊 SageMaker Studio](studio-updated.md)。  
Studio Classic 仍针对现有工作负载进行维护，但不再可供入门使用。您只能停止或删除现有的 Studio Classic 应用程序，不能创建新的应用程序。我们建议您将[工作负载迁移到全新 Studio 体验](studio-updated-migrate.md)。

Amazon SageMaker Studio Classic 笔记本电脑已经安装了多张图片。这些图像包含内核和 Python 包，包括 scikit-learn、Pandas、、、 NumPy和。 TensorFlow PyTorch MXNet您也可以安装自己的包含所选软件包和内核的映像。有关安装您自己的映像的更多信息，请参阅 [亚马逊 SageMaker Studio 经典版中的自定义图片](studio-byoi.md)。

Amazon SageMaker Studio Classic 笔记本电脑中不同的 Jupyter 内核是独立的 conda 环境。有关 conda 环境的信息，请参阅[管理环境](https://conda.io/docs/user-guide/tasks/manage-environments.html)。

## 软件包安装工具
<a name="studio-notebooks-external-tools"></a>

**重要**  
目前，亚马逊 SageMaker 笔记本电脑中的所有软件包均已获得与 Amazon A SageMaker I 配合使用的许可，不需要额外的商业许可。但是，这可能会在未来发生变化，我们建议定期查看许可条款以了解任何更新。

从终端安装 Python 软件包时使用的方法因映像不同而异。Studio Classic 支持以下软件包安装工具：
+ **笔记本** – 支持以下命令。如果下面的一条命令对映像不起作用，请尝试另一条命令。
  + `%conda install`
  + `%pip install`
+ **Jupyter 终端** – 您可以直接使用 pip 和 conda 安装软件包。您也可以使用 `apt-get install` 从终端安装系统软件包。

**注意**  
我们不建议使用`pip install -u`或`pip install --user`，因为这些命令会在用户的 Amazon EFS 卷上安装软件包，并且可能会阻止 JupyterServer 应用程序重启。可以改用生命周期配置在应用程序重启时重新安装所需的软件包，如 [使用生命周期配置安装软件包](#nbi-add-external-lcc) 中所示。

我们建议使用 `%pip` 和 `%conda` 从笔记本中安装软件包，因为这些函数正确考虑了正在使用的活动环境或解释器。有关更多信息，请参阅[添加 %pip 和 %conda 魔术函数](https://github.com/ipython/ipython/pull/11524)。您也可以使用系统命令语法（以 \$1 开头的行）安装软件包。例如，`!pip install` 和 `!conda install`。

### Conda
<a name="studio-notebooks-add-external-tools-conda"></a>

Conda 是一个开源软件包管理系统和环境管理系统，可以安装软件包及其依赖项。 SageMaker 人工智能支持在 conda-forge 频道中使用 conda。有关更多信息，请参阅 [Conda 通道](https://docs.conda.io/projects/conda/en/latest/user-guide/concepts/channels.html)。conda-forge 通道是一个社区通道，贡献者可以在这里上传软件包。

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

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

Conda 有两种激活环境的方法：`conda activate` 和 `source activate`。有关更多信息，请参阅[管理环境](https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html)。

**支持的 conda 操作**
+ 在单个环境中 `conda install` 软件包
+ 在所有环境中 `conda install` 软件包
+ 从主 conda 存储库安装软件包
+ 从 conda-forge 安装软件包
+ 更改 conda 安装位置以使用 Amazon EBS
+ 支持 `conda activate` 和 `source activate`

### Pip
<a name="studio-notebooks-add-external-tools-pip"></a>

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

**支持的 Pip 操作**
+ 使用 Pip 在没有活动 conda 环境的情况下安装软件包
+ 使用 Pip 在 conda 环境中安装软件包
+ 使用 Pip 在所有 conda 环境中安装软件包
+ 更改 Pip 安装位置以使用 Amazon EBS
+ 使用 Pip 安装软件包时使用替代存储库

### 不支持
<a name="studio-notebooks-add-external-tools-misc"></a>

SageMaker AI 旨在支持尽可能多的软件包安装操作。但是，如果这些软件包是由 SageMaker AI 安装的，并且您对这些软件包使用了以下操作，则可能会使您的环境变得不稳定：
+ 卸载
+ 降级
+ Upgrading

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

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

## 使用生命周期配置安装软件包
<a name="nbi-add-external-lcc"></a>

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