VSCode远程连接AutoDL服务器详细教程

Posted 温温最可爱

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VSCode远程连接AutoDL服务器详细教程相关的知识,希望对你有一定的参考价值。

一、VSCode配置SSH登录

  1. 打开VSCode下载Remote-SSH插件
  2. 远程连接,在AutoDL开机后可直接复制待连接的实例的账号和密码,复制账号时注意删除末尾的空格

  3. 复制账号后连按两次enter键,右下角弹出下图后,点击Connect。
  4. 右键点击待连接的实例→选择红框内容→点击Continue→输入密码(AutoDL中复制)

  5. 连接成功后,点击下图红框即可看见终端信息

    每新换一台服务器连接需要从第二步开始完成上述操作;对于已连接过的服务器,下次连接需要确保该台服务器的账号信息在config文件里的最上方(经验之谈)。

二、VSCode配置Python解释器

  1. 点击扩展区,安装python,这里是安装在远程服务器的,和本地的python不一样。这里很容易一直处于installing的状态,我在ubuntu下和windows都出现过这样的情况,稀里糊涂的就解决了,建议一直按照官方教程来安装,避免出现特殊情况。

  2. 打开远程服务器中的文件夹

  3. 打开文件夹需要密码,复制后按下图选择

  4. 打开文件后,按Ctrl+Shift+P,输入python,选择seclect interpreter,再选择已安装python。

参考:
P3_AutoDL平台VSCode使用教程

深度学习Pycharm连接远程服务器(AutoDL)训练YOLOv5

文章目录


前言

本文选择使用Pycharm连接AutoDL平台的云服务器(对学生党有优惠福利),连接过程都差不多,连接其他服务器(比如自己课题组的)时可类比进行尝试。

另外,本文默认大家已经了解AutoDL的基本使用过程,不熟悉的同学们可以去看官方帮助文档:AutoDL快速开始

本文选择的AutoDL镜像为:Pytorch=1.10.0 Python=3.8 Cuda=11.3

 

Pycharm远程连接AutoDL

1、无卡模式开机,获取登录指令:ssh -p 50529 root@region-5.autodl.com

2、打开Pycharm,选择Add Project Interpreter

3、选择SSH解释器,输入登录指令

4、输入密码

5、选择Python解释器:/root/miniconda3/bin/python,同时同步本地文件夹和远程服务器的文件夹(直接新建yolov5文件夹即可),由于这里勾选了Automatically upload project files to the server,因此默认本地的yolov5工程文件,已经全部更新到了对应的远程服务器的yolov5文件夹中


 

配置YOLOv5环境

1、进入远程服务器终端命令窗口,并更新bashrc中的环境变量:conda init bash && source /root/.bashrc


2、删除miniconda3/pkgs/文件夹下所有的文件,方便之后成功安装依赖,当然这一步也可以略过

$ cd miniconda3/pkgs
$ rm -rf *

3、新建环境(可选,也可以直接在base环境安装依赖

$ conda create -n yolo python=3.8    
$ conda init bash && source /root/.bashrc
$ conda activate yolo

4、安装pytorch、torchvision和cudatoolkit,根据镜像安装对应版本

$ conda install pytorch==1.10.0 torchvision==0.11.0 torchaudio==0.10.0 cudatoolkit=11.3 -c pytorch -c conda-forge

5、安装YOLOv5默认依赖

$ cd yolov5
$ pip install -r requirements.txt  # install

6、测试安装是否成功

$ cd yolov5
$ python detect.py --weights weights/yolov5n.pt --source data/images/

 

获取PASCAL VOC2007数据集

AutoDL的实例均提供公开数据集(CIFAR10、VOC2007、VOC2012、COCO2017等),默认地址在/root/autodl-publ路径下。

# 在autodl-tmp(数据盘)中新建VOC2007文件夹
(base) root@container-a798118d3c-5d97f4b1:/# mkdir autodl-tmp/VOC2007
# 进入Pascal VOC2007数据集保存路径
(base) root@container-a798118d3c-5d97f4b1:/# cd autodl-pub/VOCdevkit/
# 将Pascal VOC2007数据集解压到自定义路径
(base) root@container-a798118d3c-5d97f4b1:~/autodl-pub/VOCdevkit# tar -zxvf VOC2007.tar.gz -C /root/autodl-tmp/VOC2007/

 

训练技巧

守护进程(离线训练)

我们在使用以SSH为基础的工具软件(比如XShell、MobaXterm、PyCharm,VSCode等)进行远程执行程序时,为了避免因为SSH连接中断导致程序终止,遭受不必要的损失,通常会开启守护进程来执行程序。这里介绍两种守护进程方式:AutoDL自带的Jupyterlab终端和screen工具

1、最简单的方式是通过jupyterlab的终端来执行,只要jupyterlab不出现重启(几乎不会),jupyterlab的终端就会一直运行,无论是本地主机断网还是关机。如果关机了这个终端tab,可以在左侧栏正在运行终端和内核中找回。



2、使用screen命令,首先要在命令行终端安装screen
apt-get update && apt-get install -y screen

之后就是常规操作了:

$ screen          # 开启screen
$ screen -ls      # 找到所有离开的会话
$ screen -r ...   # 恢复指定会话
$ kill ...        # 关掉指定会话


 

自动关机

不确定自己的代码需要执行多久结束,希望执行完成后立马关机,这类场景可以通过shutdown命令来解决。

1、命令行后面加shutdown

$ python train.py              # 原执行命令
$ python train.py; shutdown    # 用;拼接意味着前边的指令不管执行成功与否,都会执行shutdown命令
$ python train.py && shutdown  # 用&&拼接表示前边的命令执行成功后才会执行shutdown

2、在Python代码中执行shutdown命令

import os

if __name__ == "__main__":
    # xxxxxx
    os.system("shutdown")

 

References

AutoDL帮助文档
pycharm远程连接AutoDL训练pascalVOC2007数据集

以上是关于VSCode远程连接AutoDL服务器详细教程的主要内容,如果未能解决你的问题,请参考以下文章

vs code远程连接主机

vscode配置远程连接失败:过程试图写入的管道不存在(已解决)

深度学习Pycharm连接远程服务器(AutoDL)训练YOLOv5

VSCode连接服务器

AutoDL远程服务器训练配置,保姆级教学,一学就会

VS2008远程连接MSSQL2005问题