【InternLM实战营---第二节课笔记】

一、本期课程内容概述

本节课的主讲老师是角色扮演SIG小组长任宇鹏。教学内容主要包括以下四个部分:

  1. 部署 InternLM2-Chat-1.8B 模型进行智能对话
  2. 部署实战营优秀作品 八戒-Chat-1.8B 模型
  3. 通过 InternLM2-Chat-7B 运行 Lagent 智能体 Demo
  4. 实践部署 浦语·灵笔2 模型

二、学习收获

  • 在 InternStudio 平台上创建并使用开发机
    开发机有VSCode,Jupyterlab,Terminal 三种视图,可根据个人喜好进行选择。还可以在完成配置SSH key后,使用本地 IDE SSH 连接到开发机。

  • 使用 studio-conda 安装依赖

    studio-conda -o internlm-base -t demo
    

    这个命令应该是InternStudio平台开发机特有的命令,如果熟悉 conda,也可以选择自行创建环境并安装依赖。

    conda create -n demo python==3.10 -y
    conda activate demo
    conda install pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 pytorch-cuda=11.7 -c pytorch -c nvidia
    
  • 通过代码下载自定义模型

    import os
    from modelscope.hub.snapshot_download import snapshot_download
    
    # 创建保存模型目录
    os.system("mkdir /root/models")
    
    # save_dir是模型保存到本地的目录
    save_dir="/root/models"
    
    snapshot_download("Shanghai_AI_Laboratory/internlm2-chat-1_8b", 
                      cache_dir=save_dir, 
                      revision='v1.1.0')
    
  • 实现开发机到本地端口映射
    这个真的很实用,解决了我在课程开始前体验XTuner时遇到的困惑,如何访问开发机中的服务,在群里也看到了很多小伙伴遇到这个问题。
    打开本地机器的Terminal ,输入下面这行命令后,输入密码即可

    ssh -p 40297 root@ssh.intern-ai.org.cn -CNg -L {本地机器_PORT}:127.0.0.1:{开发机_PORT} -o StrictHostKeyChecking=no
    

    命令中的 40927 以及密码可以在开发机的SSH连接页面中获得。

  • 使用 share 文件夹的资源。
    构造软连接来访问share文件夹中的资源,避免重复下载模型文件

    ln -s /root/share/new_models/Shanghai_AI_Laboratory/internlm2-chat-7b /root/models/internlm2-chat-7b
    

三、个人体会

  • 教程真的很详细,小白也能上手操作,感兴趣的可以点击查看
  • 以前玩过图生文模型和文生图模型,图文并茂的模型还是第一次见,有点牛
  • 模型虽好,但是对算力要求好高啊,排队太难了

四、本期作业

https://blog.csdn.net/weixin_45609124/article/details/137210438

五、加更–作业踩坑

  • 进阶作业—使用 Lagent 运行 InternLM2-Chat-7B 模型(开启 30% A100 权限后才可开启此章节)
    按照教程中的操作走是没有问题的,而且30%A100也就是24G显存,运行7B模型是足够的,但是很多同学都遇到了显存不足的问题,如下图所示:
    在这里插入图片描述
    首先先查看GPU的使用情况,确保显存没有被其他进程占用,可输入以下命令查看GPU的使用情况

    studio-smi
    

    在这里插入图片描述
    如果GPU资源存在被占用的情况,可输入以下命令进行查看

    ps -ef | grep python
    

    然后使用 kill命令,关闭对应的进程来释放资源
    在确保GPU资源足够的情况下,再运行Lagent-web的demo。
    但是demo代码有一些不合理的地方,刷新页面会导致重复加载模型,然后显存不足。
    解决方案为:访问lagent-web页面时,发现与教程页面不一样时,请耐心等待,模型加载完毕后即可操作。

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-02 10:50:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-02 10:50:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-02 10:50:01       82 阅读
  4. Python语言-面向对象

    2024-04-02 10:50:01       91 阅读

热门阅读

  1. Spring boot如何使用redis缓存

    2024-04-02 10:50:01       33 阅读
  2. 【微机原理实战笔记】浅入理解汇编源文件

    2024-04-02 10:50:01       32 阅读
  3. 详细需求的拆解

    2024-04-02 10:50:01       33 阅读
  4. appium用例参数化

    2024-04-02 10:50:01       36 阅读
  5. 探索Django:打造高效、可扩展的Web应用(中)

    2024-04-02 10:50:01       42 阅读