复现GLM4-9B

简介

GLM-4-9B 是智谱 AI 推出的最新一代预训练模型 GLM-4 系列中的开源版本。 在语义、数学、推理、代码和知识等多方面的数据集测评中, GLM-4-9B 表现出超越 Llama-3-8B 的卓越性能。除了能进行多轮对话,GLM-4-9B-Chat 还具备网页浏览、代码执行、自定义工具调用(Function Call)和长文本推理(支持最大 128K 上下文)等高级功能。本代模型增加了多语言支持,支持包括日语,韩语,德语在内的 26 种语言。

环境配置以及模型的复现

查看服务配置信息

输入命令 studio-smi 具体效果图如下图:
在这里插入图片描述
从图中可以看出CUDA版本为12.2,那么需要安装的pytorch的CUDA版本不能超过12.2。
其次在服务器中 anaconda 的 base 环境中创建一个空的虚拟环境,使用的命令如下:

conda create -n GLM4 python=3.10

激活环境使用命令

conda activate GLM4 

本次实验使用的CUDA是11.8版本。安装命令如下:

pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

下载好进行验证 torch 是否安装好,效果图如下:
在这里插入图片描述
环境安装完毕,从 github 下载项目,项目地址
在github上的项目目录图如下:
在这里插入图片描述
使用命令:

git clone https://github.com/THUDM/GLM-4.git 

下载好的目录如下:在这里插入图片描述
以下内容为基础的 GLM-4-9B的使用和开发代码

  • base: 在这里包含了
    使用 transformers 和 VLLM 后端的交互代码
    OpenAI API 后端交互代码
    Batch 推理代码
  • composite_demo:
    在这里包含了GLM-4-9B 以及 GLM-4V-9B 开源模型的完整功能演示代码,包含了 All Tools 能力、长文档解读和多模态能力的展示。
    fintune_demo: 在这里包含了
    PEFT (LORA, P-Tuning) 微调代码
    SFT 微调代码

本次复现base里边的transformers 代码部分

最低硬件要求:运行官方提供的最基础代码 (transformers 后端) ,需要:Python >= 3.10,内存不少于 32 GB。运行官方提供的本文件夹的所有代码,还需要:Linux 操作系统 (Debian 系列最佳)大于 8GB 显存的,支持 CUDA 或者 ROCM 并且支持 BF16 推理的 GPU 设备 (A100以上GPU,V100,20以及更老的GPU架构不受支持)。此时切换目录到basic_demo下边,执行命令:

pip install -r requirements.txt

出现下图结果:
在这里插入图片描述
此时出现包冲突问题,再次执行下边命令:

pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

即可将冲突问题解决。使用ModelScope进行模型下载,首先安装modelscope包,使用以下命令:

pip install modelscope

然后创建down_load.py,将下面代码贴入文件中。

import os
from modelscope.hub.snapshot_download import snapshot_download
# 创建保存模型目录
# os.system("mkdir /root/models")
# save_dir是模型保存到本地的目录
save_dir="/root/models"
# modelscope上边的名字
path="ZhipuAI/glm-4-9b"
snapshot_download(path, cache_dir=save_dir)

运行python down_load.py ,即可下载。下载好文件目录如下
在这里插入图片描述
在这里插入图片描述

  • 使用 transformers 后端代码

使用 Gradio 网页端与 glm-4-9b 模型进行对话:此时还需要修改trans_web_demo.py 文件,修改里边模 型加载的路径,将加载的模型指向 model 文件夹,使用模型存储的绝对路径。修改如下图所示:
在这里插入图片描述
运行 python trans_web_demo.py ,会出现以下错误:
在这里插入图片描述
根据提示安装peft包,命令为pip install peft。等待安装完成后,继续执行 python trans_web_demo.py,运行模型所需要占用达到显存所示:
在这里插入图片描述
此时访问运行的程序会出现这个问题,如下图随时。
在这里插入图片描述
根据终端输出信息,进行下载文件,移动到相应位置即可。
在这里插入图片描述
在这里插入图片描述
再次运行的效果图如下所示:
在这里插入图片描述
在这里插入图片描述

  • 使用 命令行 与 glm-4-9b 模型进行对话

此时还需要修改trans_cli_demo.py 文件,修改里边模 型加载的路径,将加载的模型指向 model 文件夹,使用模型存储的绝对路径。修改如下图所示:
在这里插入图片描述
运行python trans_cli_demo.py即可。
在这里插入图片描述

  • 使用 Batch 推理

此时还需要修改trans_batch_demo.py 文件,修改里边模 型加载的路径,将加载的模型指向 model 文件夹,使用模型存储的绝对路径。修改如下图所示:
在这里插入图片描述
运行python trans_batch_demo.py即可。
本次复现实验参考GLM4项目,具体细节可访问查看。

  • 20
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值