入门任务一 Linux+InternStudio 关卡
参考:
- 教程
- 任务
1 闯关任务
1.1 基于 VScode 的 SSH 链接
感谢官方教程的清晰指引,基于VS code 实现 SSH 的链接并不困难,完成公钥配之后,可以实现快速一键链接,链接后效果如下
1.2 在SSH开发机中配置开发环境和创建文件
在 VScode SSH 到开发机后,创建终端,并通过以下指令安装 Gradio 依赖:
pip install gradio==4.29.0
而后创建 hello_world.py 如下
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()
1.3 端口映射
端口映射可以将外网端口映射到内网端口,实现内外网通信,从而可以从外网访问内网服务和应用。在本机的终端中输入以下指令进行端口映射
ssh -p 37367 root@ssh.intern-ai.org.cn -CNg -L 7860:127.0.0.1:7860 -o StrictHostKeyChecking=no
其中 -p 37367
应根据实际开发机的端口号进行配置,正确配置后,可以在本机访问开发机运行的应用。这样做的意义是,有时开发机不具备完整依赖去支持特定应用的运行,比如 Web-UI,通过端口映射可以借助本机的 Web-UI 去显示开发机的 Web 应用。
进行端口映射后,在开发机运行之前创建的 hello_world.py 文件,便可运行该脚本并将其映射在本地的 127.0.0.1:7860 端口:
此时,在本地浏览器打开 127.0.0.1:7860 端口,便可实现在本机访问远程开发机中运行的Gradio 脚本: