第二期书生浦语大模型训练营第五次笔记

news2025/1/13 13:55:34

模型部署


模型部署对于任何大模型来说是非常关键的一步。一旦模型经过训练并达到预期的性能指标,就需要将其部署到实际的生产环境中,为最终用户提供服务。但是在部署过程中,大型模型会面临一些独特的挑战。

面临的挑战

大模型在部署方面有一个难题,就是大模型的“大”,导致在很多设备环境很难部署,包括:

  1. 1.计算量巨大
  2. 2.内存开销大
  3. 3.访存瓶颈

这些问题使得在许多设备和环境中部署大型模型变得非常困难,甚至根本无法实现。因此,如何有效地解决这些挑战,成为了大模型部署中必须解决的关键问题。

部署问题的解决方案

为了应对上述挑战,研究人员和工程师提出了多种解决方案,包括知识蒸馏、模型剪枝和量化等技术。

知识蒸馏的思路是利用大型教师模型来指导小型学生模型的训练,使学生模型能够学习到教师模型的知识,从而在保持较好性能的同时大幅减小模型的规模。

模型剪枝则是通过剔除模型中不重要的参数和计算,来缩小模型的尺寸。

量化技术则是将原始的32位或16位浮点数参数压缩为8位或更低位宽的定点数表示,从而降低模型的内存占用和计算量。

量化模型LMDeploy

最关键的就是高效的推理能力。具体来说,包括以下几个方面:

  1. 高效的推理技术,如Continuous Batch、Blocked K/V Cache等,能够极大提高推理的速度和吞吐量。
  2. 内存优化,如通过IntermediateFileCache(LMDeploy)技术,大幅减少内存占用,支持在低配GPU(16GB/24GB)上高效部署大模型。
  3. 支持多种量化类型,如支持Attention的量化,以平衡推理速度和精度。
  4. 良好的工程能力,如端到端的部署流程、高效的并行计算等,提高了部署效率。

最后可以看到LMDeploy在性能的表现上非常优秀,速度提升明显。

部署LMDeploy并对话

配置LMDeploy运行环境

安装好环境,并成功激活

使用transformer运行大模型

使用LMDeploy模型量化(lite)

KV8量化W4A16量化。KV8量化是指将逐 Token(Decoding)生成过程中的上下文 K 和 V 中间结果进行 INT8 量化(计算时再反量化),以降低生成过程中的显存占用。W4A16 量化,将 FP16 的模型权重量化为 INT4,Kernel 计算时,访存量直接降为 FP16 模型的 1/4,大幅降低了访存成本。Weight Only 是指仅量化权重,数值计算依然采用 FP16(需要将 INT4 权重反量化)。

使用KV8量化

设置--cache-max-entry-count参数,控制KV缓存占用剩余显存的最大比例

上下进行对比,第一个设置为0.8,第二个设置为0.5,发现有明显的显存占用降低

使用W4A16量化

进行量化工作,保存新的HF模型。

KV Cache比例再次调为0.4,进行对话

可以发现推理生成的速度很快

LMDeploy服务(serve)


1 启动API服务器

2 命令行客户端连接API服务器

3 网页客户端连接API服务器

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

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

相关文章

力扣---填充每个节点的下一个右侧节点指针 II

给定一个二叉树: struct Node {int val;Node *left;Node *right;Node *next; } 填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 next 指针设置为 NULL 。 初始状态下,所有 next 指针都…

服务器 BMC(基板管理控制器,Baseboard Management Controller)认知

写在前面 工作中遇到,简单整理博文内容涉及 BMC 基本认知理解不足小伙伴帮忙指正 不必太纠结于当下,也不必太忧虑未来,当你经历过一些事情的时候,眼前的风景已经和从前不一样了。——村上春树 基板管理控制器(BMC&…

ClickHouse用UDF解析XML字符串和XML文件

一.如果是读取xml文件的时候,文件入库需要使用文件读取UDF 创建了1个测试文件 wsdFileRead(): 直接读取文件内容 SELECT wsdFileRead(/home/temp/wsd_test.xml)Query id: 09b6e5fe-7169-43f7-b001-90e2eeabb8da┌─wsdFileRead(/home/temp/wsd_test.xm…

Vue--》深入了解 VueUse 功能性工具集

今天博主为大家介绍一款实用性的插件名字叫做 VueUse ,它是专门为 Vue.js 生态系统设计的功能性工具集合。其提供了许多可重用的功能函数,可以帮助开发者更轻松地构建 Vue.js 应用程序。其提供了大量的功能,包括状态管理、副作用管理、组合式…

NCH WavePad for Mac:功能全面的音频编辑利器

NCH WavePad for Mac是一款功能全面的音频编辑软件,专为Mac用户设计。它集音频录制、编辑、处理和效果添加于一体,为用户提供一站式的音频解决方案。 NCH WavePad for Mac v19.16注册版下载 作为一款专业的音频编辑器,WavePad支持对音频文件进…

大厂产品专家是做晋升述职的?

在大厂里,晋升都是需要述职的。与年终述职不同,晋升述职要求严格很多。这种情况下,如何完美表达自己才是适合晋升的人选?这篇文章,值得即将晋升和准备晋升的各位看看。 之前学姐写了一篇文章,讲怎么做年度述职,反响还不错~有兴趣的童鞋可以戳这里复习。今天学姐来讲一个…

用Nest实现对数据库的增删改查~

概述 为了与 SQL和 NoSQL 数据库集成,Nest 提供了 nestjs/typeorm 包。Nest 使用TypeORM是因为它是 TypeScript 中最成熟的对象关系映射器( ORM )。因为它是用 TypeScript 编写的,所以可以很好地与 Nest 框架集成。 TypeORM 提供了对许多关系数据库的支…

WEB攻防-ASP中间件IIS 短文件名探针安全漏洞

IIS短文件名探针安全漏洞是一个与IIS(Internet Information Services)服务相关的安全问题。该漏洞主要是由于HTTP请求中使用了旧DOS 8.3名称约定(SFN)的代字符(〜)波浪号,这使得远程攻击者有可能…

使用 Meta Llama 3 构建人工智能的未来

使用 Meta Llama 3 构建人工智能的未来 现在提供 8B 和 70B 预训练和指令调整版本,以支持广泛的应用 使用 Meta AI 体验 Llama 3 我们已将 Llama 3 集成到我们的智能助手 Meta AI 中,它扩展了人们完成工作、创造和与 Meta AI 联系的方式。通过使用 Meta AI 进行编码任务和解…

ROS学习笔记(13)坐标变换(TF和TF2)

0.前提 我翻了一下我以前的教程发现我居然没有讲过TF坐标转换,那现在补上。在机器人学中坐标转换是一个极为重要的概念、内容,在大量的科技公司招聘机器人岗位的人才时掌握机器人运动学正解和逆解等都是加分项。机器人在实际应用当中会涉及到大量的位置…

椋鸟数据结构笔记#11:排序·下

文章目录 外排序(外部排序)文件拆分并排序归并文件两个文件归并多文件归并优化 萌新的学习笔记,写错了恳请斧正。 外排序(外部排序) 当数据量非常庞大以至于无法全部写入内存时,我们应该怎么排序这些数据呢…

冈萨雷斯数字图像处理资源(课后习题答案+代码+图片)

冈萨雷斯数字图像处理相关资源整理,资源全部来源互联网,方便大家下载 冈萨雷斯数字图像处理相关资源整理 课后习题 冈萨雷斯数字图像处理源代码

16.Nacos环境隔离

环境隔离namespace Namespace->Group->Service/Data->集群->实例 Namespace: Group: nacos控制台新增一个开发环境的命名空间:dev, 会产生命名空间的id。 将命名空间的id配置到微服务的配置文件中: spring:cloud:nacos:server…

MATLAB将多张小图整合到一张大图形成模板图

MATLAB将多张小图整合到一张大图形成模板图 代码如下: clc;close all;clear all;warning off;%清除变量 rand(seed, 100); randn(seed, 100); format long g;foldername字符模板; [datacell,filenamecell,filenameAllcell]readfun_1n(foldername); K2length(filenamecell);% …

25计算机考研院校数据分析 | 上海交通大学

上海交通大学电子信息与电气工程学院成立于2001年12月,其前身可湖源至百年前的电机专科,具有中国电气工程师“摇篮”之美称。50年代根据学科发展需要分为电工与计算机科学系(三系)和电子工程系(四系)。1985年,三系和四系合并,成立…

电子签名在人力资源中的应用:让HR工作更高效

人力资源(HR)行业是电子签领域的重要应用之一,它可以在以下场景中使用电子签: 1. 在招聘流程中,HR部门可以利用电子签名工具来完成与招聘候选人之间的任何文件签署操作。例如,维护人才库数据库、简历、面试…

RAG:智能图书馆员引领AI的知识之旅

想象一下,你是一个法官,面对一个复杂的案件,你需要查阅大量的法律文献来找到相关的案例和法律条文。在AI的世界里,也有一个类似的“法官”——大型语言模型(LLMs)。它们能够回答各种问题,但有时…

RISC-V CVA6 在 Linux 下相关环境下载与安装

RISC-V CVA6 在 Linux 下相关环境下载与安装 所需环境与源码下载 CVA6 源码下载 首先,我们可以直接从 GitHub 一次性拉取所有源码: git clone --recursive https://github.com/openhwgroup/cva6.git如果这里遇到网络问题,拉取失败&#x…

vulfocus靶场struts2 命令执行 CVE-2016-3081

远程攻击者利用漏洞可在开启动态方法调用功能的Apache Struts 2服务器上执行任意代码,取得网站服务器控制权。 影响版本: Struts 2.3.20 - Struts Struts 2.3.28 (except 2.3.20.3 and 2.3.24.3) 工具利用: struts2 综合利用工具: http://i…

4月23号总结

java实现发送邮件 在做聊天室项目的时候&#xff0c;由于需要发送邮箱验证码&#xff0c;所以自己查找了这方面的内容。 首先需要在Maven里面依赖 <dependency><groupId>com.sun.mail</groupId><artifactId>javax.mail</artifactId><versio…