

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

# 将亚马逊 SageMaker Studio Lab 环境导出到亚马逊 SageMaker Studio 经典版
<a name="studio-lab-use-migrate"></a>

Amazon SageMaker Studio Classic 为机器学习和深度学习工作流程提供了许多功能，这些功能在 Amazon SageMaker Studio Lab 中是不可用的。本页介绍如何将 Studio Lab 环境迁移到 Studio Classic，以利用更多的计算容量、存储空间和功能。不过，您可能需要熟悉 Studio Classic 的预构建容器，这些容器针对完整的 MLOP 管道进行了优化。有关更多信息，请参阅 [亚马逊 SageMaker Studio 实验室](studio-lab.md)。

要将 Studio Lab 环境迁移到 Studio Classic，您首先必须按照 [亚马逊 SageMaker AI 域名概述](gs-studio-onboard.md) 中的步骤登录到 Studio Classic。

**Topics**
+ [

## 步骤 1：导出 Studio Lab 的 conda 环境
](#studio-lab-use-migrate-step1)
+ [

## 步骤 2：保存 Studio Lab 构件
](#studio-lab-use-migrate-step2)
+ [

## 步骤 3：将 Studio Lab 构件导入到 Studio Classic
](#studio-lab-use-migrate-step3)
+ [

## 步骤 4：在 Studio Classic 中安装您的 Studio Lab conda 环境
](#studio-lab-use-migrate-step4)

## 步骤 1：导出 Studio Lab 的 conda 环境
<a name="studio-lab-use-migrate-step1"></a>

您可以按照[管理环境](studio-lab-use-manage.md)中的步骤导出 conda 环境并向环境中添加库或软件包。以下示例演示如何使用要导出到 Studio Classic 的 `default` 环境。

1. 打开 Studio Lab 终端，方法是打开**文件浏览器**面板 (![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/zh_cn/sagemaker/latest/dg/images/studio/icons/folder.png))，选择文件浏览器顶部菜单上的加号 (**\$1**) 以打开 **Launcher**，然后选择**终端**。在 Studio Lab 终端运行以下命令，列出 conda 环境。

   ```
   conda env list
   ```

   该命令将输出 conda 环境列表及其在文件系统中的位置。当您登录到 Studio Lab 时，会自动激活 `studiolab` conda 环境。

   ```
   # conda environments: #
              default                  /home/studio-lab-user/.conda/envs/default
              studiolab             *  /home/studio-lab-user/.conda/envs/studiolab
              studiolab-safemode       /opt/amazon/sagemaker/safemode-home/.conda/envs/studiolab-safemode
              base                     /opt/conda
   ```

   我们建议您不要导出 `studiolab`、`studiolab-safemode` 和 `base` 环境。由于以下原因，Studio Classic 中无法使用这些环境：
   +  `studiolab`: 这为 Studio Lab 设置了 JupyterLab 环境。Studio Lab 运行的主要版本与 Studio Classic 不同，因此无法在 Studio Classic 中使用。 JupyterLab 
   +  `studiolab-safemode`: 这也为 Studio Lab 设置了 JupyterLab 环境。Studio Lab 运行的主要版本与 Studio Classic 不同，因此无法在 Studio Classic 中使用。 JupyterLab 
   +  `base`：该环境默认使用 conda。Studio Lab 中的 `base` 环境和 Studio Classic 中的 `base` 环境有许多软件包的版本不兼容。

1. 对于要迁移到 Studio Classic 的 conda 环境，首先要激活 conda 环境。当安装或删除新库时，`default` 环境也会随之改变。要获取环境的确切状态，请使用命令行将其导出为 YAML 文件。以下命令行将默认环境导出为 YAML 文件，创建一个名为 `myenv.yml` 的文件。

   ```
   conda activate default
   conda env export > ~/myenv.yml
   ```

## 步骤 2：保存 Studio Lab 构件
<a name="studio-lab-use-migrate-step2"></a>

现在，您已经将环境保存到 YAML 文件中，可以将环境文件移动到任何平台上。

------
#### [ Save to a local machine using Studio Lab GUI ]

**注意**  
通过右键单击目录从 Studio Lab GUI 下载目录的功能目前不可用。如果要导出目录，请使用**保存到 Git 存储库**选项卡按照步骤操作。

一种选择是将环境保存到本地电脑上。为此，请使用以下过程。

1. 在 Studio Lab 中，选择左侧菜单上的**文件浏览器**图标 (![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/zh_cn/sagemaker/latest/dg/images/studio/icons/folder.png))，这样**文件浏览器**面板就会显示在左侧。

1. 选择文件搜索栏下方的文件图标，导航至用户目录。

1. 选择（右键单击）`myenv.yml` 文件，然后选择**下载**。您可以对要导入到 Studio Classic 的其他文件重复此过程。

------
#### [ Save to a Git repository ]

另一种选择是将环境保存到 Git 存储库中。此选项 GitHub 用作示例。这些步骤需要 GitHub 账户和存储库。有关更多信息，请访问[GitHub](https://github.com/)。以下过程说明如何 GitHub 使用 Studio Lab 终端将内容与同步。

1. 从 Studio Lab 终端，导航到用户目录，并新建一个目录以包含要导出的文件。

   ```
   cd ~
   mkdir <NEW_DIRECTORY_NAME>
   ```

1. 创建新目录后，将任何要导出的文件或目录复制到 `<NEW_DIRECTORY_NAME>`。

   使用以下代码格式复制文件：

   ```
   cp <FILE_NAME> <NEW_DIRECTORY_NAME>
   ```

   例如，将 `<FILE_NAME>` 替换为 `myenv.yml`。

   使用以下代码格式复制任何目录：

   ```
   cp -r <DIRECTORY_NAME> <NEW_DIRECTORY_NAME>
   ```

   例如，将 `<DIRECTORY_NAME>` 替换为用户目录中的任何目录名。

1. 导航至新目录，使用以下命令将该目录初始化为 Git 存储库。有关更多信息，请参阅 [git-init 文档](https://git-scm.com/docs/git-init)。

   ```
   cd <NEW_DIRECTORY_NAME>
   git init
   ```

1. 使用 Git 添加所有相关文件，然后提交更改。

   ```
   git add .
   git commit -m "<COMMIT_MESSAGE>"
   ```

   例如，将 `<COMMIT_MESSAGE>` 替换为 `Add Amazon SageMaker Studio Lab artifacts to GitHub repository to migrate to Amazon SageMaker Studio Classic `。

1. 将提交推送到远程存储库。此存储库的格式为，`https://github.com/<GITHUB_USERNAME>/ <REPOSITORY_NAME>.git`其中`<GITHUB_USERNAME>`是您的 GitHub用户名，`<REPOSITORY_NAME>`是您的远程存储库名称。创建一个分支`<BRANCH_NAME>`以将内容推送到 GitHub 存储库。

   ```
   git branch -M <BRANCH_NAME>
   git remote add origin https://github.com/<GITHUB_USERNAME>/<REPOSITORY_NAME>.git
   git push -u origin <BRANCH_NAME>
   ```

------

## 步骤 3：将 Studio Lab 构件导入到 Studio Classic
<a name="studio-lab-use-migrate-step3"></a>

以下过程说明如何将构件导入到 Studio Classic。通过管理控制台使用特征存放区的指令取决于您是否已启用 Studio 或 Studio Classic 作为默认体验。有关通过管理控制台访问 Studio Classic 的信息，请参阅 [如果 Studio 是您的默认体验，则启动 Studio Classic](studio-launch.md#studio-launch-console-updated)。

在 Studio Classic 中，您可以从本地电脑或 Git 存储库导入文件。您可使用 Studio Classic GUI 或终端完成此操作。以下过程使用[步骤 2：保存 Studio Lab 构件](#studio-lab-use-migrate-step2)中的示例。

------
#### [ Import using the Studio Classic GUI ]

如果将文件保存到了本地电脑，则可以通过以下步骤将文件导入到 Studio Classic。

1. 打开 Studio Classic 左上角的**文件浏览器**面板 (![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/zh_cn/sagemaker/latest/dg/images/studio/icons/folder.png))。

1. 在**文件浏览器**面板顶部的菜单上选择**上传文件**图标 (![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/zh_cn/sagemaker/latest/dg/images/icons/File_upload_squid.png))。

1. 导航到要导入的文件，然后选择**打开**。

**注意**  
要将目录导入到 Studio Classic，首先要将本地电脑上的目录压缩成文件。在 Mac 上，右键单击该目录并选择 **“压缩*<DIRECTORY\$1NAME>*”**。在 Windows 中，右键单击目录并选择**发送到**，然后选择**压缩的文件夹**。压缩目录后，使用前面的步骤导入压缩文件。导航到 Studio Classic 终端并运行命令 `<DIRECTORY_NAME>.zip` 来解压缩压缩文件。

------
#### [ Import using a Git repository ]

此示例提供了两个选项，说明如何将 GitHub 存储库克隆到 Studio Classic 中。您可以通过选择 Studio Classic 左侧的 **Git** (![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/zh_cn/sagemaker/latest/dg/images/studio/icons/git.png)) 选项卡来使用 Studio Classic GUI。选择 “**克隆存储库**”，然后从中粘贴您的 GitHub 存储库 URL [步骤 2：保存 Studio Lab 构件](#studio-lab-use-migrate-step2)。另一种方法是使用 Studio Classic 终端，具体步骤如下。

1. 打开 Studio Classic **Launcher**。有关打开**启动器的**更多信息，请参阅 [Amazon SageMaker Studio 经典启动器](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-launcher.html)。

1. 在 **Launcher** 的**笔记本和计算资源**部分，选择**更改环境**。

1. 在 Studio Classic 中，打开 **Launcher**。要打开**启动器**，请选择 ** SageMaker Studio Classic 左上角的 Amazon St** udio Classic。

   要了解打开 **Launcher** 的所有可用方法，请参阅[使用 Amazon SageMaker Studio 经典启动器](studio-launcher.md)。

1. 在**更改环境**对话框中，使用**映像**下拉列表选择 **Data Science** 映像并选定**选择**。此映像已预装 conda。

1. 在 Studio Classic **Launcher** 中，选择**打开映像终端**。

1. 在映像终端中，运行以下命令来克隆存储库。此命令在 Studio Classic 实例中创建一个以 `<REPOSITORY_NAME>` 命名的目录，并在该存储库中克隆您的构件。

   ```
   git clone https://github.com/<GITHUB_USERNAME>/<REPOSITORY_NAME>.git
   ```

------

## 步骤 4：在 Studio Classic 中安装您的 Studio Lab conda 环境
<a name="studio-lab-use-migrate-step4"></a>

现在，您可以在 Studio Classic 实例中使用 YAML 文件重新创建 conda 环境。打开 Studio Classic **Launcher**。有关打开**启动器的**更多信息，请参阅 [Amazon SageMaker Studio 经典启动器](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-launcher.html)。在 **Launcher** 中，选择**打开映像终端**。在终端中，导航到包含 YAML 文件的目录，然后运行以下命令。

```
conda env create --file <ENVIRONMENT_NAME>.yml
conda activate <ENVIRONMENT_NAME>
```

完成这些命令后，您就可以选择环境作为 Studio Classic 笔记本实例的内核。要查看可用环境，请运行 `conda env list`。要激活您的环境，请运行 `conda activate <ENVIRONMENT_NAME>`。

