
# 使用VS Code ToolKit连接Notebook
本节介绍如何在本地使用ModelArts提供的VS Code插件工具VS Code ToolKit，协助用户完成SSH远程连接Notebook。
#### VS Code ToolKit功能介绍
<video controls="controls" preload="none" id="object351244020320" class="idp-external-video" src="https://res-video.hc-cdn.com/cloudbu-site/china/zh-cn/support/modelarts-video/1667809646530592571.mp4" title="VSCode_Toolkit功能介绍-v2.mp4" poster="https://support.huaweicloud.com/devtool-modelarts/figure/zh-cn_image_0000001503823449.png" height="300" width="525"></video>
#### 前提条件
已下载并安装VS Code，并满足VS Code推荐版本及约束限制要求。详细操作请参考[VS Code连接Notebook方式介绍](https://support.huaweicloud.com/devtool-modelarts/devtool-modelarts_0019.html)。
#### 步骤一：安装VS Code插件
1. 在本地的VS Code开发环境中，如[图1]所示，在VS Code扩展中搜索"ModelArts-HuaweiCloud"并单击"安装"。
   图1安装VS Code插件   
   ![](https://support.huaweicloud.com/devtool-modelarts/figure/zh-cn_image_0000001402157596.png) 
2. 安装过程预计1\~2分钟，如[图2]所示，请耐心等待。
   图2安装过程   
   ![](https://support.huaweicloud.com/devtool-modelarts/figure/zh-cn_image_0000001401997692.png "点击放大") 
3. 安装完成后，系统右下角提示安装完成，导航左侧出现ModelArts图标![](https://support.huaweicloud.com/devtool-modelarts/figure/zh-cn_image_0000001402157604.png)和SSH远程连接图标![](https://support.huaweicloud.com/devtool-modelarts/figure/zh-cn_image_0000001402477380.png)，表示VS Code插件安装完成。
   图3安装完成提示   
   ![](https://support.huaweicloud.com/devtool-modelarts/figure/zh-cn_image_0000001452517285.png "点击放大")
   图4安装完成   
   ![](https://support.huaweicloud.com/devtool-modelarts/figure/zh-cn_image_0000001452637621.png "点击放大") 
 
当前网络不佳时SSH远程连接插件可能未安装成功，此时无需操作，在[步骤四：连接Notebook实例](https://support.huaweicloud.com/devtool-modelarts/devtool-modelarts_0207.html#ZH-CN_TOPIC_0000001402317048__zh-cn_topic_0000001138996902_section6793856103312)的[1]之后，会弹出如下图对话框，单击Install and Reload即可。
图5重新连接远程SSH   
![](https://support.huaweicloud.com/devtool-modelarts/figure/zh-cn_image_0000001452797429.png "点击放大")
#### 步骤二：登录VS Code插件
1. 在本地的VS Code开发环境中，单击ModelArts图标![](https://support.huaweicloud.com/devtool-modelarts/figure/zh-cn_image_0000001402317392.png)，单击"User Settings"，配置用户登录信息。
   图6登录插件   
   ![](https://support.huaweicloud.com/devtool-modelarts/figure/zh-cn_image_0000001452757269.png "点击放大")
   输入如下用户登录信息，单击"登录"。
   - Name：自定义用户名，仅用于VS Code页面展示，不与任何华为云用户关联。
   
   - AK、SK：在"账号中心 \> 我的凭证 \> 访问密钥"中创建访问密钥，获取AK、SK（[参考链接](https://support.huaweicloud.com/modelarts_faq/modelarts_05_0004.html)）。
   
   - 选择站点：此处的站点必须和远程连接的Notebook在同一个站点，否则会导致连接失败。
     
2. 登录成功后显示Notebook实例列表。
   ![](https://support.huaweicloud.com/devtool-modelarts/public_sys-resources/note_3.0-zh-cn.png)
   此处仅显示ModelArts控制台default工作空间下的Notebook实例。
   图7登录成功   
   ![](https://support.huaweicloud.com/devtool-modelarts/figure/zh-cn_image_0000001452517281.png "点击放大") 
 
#### 步骤三：创建Notebook实例
![](https://support.huaweicloud.com/devtool-modelarts/public_sys-resources/caution_3.0-zh-cn.png)
- 创建实例时，需开启"SSH远程开发"，并下载保存密钥对至本地如下目录。 Windows：C:\\Users\\{{user}}
  macOS/Linux: \~
  
- 密钥对在用户第一次创建时自动下载，之后使用相同的密钥时不会再有下载界面（请妥善保管），或者每次都使用新的密钥对。
 
创建一个Notebook实例，并开启SSH远程开发，具体参见[创建Notebook实例](https://support.huaweicloud.com/devtool-modelarts/devtool-modelarts_3495.html)。
 #### 步骤四：连接Notebook实例
1. 在本地的VS Code开发环境中，右键单击实例名称，单击"Connect to Instance"，启动并连接Notebook实例。
   Notebook实例状态处于"运行中"或"停止"状态都可以，如果Notebook实例是停止状态，连接Notebook时，VS Code插件会先启动实例再去连接。
   图8连接Notebook实例   
   ![](https://support.huaweicloud.com/devtool-modelarts/figure/zh-cn_image_0000001589141685.png "点击放大")
   或者单击实例名称，在VS Code开发环境中显示Notebook实例详情页，单击"连接"，系统自动启动该Notebook实例并进行远程连接。
   图9查看Notebook实例详情页   
   ![](https://support.huaweicloud.com/devtool-modelarts/figure/zh-cn_image_0000001452757261.png "点击放大") 
2. 第一次连接Notebook时，系统右下角会提示需要先配置密钥文件。选择本地密钥pem文件，根据系统提示单击"OK"。
   图10配置密钥文件   
   ![](https://support.huaweicloud.com/devtool-modelarts/figure/zh-cn_image_0000001402157600.png "点击放大") 
3. 单击"确定"后，插件自动连接远端Notebook实例。首次连接大约耗时1\~2分钟，取决于本地的网络情况。VS Code环境左下角显示类似下图即为连接成功。
   图11连接成功   
   ![](https://support.huaweicloud.com/devtool-modelarts/figure/zh-cn_image_0000001452637625.png "点击放大")
   
   
 
#### 步骤五：连接Notebook实例
1. 在VS Code界面，上传本地代码到云端开发环境。
   1. 单击"File \> OpenFolder"，选择要打开的路径，单击"OK"。
      图12Open Folder   
      ![](https://support.huaweicloud.com/devtool-modelarts/figure/zh-cn_image_0000001974070748.png "点击放大")
      图13选择文件路径   
      ![](https://support.huaweicloud.com/devtool-modelarts/figure/zh-cn_image_0000001973911016.png "点击放大") 
   
   
   
   2. 此时，会在IDE左侧出现该开发环境下的目录结构，选择想要上传的代码及其他文件，拖拽至目录对应的文件夹内即完成本地代码上传至云端。
   
   3. 在VS Code中打开要执行的代码文件，在执行代码之前需要选择合适的Python版本路径，单击下方默认的Python版本路径，此时在上方会出现该远程环境上所有的python版本，选择自己需要的版本即可。
      图14选择Python版本   
      ![](https://support.huaweicloud.com/devtool-modelarts/figure/zh-cn_image_0000002010510721.png "点击放大") 
   
   
   
   
2. 对于打开的代码文件，单击run按钮，即可执行，可以在下方的Terminal中看到代码输出信息。
   - 如果执行较长时间的训练作业，建议使用nohup命令后台运行，否则SSH窗口关闭或者网络断连会影响正在运行的训练作业，命令参考：
     ```
     nohup your_train_job.sh > output.log 2>&1  &  tail -f  output.log
     ```
     
   
   - 如果要对代码进行debug调试，步骤如下：
     1. 单击左侧"Run \> Run and Debug"。
     
     2. 选择当前打开的默认Python代码文件进行调试。
     
     3. 对当前代码进行打断点，即在代码左侧进行单击，就会出现小红点。
     
     4. 此时，即可按照正常的代码调试步骤对代码进行调试，在界面左边会显示debug信息，代码上方有相应的调试步骤。
      
    
 
#### 相关操作
卸载VS Code插件操作如[图15]所示。
图15卸载VS Code插件   
![](https://support.huaweicloud.com/devtool-modelarts/figure/zh-cn_image_0000001402317388.png "点击放大")
#### 相关文档
如果VS Code连接Notebook失败，请参考[VS Code连接开发环境失败故障处理](https://support.huaweicloud.com/trouble-modelarts/modelarts_05_0513.html)。
