书生.浦江大模型实战训练营——(一)InternStudio+Vscode SSH连接远程服务器+Linux基础指令

devtools/2024/9/24 4:45:28/

最近在学习书生.浦江大模型实战训练营,所有课程都免费,以关卡的形式学习,也比较有意思,提供免费的算力实战,真的很不错(无广)!欢迎大家一起学习,打开LLM探索大门:邀请连接,PS,邀请有算力哈哈

文章目录

  • 一、InternStudio使用
  • 二、Vscode SSH连接远程服务器
  • 三、Linux基础指令

在这里插入图片描述

一、InternStudio使用

首先登录InternStudio的首页,第一次登录的时候要输入一次邀请码,如果填写了上面的邀请链接,邮箱会收到一份邀请码,填入即可登录。登录InterStudio的主页如下显示:
在这里插入图片描述
点击创建开发机,输入开发机名称,我这是第一个任务,我取名为Onetest,命名无所谓,镜像选择cuda12.2,GPU选择10%的A100,点击立即创建即可。这个过程很类似于AutoDL的创建过程。
在这里插入图片描述
创建完成后,根据排队的人数,可能要等几分钟,然后点击进入开发机即可进入。
在这里插入图片描述
进入之后,界面也是非常清晰简单,左上角有三个可选项,分别是jupyter notebook,Terminal终端和vscode网页版,可以算得上是非常便捷了。整个页面很像jupyter的界面,大致的选项也基本相似,如果有使用过本地的jupyter的话,对InternStudio的界面应该不会陌生。

在这里插入图片描述
至此,InternStudio介绍到此结束,下面重点介绍Vscode怎么通过SSH连接远程服务器

二、Vscode SSH连接远程服务器

之前写过一篇的文章Pycharm连接远程服务器,之后可能用Vscode会多一些,正好这次任务要求的也是用Vscode进行连接,所以下面将介绍什么用Vscode SSH进行远程的连接。
SSH全称Secure Shell,中文翻译为安全外壳,它是一种网络安全协议,通过加密和认证机制实现安全的访问和文件传输等业务。SSH 协议通过对网络数据进行加密和验证,在不安全的网络环境中提供了安全的网络服务。
有两种方式进行远程服务器连接,第一种是每次登录都是用密码,第二种是配置密钥登录,后续登录无需使用密码,先讲解第一种方式:
1.使用密码登录:
在开发机界面点击使用SSH登录
在这里插入图片描述
将下面的登录命令和密码分别复制到本地电脑的powershell中
在这里插入图片描述

出现以下界面表示连接成功:在这里插入图片描述
可以输入nvidia-smi查看GPU信息
在这里插入图片描述
2.配置SSH密钥进行SSH远程连接

在本地计算机终端通过ssh-keygen -t rsa指令生成密钥,一路yes,enter即可,生成的密钥位于C盘~/.ssh/id_rsa.pub位置上。
在这里插入图片描述
cd到.ssh目录下,教程是通过Get-Content查看的,我是直接输入文件名用文本编辑器打开的,注意复制的时候只复制前两段即可。
在这里插入图片描述

将刚刚复制的密钥粘贴到到首页配置SSHKey的位置,下次再连接时即可不用输入密码。
在这里插入图片描述
下面讲解如何使用Vscode与远程服务器的连接,首先你需要下载好Vscode,CSDN有很多教程,这里就不再赘述,需要的插件是Remote -SSH,在插件市场直接安装下载即可。
在这里插入图片描述
安装完成后,左侧会出现插件的图标,复制之前的SSH登录密码,点击SSH右边的+号,输入连接命令和密码进行连接,右下角会出现连接成功字样,表示连接成功。
在这里插入图片描述
点击打开文件夹,打开root文件夹
在这里插入图片描述
显示服务器的文件夹,表示连接成功

在这里插入图片描述
下面需要进行端口映射,在开关机界面点击自定义服务,在本地的电脑终端复制 比如 下面的指令,并输入密码,注意输入完成之后没有反馈内容,光标一直跳动说明映射成功。
在这里插入图片描述
在这里插入图片描述
服务器上新建一个hello_world.py的文件,提前安装gradio,pip install gradio==4.29.0,复制代码如下:

import socket
import re
import gradio as grdef get_hostname():hostname = socket.gethostname()match = re.search(r'-(\d+)$', hostname)name = match.group(1)return namewith gr.Blocks(gr.themes.Soft()) as demo:html_code = f"""<p align="center"><a href="https://intern-ai.org.cn/home"><img src="https://intern-ai.org.cn/assets/headerLogo-4ea34f23.svg" alt="Logo" width="20%" style="border-radius: 5px;"></a></p><h1 style="text-align: center;">?? Welcome {get_hostname()} user, welcome to the ShuSheng LLM Practical Camp Course!</h1><h2 style="text-align: center;">? Let's go on a journey through ShuSheng Island together.</h2><p align="center"><a href="https://github.com/InternLM/Tutorial/blob/camp3"><img src="https://oss.lingkongstudy.com.cn/blog/202406301604074.jpg" alt="Logo" width="20%" style="border-radius: 5px;"></a></p>"""gr.Markdown(html_code)demo.launch()

在终端使用指令python hello_world.py运行,点击终端给出的地址,即可看到书生的实战营图片,说明上面的映射成功,否则无法看到图片。
在这里插入图片描述
vscode里按下ctrl+shift+~可以查看端口的使用情况,可以看到7860端口正在自动转发。
在这里插入图片描述

三、Linux基础指令

之前有写过Linux指令的文章,链接如下Linux指令大全,基本涵盖了常用的指令,可以点击链接查看。
这里就不做过多介绍。


http://www.ppmy.cn/devtools/92467.html

相关文章

Recyclerview网格布局学习备忘

网格分割线&#xff0c;网格布局代码&#xff1a; 两个链接构成完整代码&#xff1a; Android RecyclerView线性布局详解(1)_Android_脚本之家 (jb51.net) Android RecyclerView网格布局&#xff08;支持多种分割线&#xff09;详解(2)_Android_脚本之家 (jb51.net)

HCIA、OSPF笔记

一、OSI参考模型 1、OSI的结构 应用层&#xff1a;把人类语言转化成编码&#xff0c;为各种应用程序提供网络服务。 表示层&#xff1a;定义一些数据的格式&#xff0c;&#xff08;对数据进行加密、解密、编码、解码、压缩、解压缩&#xff0c;每一层都可以实现&#xff0c…

vue+elementui 表格分页限制最大页码数

vue3element-plus &#xff1a; 在组件里直接使用page-count属性&#xff0c;在获取数据的时候测试一下总条数/每页数量向上取整是否大于1000&#xff0c;是默认count为1000&#xff0c;否则使用计算后的值&#xff1b; vue2 elementui el-pagination &#xff1a;total与pag…

魔方远程时时获取短信内容APP 前端Vue 后端Ruoyi框架(含搭建教程)

前端Vue 后端Ruoyi框架 APP原生JAVA 全兼容至Android14(鸿蒙 澎湃等等) 前后端功能&#xff1a; ①后端可查看用户在线状态(归属地IP) ②发送短信(自定义输入收信号码以及短信内容&#xff0c;带发送记录) ③短信内容分类清晰(接收时间、上传时间等等) ④前后端分离以及A…

Linux Shell面试题大全及参考答案(3万字长文)

目录 解释Shell脚本是什么以及它的主要用途 主要用途 Shell脚本中的注释如何编写? 如何在Shell脚本中定义和使用变量? Shell支持哪些数据类型? 什么是Shell的命令替换?请举例说明。 管道(pipe)和重定向(redirection)有什么区别? 如何在Shell脚本中使用条件语句…

深入理解 RDMA 的软硬件交互机制

作者&#xff1a;羽京 一、前言 随着数据中心的飞速发展&#xff0c;高性能网络不断挑战着带宽与时延的极限&#xff0c;网卡带宽从过去的 10 Gb/s 、25 Gb/s 到如今的 100 Gb/s、200 Gb/s 再到下一代的 400Gb/s 网卡&#xff0c;其发展速度已经远大于 CPU 发展的速度。 为了…

【多线程】JUC的常见类,Callable接口,ReentranLock,Semaphore,CountDownLatch

JUC&#xff1a;java.util.concurrent 一、Callable 接⼝ 接口方法Callablecall&#xff0c;带有返回值Runnablerun&#xff0c;void所以创建一个线程&#xff0c;希望它给你返回一个结果&#xff0c;那么使用 Callable 更加方便一些 比如&#xff0c;创建一个线程&#xff…

CMake学习记录

CMake 是一个非常强大的工具&#xff0c;用于构建和管理复杂的软件项目。下面是对 CMake 使用的更详细的总结&#xff0c;包括更多高级特性以及一些最佳实践。 基础概念 CMakeLists.txt: 这是 CMake 的配置文件&#xff0c;用于描述项目的构建逻辑。CMake 最小版本: cmake_mi…