《LMDeploy 量化部署 LLM 实践》课程笔记
模型部署指将训练好的深度学习模型在特定环境中运行的过程
大模型部署面临的挑战之一是计算量巨大
另一个挑战是内存开销巨大
第三个挑战是大模型推理是访存密集型任务,存在访存瓶颈
常用大模型部署方法
模型剪枝
知识蒸馏
模型量化,基本思想是将表示方法中的浮点数转换为整数或其他离散形式,降低访存量,降低深度学习模型的存储和计算负担
lmdeploy简介
lmdeploy核心功能包括高效推理,量化压缩和服务化部署
《LMDeploy 量化部署 LLM 实践》课程作业
不使用lmdeploy部署推理
使用lmdeploy部署推理
LMDeploy的KV Cache管理器可以通过设置–cache-max-entry-count参数,控制KV缓存占用剩余显存的最大比例。默认的比例为0.8。
下面,改变–cache-max-entry-count参数,设为0.5。
对模型进行4-bit量化
下面使用Chat功能运行W4A16量化后的模型。为了更加明显体会到W4A16的作用,将KV Cache比例再次调为0.01,查看显存占用情况。
可以看到显存占用率明显降低
启动API服务器
在本地浏览器打开页面
在vscode中新建客户端终端进行对话
网页客户端连接API服务器
Python代码集成运行1.8B模型
向TurboMind后端传递参数
使用LMDeploy运行视觉多模态大模型llava
运行结果
通过Gradio来运行llava模型