科大讯飞星火开源大模型iFlytekSpark-13B GPU版部署方法

星火大模型的主页:iFlytekSpark-13B: 讯飞星火开源-13B(iFlytekSpark-13B)拥有130亿参数,新一代认知大模型,一经发布,众多科研院所和高校便期待科大讯飞能够开源。 为了让大家使用的更加方便,科大讯飞增加了更多的数据,并针对工具链进行了优化。此次正式开源拥有130亿参数的iFlytekSpark-13B模型(讯飞星火开源-13B),也是首个基于全国产化算力平台“飞星一号”的大模型,正式开源!icon-default.png?t=N7T8https://gitee.com/iflytekopensource/iFlytekSpark-13B其介绍已经说得很详细了,我只是简单总结一下GPU版的推理部署方法。这里是GPU版的说明页面:deepspeed-megatron/README.md · 讯飞星火开源/iFlytekSpark-13B - Gitee.comicon-default.png?t=N7T8https://gitee.com/iflytekopensource/iFlytekSpark-13B/blob/master/deepspeed-megatron/README.md严格按照其环境要求配置环境环境即可。里面也说到,需要手动安装flash-attention和apex,这两个我都没装过,发现装后者确实有坑。期间也遇到了其他问题,例如CUDA版本之类,但都好解决,但是apex安装之后,发现有各种问题。例如报:No module named 'fused_layer_norm_cuda'。

也有博客中有解决方法:ModuleNotFoundError: No module named ‘fused_layer_norm_cuda‘_modulenotfounderror: no module named 'fused_layer_-CSDN博客文章浏览阅读5.3k次,点赞5次,收藏22次。Nvidia Apex安装与简单使用_modulenotfounderror: no module named 'fused_layer_norm_cudahttps://blog.csdn.net/Zhangye1011/article/details/125962036但是照做还是会报错,试了无数次,最终在这里看到:GPU版本报错no module named 'fused_layer_norm_cuda' · Issue #I91FJC · 讯飞星火开源/iFlytekSpark-13B - Gitee.com

结合上面的博客,感觉有可能确实是分支的问题。 apex也确实有这样的分支:

GitHub - NVIDIA/apex at 22.04-dev

所以把repo clone下来之后,首先:

git checkout 22.04-dev

再运行:

pip install -v --disable-pip-version-check --no-cache-dir --global-option="--cpp_ext" --global-option="--cuda_ext" ./

竟然就没错了!想不通这么多人遇到的问题为啥不好好解决。

另外就是下载已经训练好的模型,是在这里下载:

iFlytekSpark-13B-model-GPU: 星火开源大模型13BGPU的模型权重icon-default.png?t=N7T8https://gitee.com/iflytekopensource/i-flytek-spark-13-b-model-gpu需要注意的是,如上面repo里介绍的,由于模型太大所以使用Git LFS存储,如果直接用git clone是没法下载的。需要做的是先安装Git LFS(有很多git工具已经自带了):

sudo apt-get install git-lfs

然后:

git lfs install

接下来就可以clone这个repo了:

git lfs clone https://gitee.com/iflytekopensource/i-flytek-spark-13-b-model-gpu.git

需要注意的是,从网页上看mp_rank_00_model_states.pt大概大小有50GB,两个权重文件加起来也只有100GB,我怎么clone了458GB。估计是因为repo中多次commit,不知道设置clone深度会不会解决,我没有测试。

最后总结一下目录关系,这点repo里写得也不是很详细:

运行推理的bash脚本在:iFlytekSpark-13B/deepspeed-megatron/examples_deepspeed/iFlytekSpark里,但是repo和bash脚本里写的权重文件和tokenizer的位置:

# 若文件结构如上所示,则对应参数如下
from_pretrained="/data/ckpt_download"
tokenizer_file="/data/tokenizer/tokenizer" #注意使用tokenizer/目录下.model和vocab的前缀名字tokenizer ,而不是只到tokenizer/目录

让人不明就里,实际上可以写成绝对路径,例如我为方便起见,改成了:

from_pretrained="/home/quyu/Projects/iFlytekSpark-13B/Data/ckpt_download"
tokenizer_file="/home/quyu/Projects/iFlytekSpark-13B/Data/tokenizer/tokenizer"

最后说说硬件要求,我做完了以上配置就不报别的错了,只是还是显存溢出了,我的电脑是3090*2的,看来最低只能用40GB单卡,两个24GB由于各种原因会爆显存。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/819014.shtml

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

相关文章

leetcode-链表中间节点

876. 链表的中间结点 题目 给你单链表的头结点 head ,请你找出并返回链表的中间结点。 如果有两个中间结点,则返回第二个中间结点。 示例 1: 输入:head [1,2,3,4,5] 输出:[3,4,5] 解释:链表只有一个中间…

12.MySQL应用架构演变

MySQL应用架构演变 1.总览 单机单库主从架构分库分表云数据库 2.单机单库 介绍 一个简单的小型网站或者应用背后的架构可以非常简单,数据存储只需要一个MySQL Instance就能满足数据读取和写入需求(这里忽略掉了数据备份的实例)&#xff…

[pytorch基础操作] 矩阵batch乘法大全(dot,* 和 mm,bmm,@,matmul)

逐元素相乘torch.dot* 矩阵乘法torch.mmtorch.bmm 和 torch.matmul 逐元素相乘 逐元素相乘是指对应位置上的元素相乘,要求张量的形状相同。 torch.dot 按位相乘torch.dot:计算两个张量的点积(内积),只支持1D张量&am…

三款好用的 Docker 可视化管理工具

文章目录 1、Docker Desktop1.1、介绍1.2、下载地址1.3、在Windows上安装Docker桌面1.4、启动Docker Desktop1.5、Docker相关学习网址 2、Portainer2.1、介绍2.2、安装使用 3、Docker UI3.1、介绍3.2、安装使用3.2.1、常规方式安装3.2.2、通过容器安装 Docker提供了命令行工具&…

Linux运维面试

Linux面试题(运维人员必备技能) 1、现在给你三百台服务器,你怎么对他们进行管理? 管理3百台服务器的方式: 1)设定跳板机,使用统一账号登录,便于安全与登录的考量。 2)使…

【vue】购物车案例

change"fun"&#xff1a;元素值发生改变时&#xff0c;会触发事件fun <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale…

Qt创建基于应用程序的插件

应用程序插件 什么是插件插件的好处插件的种类应用程序插件创建应用程序的插件步骤:创建测试插件的应用程序步骤:应用程序插件示例开发环境创建示例生成插件运行结果总结什么是插件 插件是一种用于应用程序功能扩展和增强,且按照特定规范编写的应用程序接口的程序。 插件的…

linux 自定义快捷指令(docker

vi /root/.bashrc alias disdocker images alias dpsdocker ps --format "table {{.ID}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}\t{{.Names}}" 保存退出后使用sourece /root/.bashrc 让其立即生效 sourece /root/.bashrc

Python学习笔记(37)——用xlwings库生成excel

老规矩先pip入xlwings库 STEP1:下载xlwings库 windowsr>>cmd>>pip install xlwings (如果需要不同版本可以到pypi上搜&#xff09; STEP2:完成EXCEL初级创建 请打开您的编写软件~~~~~&#xff08;小编的显示结果为PYCHARM编写的&#xff0c;因为颜色标注好看(…

【论文笔记】PointMamba: A Simple State Space Model for Point Cloud Analysis

原文链接&#xff1a;https://arxiv.org/abs/2402.10739 1. 引言 基于Transformer的点云分析方法有二次时空复杂度&#xff0c;一些方法通过限制感受野降低计算。这引出了一个问题&#xff1a;如何设计方法实现线性复杂度并有全局感受野。 状态空间模型&#xff08;SSM&…

进程控制(二)

文章目录 1. 进程程序替换1.1 替换原理1.2 替换函数1.2.1 execl函数1.2.2 execv函数1.2.3 execlp函数1.2.4 execvp函数1.2.5 临时总结1.2.6 execle函数2. 函数解释3.命名理解1. 进程程序替换 1.1 替换原理 用fork创建子进程后执行的是和父进程相同的程序(但有可能执行不同的代…

蓝桥杯 — — 纯质数

纯质数 题目&#xff1a; 思路&#xff1a; 一个最简单的思路就是枚举出所有的质数&#xff0c;然后再判断这个质数是否是一个纯质数。 枚举出所有的质数&#xff1a; 可以使用常规的暴力求解法&#xff0c;其时间复杂度为&#xff08; O ( N N ) O(N\sqrt{N}) O(NN ​)&…

SQL12 获取每个部门中当前员工薪水最高的相关信息

题目&#xff1a;获取每个部门中当前员工薪水最高的相关信息 注意了&#xff0c;这道题目&#xff0c;分组函数只能查出来&#xff1a;每个部门的最高薪水&#xff0c;group by dept_no &#xff0c;根据部门分组&#xff0c;绝对不能group by dept_no,emp_no&#xff0c;不能…

.Net使用Elastic.Clients.Elasticsearch连接Elasticsearch8

文章目录 1、elasticsearch.yml配置2、生成证书指纹3、使用Elastic.Clients.Elasticsearch连接4、参考 1、elasticsearch.yml配置 单一节点配置 node.name: node-1path.data: /var/lib/elasticsearch path.logs: /var/log/elasticsearchnetwork.host: localhost http.port: 9…

Linux命令学习—linux 网络基础与网络服务管理

1.1、网卡的配置 1.1.1、修改网卡的配置文件 网卡配置文件的目录&#xff1a; /etc/sysconfig/network-scripts 网卡的配置文件类型&#xff1a; ifconfig-ethX 有线网卡的配置文件 ifconfig-ethX:X 有线网卡的虚拟网卡的配置文件 ifconfig-wlanX 无线网卡的配置文件 网…

学习一门语言的方法和套路(B站转述)

视频链接 up虽然长相英(ping)俊(ping)&#xff0c;但是讲的干活&#xff0c;没恰饭。 学习流程&#xff1a; 1.快速阅读&#xff0c;掌握概况 2.深入细节内容 例如&#xff1a;java (JDBC)、html 、netty 不管三七二十一&#xff0c;先了解套路&#xff0c;再深入研究。 高…

2024软考中项考哪个版本?应该该如何备考?

2024年1月&#xff0c;备受瞩目的软考中级系统集成项目管理工程师官方教程终于迎来了久违的大改版。为确保广大考生能够有充足的准备时间&#xff0c;软考中项的考试时间被顺延至同年11月&#xff0c;届时&#xff0c;这也将成为软考中项首次依据第3版考纲进行的考试。 新教材核…

计算机网络之CIDR

快速了解CIDR CIDR 表示的是什么&#xff1f; 单个IP地址&#xff1a;当你看到一个CIDR表示法&#xff0c;如192.168.1.1/32&#xff0c;它表示一个单独的具体IP地址。/32表示所有32位都是网络部分&#xff0c;没有主机部分&#xff0c;因此它指的是单一的IP地址。 一个IP地址…

typescript playwright 笔记

录制调式 命令 npx playwright codegen url npx playwright codegen https://www.baidu.com/typescript 中 format 和 split 的使用 import * as util from util;const str1 hellow %s; const format util.format; const str2 format(str1, word);// 提取taskId const str3…

非线性特征曲线线性化插补器(CODESYS 完整ST代码)

1、如何利用博途PLC和信捷PLC实现非线性特征曲线的线性化可以参考下面文章链接: 非线性特征曲线线性化(插补功能块SCL源代码+C代码)_scl直线插补程序-CSDN博客文章浏览阅读382次。信捷PLC压力闭环控制应用(C语言完整PD、PID源代码)_RXXW_Dor的博客-CSDN博客闭环控制的系列文章…