第三期书生大模型实战营 第1关 Linux 基础知识

第三期书生大模型实战营 第1关 Linux 基础知识

Hello大家好,这里是第三期书生大模型实战营,闯关地图入门岛的第1关 Linux 基础知识。我们将学会InternStudio开发机创建、配置远程连接、使用本地VSCode连接到开发机、创建脚本、创建虚拟环境、运行脚本等。让我们开始吧~

InternStudio开发机创建

首先,我们需要登录到InternStudio平台,然后点击“创建开发机”按钮。

然后,在开发机创建界面,选择“个人开发机”,输入开发机名称AI-Labs-Tutorial、选择基础镜像Cuda12.2、选择算力资源配置10% A100,然后点击“立即创建”按钮创建开发机。

开发机创建完成后,我们在开发机列表里面就可以看到新创建的开发机了。

此时,我们可以点击“进入开发机”链接,直接在网页上打开开发机的界面进行使用。

SSH密钥配置

如果不想使用网页版,而是希望通过本地客户端连接到远程服务器,我们可以配置密钥,然后再通过SSH连接到远程开发机即可。

在本地命令行,通过以下命令创建密钥对。

ssh-keygen -t rsa

创建好密钥对之后,我们可以复制${HOME}/.ssh/id_rsa.pub文件中的内容,这个文件的内容就是公钥,我们可以发布到InternStudio平台。

在开发机列表,点击开发机对应的“SSH连接”,在弹出的对话框中点击“添加公钥”。

在添加SSH公钥界面,粘贴刚复制的id_rsa.pub公钥内容,并点击“立即添加”按钮,完成公钥添加。

通过本地客户端连接远程服务器

添加好公钥之后,我们继续通过开发机的“SSH连接”连接,在弹出的对话框中,复制登录信息。

ssh -p 48234 root@ssh.intern-ai.org.cn -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null

在本地命令行,直接粘贴复制的命令,当我们看到如下的界面,则说明我们成功地通过本地客户端连接到了远程的服务器了。

接下来就可以进行愉快地开发了~

通过本地VSCode连接远程服务器

要愉快地开发代码,还是需要一个比较好的开发工具,VSCode就是一个不错的选择。

要实现VSCode连接远程服务器,我们需要先安装一个Remote SSH插件。

安装好插件以后,我们可以通过Connect to Host...配置连接到远程服务器。

选择新添加主机。

配置好开发机的登录信息,这里直接粘贴前面复制的开发机登录信息即可。

最后设置一个配置信息存储目录就好了。

配置好远程连接后,我们可以打开一个远程目录,比如:/root/InternLM/Tutorial

当我们看到我们远程开发机上的目录结构之后,那么恭喜你,本地VSCode成功地连接到了远程开发机。

接下来,就在本地VSCode愉快地开发吧~

运行一个Python程序

连接到开发机之后,激动地想要开发一个Hello World程序吗?

通过VSCode创建一个hello_world.py文件,并输入以下代码:

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()

然后,创建一个虚拟环境。

conda create -n Tutorial python=3.10 -y

然后激活新创建的虚拟环境,并安装必要的依赖。

conda activate Tutorial
pip install gradio==4.29.0

安装完成依赖后,直接运行hello_world.py

python hello_world.py

程序运行成功后,我们可以通过浏览器访问对应的端口打开我们的程序界面。

总结

至此,我们成功创建了开发机、配置了远程连接、使用本地VSCode连接到了开发机、创建了脚本、创建了虚拟环境、并且运行了脚本。

接下来,就让我们在大模型实战开发中畅游吧!

### 书生大模型第四期基础通岛第三 针对书生大模型第四期基础通岛第三的任务,此阶段主要聚焦于通过不同参数量训练模型并结合多种微调技术来优化特定任务的表现。具体而言,在对比 xcomposer2-4khd、internVL1.5 和 llava-llama3-8b 这些具有不同参数规模的预训练模型时,采用 LORA(低秩自适应)、QLORA 及 FULL 训练方法可以有效增强模型处理少量样本学习(few-shot learning)以及专门领域内图纸识别的能力[^1]。 为了成功完成这一挑战,建议采取如下策略: #### 数据准备 确保拥有高质量的数据集用于训练和验证,特别是那些能够代表目标应用场景中的特征数据,比如工业设计图或其他形式的技术绘图。 #### 模型选择与调整 基于项目需求挑选合适的基线模型,并考虑其参数大小对性能的影响。较小的模型可能更适合资源受限环境下的部署;而较大的模型则通常能提供更好的泛化能力。 #### 微调技巧应用 利用LORA或QLORA等高效微调方式快速适配新任务,减少计算成本的同时保持较高的准确性。对于更复杂的要求,则可尝试FULL fine-tuning以获得最佳效果。 ```python from transformers import AutoModelForSequenceClassification, Trainer, TrainingArguments model_name = "path_to_pretrained_model" model = AutoModelForSequenceClassification.from_pretrained(model_name) training_args = TrainingArguments( output_dir="./results", evaluation_strategy="epoch", per_device_train_batch_size=8, per_device_eval_batch_size=8, num_train_epochs=3, weight_decay=0.01, ) trainer = Trainer( model=model, args=training_args, train_dataset=train_dataset, eval_dataset=val_dataset, ) ``` 上述代码片段展示了如何设置一个简单的`Trainer`对象来进行模型微调操作。实际实现过程中还需要根据具体的任务类型调整配置项。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wux_labs

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值