1. SSH及端口映射,运行demo程序
(1)使用SSH远程连接开发机
#使用密码进行SSH远程连接,在InternStudio中,选择开发机,点击“SSL连接”可以获得开发机域名、端口和登录密码。
#连接服务器,输入密码
ssh -p 33839 root@ssh.intern-ai.org.cn
(2)运行hello_world.py,运行前需安装依赖,pip install gradio==4.29.0
import socket
import re
import gradio as gr
# 获取主机名
def get_hostname():
hostname = socket.gethostname()
match = re.search(r'-(\d+)$', hostname)
name = match.group(1)
return name
# 创建 Gradio 界面
with 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()
(3)建立隧道,即端口映射
ssh -p 33839 root@ssh.intern-ai.org.cn -CNg -L 7860:127.0.0.1:7860 -o StrictHostKeyChecking=no
(4)运行结果,http://127.0.0.1:7860/
2、将Linux基础命令在开发机上完成一遍
- 创建文件:可以使用
touch
命令创建空文件
- 创建目录:使用
mkdir
命令
- 目录切换:使用
cd
命令
- 显示所在目录:使用
pwd
命令
- 查看文件内容:如使用
cat
直接显示文件全部内容,more
和less
可以分页查看
- 编辑文件:如
vi
或vim
等编辑器
- 复制文件:用
cp
命令
- 创建文件链接:用
ln
命令
- 移动文件:通过
mv
命令
- 删除文件:使用
rm
命令
- 删除目录:
rmdir
(只能删除空目录)或rm -r
(可删除非空目录)
- 查找文件:可以用
find
命令
- 查看文件或目录的详细信息:使用
ls
命令,如使用ls -l
查看目录下文件的详细信息
- 处理文件:进行复杂的文件操作,可以使用
sed
命令
3.使用 VSCODE 远程连接开发机并创建一个conda环境
#安装SSH插件
#连接开发机
#创建conda环境
3. 创建并运行test.sh
文件
#在根目录下创建test.sh
文件
#!/bin/bash
# 定义导出环境的函数
export_env() {
local env_name=$1
echo "正在导出环境: $env_name"
# 导出环境到当前目录下的env_name.yml文件
conda env export -n "$env_name" > "$env_name.yml"
echo "环境导出完成。"
}
# 定义还原环境的函数
restore_env() {
local env_name=$1
echo "正在还原环境: $env_name"
# 从当前目录下的env_name.yml文件还原环境
conda env create -n "$env_name" -f "$env_name.yml"
echo "环境还原完成。"
}
# 检查是否有足够的参数
if [ $# -ne 2 ]; then
echo "使用方法: $0 <操作> <环境名>"
echo "操作可以是 'export' 或 'restore'"
exit 1
fi
# 根据参数执行操作
case "$1" in
export)
export_env "$2"
;;
restore)
restore_env "$2"
;;
*)
echo "未知操作: $1"
exit 1
;;
esac
#设置权限
chmod +x test.sh
#运行test.sh
./test.sh restore xtuner0.1.17