当前位置:   article > 正文

第二期 LMDeploy 量化部署 LLM-VLM 实践 笔记

第二期 LMDeploy 量化部署 LLM-VLM 实践 笔记

一、大模型部署背景

        部署是指把训练好的模型投入使用,一般是服务器(CPU/GPU/TPU)或者移动端。

        大模型部署面临挑战:

        1. 参数量巨大

        大模型参数量巨大,前向推理时需要进行大量计算。根据InternLM2技术报告提供的模型参数数据,以及OpenAI团队提供的计算量估算方法, 20B模型每生成1个token, 就要进行约406亿次浮点运算;照此计算,若生成128个token,就要进行5.2万亿次运算。

         2.内存开销巨大

        大模型在推理过程中,为避免重复计算,会将计算注意力(Attention)得到的KV进行缓存。根据InternLM2技术报告(1提供的模型参数数据,以及KV Cache空间估算方法[2],以FP16为例,在batch-size为16、输入512 tokens、输出32 tokens的情境下,仅20B模型就会产生10.3GB的缓存。  

        以FP16为例,20B模型仅加载参数就需40G+显存,175B模型(如GPT-3)更是需要350G+显存。目前,以NVIDIA RTX 4060消费级显卡为例, 单卡显存仅有8GB; NVIDIA A100单卡显存仅有80GB。

        3.访存瓶颈

        受限于模型架构Transformer的decoder结构,大模型推理是"访存密集”型任务。目前硬件计算速度"远快于”显存带宽,存在严重的访存性能瓶颈。

        4.动态请求

        大模型的请求量不确定,请求时间不确定,Token逐个生成,生成的数量不确定

二、大模型部署方法

        1.模型剪枝

        剪枝指移除模型中不必要或多余的组件,比如参数,以使模型更加高效。通过对模型中贡献有限的冗余参数进行剪枝,在保证性能最低下降的同时,可以减小存储需求、提高计算效率。

        包括非结构化剪枝和结构化剪枝。

        2.知识蒸馏

        知识蒸馏是一种经典的模型压缩方法,核心思想是通过引导轻量化的学生模型"模仿"性能更好、结构更复杂的教师模型,在不改变学生模型结构的情况下提高其性能。


        3.模型量化

        量化技术将传统的表示方法中的浮点数转换为整数或其他离散形式,以减轻深度学习模型的存储和计算负担。

三、LMDeploy简介

         LMDeploy由MMDeploy和MMRazor团队联合开发,是涵盖了LLM任务的全套轻量化、部署和服务解决方案。核心功能包括高效推理、可靠量化、便捷服务和有状态推理。

        核心功能:模型高效推理、模型量化压缩、服务化部署。

        表现:

        支持的模型:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/428969
推荐阅读
相关标签
  

闽ICP备14008679号