前言(一些碎碎念)
高考结束以后什么也不懂的我报考了 cs 专业然后购入了一台集成显卡的电脑……大一的时候还好,只是知道带不动一些大型游戏,好在自己也并不打游戏。然后大二的时候 chatgpt 横空出世迅速占据了日常的生活,深度学习、神经网络直接闯入所有领域,在给各个领域注入新鲜血液与活力的同时,也让大家都多了一门必修课。越来越多的课程引入类似的知识与实验,当时也没有涉及很多大型的数据集与复杂的神经网络,勉强使用电脑的 cpu 运行应对实验。大三上知道了 google colab ,每天都有免费的 gpu 额度使用,甚至充钱可以用到 A100 (当然价格是相当高昂的)。大三下来到了学校的一个实验室做科研实习,LLM 相关的工作对于算力要求实在是很高,而且 colab 一些很不好的体验也难以满足需求,就找学长申请了一个实验室服务器的账号。在这个过程中也遇到了很多困难,也都找到了相应的答案,因此在这里记录一下。
我使用的是 vscode + filezilla ,vscode 用于远程连接 + coding,filezilla 主要是传输数据。
远程连接 ssh
首先学长会要你电脑主机的公钥,这篇文章 简洁而且有用,一般生成的公钥-私钥对会在这个路径下 C:/Users/用户名/.ssh 。
然后使用 vscode 远程连接,需要用到这三个插件。
然后如同 这篇文章 一样,我们操作以后可能会遇到一个问题:远程连接xxx失败!返回类似于以下形式的报错信息,也是卡了自己很长时间。
Failed to parse remote port from server output
Exec server for ssh–remote+xx.xx.xxx.xxx failed: Error
Error opening exec server for ssh–remote+xx.xx.xx.xx: Error
然后 这篇文章 给出了一个完美的解决方案(膜拜)!总结原因就是 vscode 和 ubuntu 中 glibc 的版本不匹配,但是我们肯定是不好直接更改实验室服务器的系统的,所以对自己的 vscode 降级就是最好的方案。
Filezilla 传输数据
然后我在连接之后又出现了一个问题,filezilla 死活连接不上,一直连接超时,然后自己也是摸索出了一个解决办法,因为看到很多博主在连接时会输入密钥的路径,但是自己却没有这个输入的选项,因此觉得应该是这个地方的问题。
然后选择本地密钥所在的路径即可。
连接成功以后直接把本地站点的文件拖进远程站点目标的文件夹下即可。
配置环境
如果是实验室的服务器我觉得可能都已经安装好了Anaconda,并且已经创建并激活好了conda虚拟环境,如果是自己租赁的可能需要自己配置,参考 这篇文章 。
然后我们直接初始化 python 环境即可。
/opt/anaconda3/bin/conda init bash
重启终端后,会在用户名前出现 (base) 证明成功了,使用 conda info -e 查看 conda 环境。
然后学长告诉我 /home/用户名 下的空间比较小,大的数据集放在 /data/用户名 。或许我们可以把所有东西(代码还有数据集)都放在 /data/用户名 下,这样会比较方便一点,具体参考 这篇文章 。
紧接着又出现了一个问题。
emmm,在研究尝试了一下午无果后,去问了一下学长,然后得到了答案:服务器没网。我应该早点去问学长的www,在学长的帮助下得到了解决方案:
在服务器终端上运行
export http_proxy="http://$proxy_ip:$proxy_port" https_proxy="http://$proxy_ip:$proxy_port" all_proxy="socks5://$proxy_ip:$proxy_port"
其中 proxy_ip 和 proxy_port 分别代表代理服务器的 IP 地址和端口号(没错,代理服务器的 IP 和端口也是学长给的,我尝试了自己本地的代理没有成功)。
然后我们直接创建并激活环境
conda create -n mypytorch python=3.11
conda activate mypytorch
然后还需要安装最重要的 pytorch ,但是官网最新的版本好像不支持 conda 安装,于是我决定安装上一代版本。
PyTorch previous-versions
但是又又又又出现了新的问题:
大概是因为 pytorch-cuda=12.4 因为版本比较新所以在当前配置的 Conda 通道中不可用,然后官方是提供了支持 CUDA 12.4 的安装命令:
conda install pytorch torchvision torchaudio pytorch-cuda=12.4 -c pytorch -c nvidia
然后,终于!
得到了 pytorch 版本号!
虚拟机联网(小插曲)
当时试了很多方法也没有让服务器连接上网络,于是我决定去自己的虚拟机上先配置好深度学习的环境,然后把环境文件直接传输到服务器上。然后很逆天的发现,自己的虚拟机也连不上网络?然后有试了很多乱七八糟的方法,直到我看到了 这篇文章 ,直接还原默认设置,完美解决了! 可以看到后面直接 ping baidu.com 正在顺利的进行着。
评论前必须登录!
注册