华为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.mzph.cn/bicheng/45408.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数学基础 -- 求解微分问题之乘法法则、商法则和链式求导法则

微分求解问题之乘法法则、商法则和链式求导法则 微分求解问题常用的三个基本法则是乘积法则、商法则和链式求导法则。下面是它们的公式和一些例子: 乘积法则 乘积法则用于求两个函数的乘积的导数。假设 u ( x ) u(x) u(x) 和 v ( x ) v(x) v(x) 是两个可微函数…

大鲸鱼—docker 基本概念及安装使用

目录 一、docker前言 1.什么是Docker? 2.Docker的宗旨 3.容器的优点 4.Docker与虚拟机的区别 5.Docker核心概念 镜像 容器 仓库 6.为什么要用容器 7.容器越来越受欢迎的原因 8.容器在内核中支持2种重要技术 二、Docker安装 三、Docker 镜像操作 1.搜…

旷视AI开源新突破:上传照片即可生成表情包视频!

日前,旷视科技发布了一项新的开源AI人像视频生成框架——MegActor。该框架让用户只需输入一张静态肖像图片和一段视频(如演讲、表情包、rap),便可生成一段表情丰富、动作一致的AI人像视频。生成的视频长度取决于输入的视频长度。与…

API接口详解及其在电子商务中的应用研究

目录 引言 一、API接口概述 1.1 API接口定义 1.2 API接口的作用 二、API接口分类 2.1 根据使用对象分类 2.2 根据协议和数据格式分类 三、API接口设计原则 四、API接口在电子商务中的应用 4.1 数据交换与集成 4.2 个性化推荐与营销 4.3 库存管理与订单处理 4.4 数…

C++ 数据结构探索:构建高效程序的基础

C 数据结构探索:构建高效程序的基础 在C编程的广阔领域中,数据结构是理解和实现高效、可维护程序的核心。数据结构是计算机存储、组织数据的方式,它们使得数据访问和修改操作更加高效。本文将带您走进C中几种常见且重要的数据结构&#xff0…

数据湖仓一体(一) 编译hudi

目录 一、大数据组件版本信息 二、数据湖仓架构 三、数据湖仓组件部署规划 四、编译hudi 一、大数据组件版本信息 hudi-0.14.1zookeeper-3.5.7seatunnel-2.3.4kafka_2.12-3.5.2hadoop-3.3.5mysql-5.7.28apache-hive-3.1.3spark-3.3.1flink-1.17.2apache-dolphinscheduler-3.1.9…

气膜仓储与传统仓储的成本优势对比—轻空间

随着物流和仓储需求的不断增长,企业对仓储设施的要求也日益提高。传统仓储设施虽然具有一定的优势,但在建设和运营成本上往往较高。近年来,气膜仓储作为一种新型仓储方式,以其独特的优势逐渐受到市场青睐。轻空间将详细探讨气膜仓…

Debian 12更新:12.6版本发布 2024年6月29日

Debian 12更新:12.6版本发布 2024年6月29日 Debian项目很高兴地宣布其稳定发行版Debian 12(代号bookworm)的第六次更新。这个点发布主要增加了对安全问题的修正,以及对一些严重问题的调整。安全警告已经单独发布,并且…

spring boot实现短信验证码功能

1、到阿里云网站申请 https://market.aliyun.com/products/5700000 2/cmapi00046920.html2、配置文件,可申请测试 sms:app-code: xxxxxxxxxtemplate-id: xxxxxxx3、使用restTemplate用于第三方接口调用 package com.example.rsocketclient.config;import org.spr…

Altium Designer输出Gerber文件步骤

参考链接 技术指导:Altium Designer输出Gerber文件步骤 (jlc.com)https://www.jlc.com/portal/server_guide_10171.html 特此记录 anlog 2024年7月12日

springboot 程序运行一段时间后收不到redis订阅的消息

springboot 程序运行一段时间后收不到redis订阅的消息 问题描述 程序启动后redis.user.two主题正常是可以收到消息的,发一条收一条,但是隔一段时间后;就收不到消息了; 此时如果你手动调用发送另外一个消息订阅redis.user.two2&…

豆包AI智能助手:知识库整理与智能检索的双重应用

引言 抖音豆包,作为字节跳动开发的AI智能助手,不仅仅是一个简单的虚拟角色,而是集成了深度学习和自然语言处理技术的复杂系统,专门设计来增强用户在抖音平台上的体验。同时,豆包的应用示范了AI智能助手在知识库管理和…

华为HCIP Datacom H12-821 卷38

1.多选题 下面关于 BGP中的公认属性的描述,正确的是 A、公认必遵属性是所有BGP路由器都识别,且必须存在于Updata消息中心 B、BGP必须识别所有公认属性 C、公认属性分为公认必遵和可选过渡两种 D、公认任意属性是所有BGP造由器都可以识别&#xff0c…

怎么拿下Android开发Android面试题?(一)

Hello,之前更新了面试中的Android的Java面试部分,这里会更新关于Android部分的面试题。 怎么拿下Android开发Android面试题?(二) 第一节 Android 四大组件相关1.1 Activity 与 Fragment 之间常见的几种通信方式&#x…

编程参考 - 在C++移动构造函数声明中使用noexcept

在 C 中,noexcept 是用于表示函数不抛出异常的指定符。它既可用于常规函数,也可用于特殊成员函数,包括构造函数和析构函数。使用 noexcept 可以帮助编译器进行优化,提高代码的安全性和正确性。 In C, noexcept is a specifier use…

设计模式的七项原则

文章目录 设计模式的七项原则单一职责原则接口隔离原则依赖倒置里氏替换原则开闭原则迪米特法则复用合成原则 设计模式的七项原则 分别为 单一职责原则接口隔离原则依赖倒置里氏替换原则开闭原则迪米特法则复用合成原则 单一职责原则 一个类负责一个职责,不可以…

解决configure: error: Unexpected output of ‘arch‘ on OSX

最近很好高兴用上了新版的macbook(芯片:Apple M3 Pro,操作系统:14.3)。 不高兴的是遇到了不兼容的问题。所以选型还是成熟的技术是关键。 电脑里用pyenv 工具管理多个版本的python。 命令:pyenv install x…

FX110网:香港证监会对Yomaex等多家虚拟资产交易平台发出警告

近日,香港证券及期货事务监察委员会(香港证监会,SFC)对虚拟资产交易平台Yomaex发出警告,运营网址为yomaexd.com.该平台曾多次被FX110网发文曝光。相关阅读 《Yomaex平台“高额回报”是“高级陷阱”,公务员也…

Mybatis-plus乐观锁的实现

第一步:在springboot启动类 的拦截器中添加乐观锁Bean public MybatisPlusInterceptor plusInterceptor(){MybatisPlusInterceptor mybatisPlusInterceptor new MybatisPlusInterceptor();//分页插件mybatisPlusInterceptor.addInnerInterceptor(new PaginationInn…

Java中Timer定时器的使用

定时器Timer 概述:开发中,有时候我们会需要一些周期性的操作,每隔一段时间去做一件事,在Java中可以通过Timer定时器去实现。Timer是一种工具,线程用其安排以后在后台线程中执行的任务。可安排任务执行一次&#xff0c…