第5节笔记

本文详细介绍了LMDeploy在大模型部署中的应用,包括模型部署的定义、特点以及针对大模型如GPT3的挑战,探讨了剪枝、蒸馏和量化等方法,以及LMDeploy提供的轻量化和部署服务功能,重点讲解了量化感知训练和内存管理策略。
摘要由CSDN通过智能技术生成

LMDeploy量化部署LLM实践笔记

模型部署与优化

模型部署

  • 定义与特点
    • 软件工程中部署是指开发完毕的软件投入使用。
    • 人工智能领域模型部署是算法落地的关键;因为模型部署存在多种场景,例如是部署到CPU上,还是GPU/TPU/NPU上,还是多卡/集群上;或者说是部署到端侧上,例如机器人和手机。
    • 在不同的场景下,部署有不同的需求,例如不同的硬件架构,需要有针对性的进行优化;或者部署到集群上,如何分布式推理;再例如部署到端侧上,需要针对端侧内存和计算能力较小的情况下,进行优化。这些都是实际生产中需要考虑的。
  • 大模型部署
    • 参数量巨大,推理大量计算。
    • 根据InternLM2和openAI提供的计算量估算方法,20B模型每生成一个token,就要进行大约460亿次浮点运算。
    • 20B算是小模型,GPT3参数量规模有175B,Batch-Size大一些,每次推理计算量将达到千万亿量级;A100 FP16理论运算性能每秒77.97万亿。
  • 内存开销
    • 以FP16为例子,20B模型加载参数需要40G+显存,175B模型(GPT3)需要350G+显存
    • 由于KV cache的存在,还会额外占用显存,例如FP16,batch-size=16,输入为512 tokens,输出为32tokens,20B模型额外产10.3G 缓存
  • 访存瓶颈
    • 大模型推理是访存密集任务
  • 动态请求
    • 请求量不确定
    • 请求时间不确定
    • Token生成不确定

大模型部署方法

剪枝
蒸馏
量化
  • 量化感知训练(QAT) LLM-QAT
    • 量化感知训练,主要是通过QDQ让模型适应量化误差
  • 量化感知微调(QAF) PEQA QLORA
    • 微调过程中进行量化
  • 训练后量化(PTQ) LLM.int8 AWQ
    • 训练后量化,减少LLM的存储和计算复杂性

LMDeploy

涵盖了LLM任务的全套轻量化、部署和服务功能包
有状态推理学到了
可扩展的KV 缓存器 类似于内存池和页式管理,用到了kv cache

LMDeploy核心功能
支持各种模型推理部署
  • 10
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值