当前位置: 首页 > news >正文

华为910b推理Qwen1.5-72b

前情提要:华为910b部署训练推理大模型,本人之前并没有接触过,所以,写此文档进行记录。

(注意:版本适配很重要!!不然就像我一样走了好多坑~~~)

首先,看一张图片

要训练推理大模型,MindFormers库是关键,而这个库依赖MindSpore,所以安装顺序如下:

1.第三方依赖(python,昇腾AI处理器配套软件包,gcc)

2.MindSpore

3.MindFormers

安装过程:

根据Mindsporehttps://www.mindspore.cn/install/#guide官方文档,在安装MindSpore之前,需要安装第三方依赖:

(说明:官方文档好好看,按照步骤来一般都可以安装成功!)

以下是我的踩坑记录:

1.安装python

本人在910b服务器上安装这些环境,为了方便操作,安装的conda环境,命令如下:

#注意:不要装高版本的python,会不兼容,此处我装的python3.9
conda create --name myenv python=3.9

2.安装昇腾AI处理器配套软件包

在安装之前,一定要看好自己的系统版本以及是否已经安装了固件与驱动,注意安装的版本与CANN版本的匹配

本人服务器信息:

#查看操作系统版本
cat /etc/os-release
操作系统版本:CentOS Linux 7 (AltArch)
#查看固件和驱动信息
npu-smi info -l #查看设备ID: NPU ID
npu-smi info -t board -i NPU ID   #NPU驱动和固件版本
NPU驱动版本:23.0.3   NPU固件版本:7.1.0.5.220

安装的CANN版本(社区版:8.0.RC1.beta1版本)

下载包链接:https://www.hiascend.com/developer/download/community/result?module=cann

我的显卡是910b的,所以我选的这两个(注意:一定要选择toolkitkernels)[不太理解为什么要分开.....]

安装教程参考:

快速安装CANN-快速上手-CANN社区版8.0.RC1.alpha002开发文档-昇腾社区

一定要运行命令:

source /usr/local/Ascend/ascend-toolkit/set_env.sh

每次重新进入虚拟环境,也最好输入一下这个命令

至此,CANN安装成功~

3.安装GCC-7.3.0

(踩了好多坑)

我的gcc版本是4.8.5,需要更新。

不知道为什么运行Mindspore官网的命令一直报错,说找不到这个文件

yum install devtoolset-7

我刚开始以为是源的问题,更新源参考https://blog.csdn.net/smart9527_zc/article/details/84976097

结果不是,仍然报错,找不到文件,后来发现只能源码安装,参考链接:

鲲鹏(ARM64)升级GCC-7.3.0【CentOS-7.6 GCC升级(网络环境+脱机环境)】-云社区-华为云

GCC-7.3.0安装成功~

4.安装mindspore

对照官方文档pip install xxx 或者conda 都可以,然后验证:安装成功~

5.安装MindFormers 一定要拉取r1.0分支

教程:https://gitee.com/mindspore/mindformers/blob/r1.0/research/qwen/qwen.md

(我之前拉取别的分支,一直报错~~)


推理大模型qwen1.5-72b

  • 1.下载通过sdk下载:downmodels.py--路径要更改一下

https://www.modelscope.cn/models/qwen/Qwen1.5-72B/files

(通过git 下载模型文件容易不完整)

  • 2.torch权重转mindspore权重

https://gitee.com/mindspore/mindformers/blob/r1.0/research/qwen/qwen.md

运行这个转换文件的报错分析:

①.numpy报错,请降至2.0.0以下

②.找不到xxx.io这种包,请把那句话提上来,参考链接https://www.cnblogs.com/jefferyeven/articles/15651734.html

  • 3.模型权重切分:ckpt单机--》分布式

  • bash run_singlenode.sh "python qwen1_5/run_qwen1_5.py \ --config qwen1_5/run_qwen1_5_72b_infer.yaml \ --run_mode predict \ --use_parallel True \ --auto_trans_ckpt True \ --predict_data 帮助我制定一份去上海的旅游攻略" ../rank_table_8.json [0,8] 8

可以查看npu是否占用,来看程序是否跑起来了

http://www.lryc.cn/news/398185.html

相关文章:

  • legoloam算法环境配置和调试笔记
  • 如何用CSS3画一个三角形?
  • 不同型号的GD32 MCU如何区分?
  • 关于windows下编译xLua插件的流程记录
  • Hadoop简明教程
  • 基于STM32设计的药品柜温湿度监测系统(华为云IOT)(184)
  • SpringBoot源码阅读(10)——后处理器
  • 【源码开源】C#桌面应用开发:串口调试助手
  • malloc与free函数的用法(精简全面 · 一看即懂)
  • 强制升级最新系统,微软全面淘汰Win10和部分11用户
  • java-命令行连接 mysql
  • RK3588部署YOLOV8-seg的问题
  • Python Linux下编译
  • SpringMVC(3)——SpringMVC注解实战
  • 统信UOS上批量安装惠普打印驱动后启动器没有图标的解决方法
  • Python UDP编程之实时聊天与网络监控详解
  • LiveNVR监控流媒体Onvif/RTSP用户手册-用户管理:编辑、添加用户、关联通道、重置密码、删除、过滤搜索
  • SpringBoot新手快速入门系列教程十:基于Docker Compose,部署一个简单的项目
  • websocket中的STOMP 协议:sockjs-client 和 stompjs
  • 阿里云API安全2.0全新发布
  • 学习网络的第一步:全面解析OSI与TCP/IP模型
  • 鸿蒙语言基础类库:【@ohos.util (util工具函数)】
  • CVPR`24 | 又快又好!渲染速度比ENeRF快30倍!4K4D:实时4K分辨率4D视图合成
  • 中关村软件园发布“数据合规与出境评估服务平台”
  • 记一次若依框架和Springboot常见报错的实战漏洞挖掘
  • Idea合并Git分支信息
  • 【学习css2】grid布局-页面footer部分保持在网页底部
  • Django 表单
  • 【Linux网络】网络基础
  • Open3D 可视化点云配准中匹配点之间的连线