LMDeploy 的量化和部署
- 0. 课程链接
- 1. 课后作业
- 1.1 基础作业
- 1.2 进阶作业(可选做)
0. 课程链接
链接:https://github.com/InternLM/tutorial/blob/main/lmdeploy/lmdeploy.md
1. 课后作业
1.1 基础作业
使用 LMDeploy 以本地对话、网页Gradio、API服务中的一种方式部署 InternLM-Chat-7B 模型,生成 300 字的小故事(需截图)
提示词:一个程序员在办公室加班,晚上11点,咖啡杯不小心打翻 到电脑上,程序员触电穿越到大明,拯救即将灭亡的大明朝的故事,生成300字
书生:
在一个深夜,程序员小明正坐在电脑前努力地工作着。突然,他感到一阵刺痛,随后便失去了知觉。当他再次醒来时,发现自己已经穿越到了明朝时期。
小明惊讶地发现自己身处在一个荒凉的村庄里,周围都是陌生的景象和声音。他开始四处寻找出路,希望能够回到现代。然而,他很快就发现,自己已经成为了这个村庄里的一名普通村民。
小明很快发现,他所处的明朝正面临着一场巨大的危机。皇帝被奸臣所害,国家陷入了混乱和动荡之中。小明决定挺身而出,用自己的技术知识和智慧来拯救这个即将灭亡的大明。
小明开始学习明朝的历史和文化,并且利用自己的编程技能,开发出了一系列能够帮助明朝抵御外敌的武器和工具。他还利用自己的网络知识,建立了一个庞大的情报网络,收集到了许多有用的信息。
最终,小明成功地帮助明朝度过了危机,并且成为了明朝的一位英雄。他用自己的行动证明了技术不仅能够改变世界,还能够拯救文明。
小明回到了现代,但是他并没有忘记他所做的一切。他决定继续利用自己的技术知识和智慧,为人类社会做出更多的贡献。
这就是小明的故事,一个程序员穿越时空,拯救大明的传奇。
1.2 进阶作业(可选做)
将第四节课训练自我认知小助手模型使用 LMDeploy 量化部署到 OpenXLab 平台。
对internlm-chat-7b模型进行量化,并同时使用KV Cache量化,使用量化后的模型完成API服务的部署,分别对比模型量化前后(将 bs设置为 1 和 max len 设置为512)和 KV Cache 量化前后(将 bs设置为 8 和 max len 设置为2048)的显存大小。
在自己的任务数据集上任取若干条进行Benchmark测试,测试方向包括:
(1)TurboMind推理+Python代码集成
(2)在(1)的基础上采用W4A16量化
(3)在(1)的基础上开启KV Cache量化
(4)在(2)的基础上开启KV Cache量化
(5)使用Huggingface推理
备注:由于进阶作业较难,完成基础作业之后就可以先提交作业了,在后续的大作业项目中使用这些技术将作为重要的加分点!
进阶作业嘛,天寒地冻的必然做不了,待春暖花开时再做!