一.LMDeploy介绍
LMDeploy 是LLM在英伟达设备上部署的全流程解决方案。包括模型轻量化、推理和服务。
核心功能1:量化
核心功能2:推理引擎TurboMind
核心功能3:推理服务
二、LMDeploy实战
1.环境安装
使用 pip3 install lmdeploy[all] 安装LMDeploy:
安装完成后验证是否成功:
2.使用 Cli Demo 完成 InternLM2-Chat-1.8B 模型的部署
2.1 模型准备
InternStudio开发机已经准备好了常用的模型,路径为/root/share/new_models/Shanghai_AI_Laboratory/
本次我们需要用到chat-1.8b的模型,执行以下命令,将模型软连接到实验环境:
ln -s /root/share/new_models/Shanghai_AI_Laboratory/internlm2-chat-1_8b /root/models/
使用ls命令查看/root/models文件夹,可以看到已经多了一个internlm2-chat-1_8b
文件夹,即下载好的预训练模型。
2.2 生成 300 字小故事
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("internlm/internlm2-chat-1_8b", trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained("internlm/internlm2-chat-1_8b", device_map="auto", trust_remote_code=True, torch_dtype=torch.float16)
model = model.eval()
response, history = model.chat(tokenizer, "你是一个创作大师,请以百模大战为主题,写一篇300字的文章,文风幽默、内容专业", history=[])
print(response)
生成结果如下:
3.使用LMDeploy完成 InternLM-XComposer2-VL-1.8B模型的部署
使用2.1同样的方法将模型软连接到实验环境。因此,执行lmdeploy serve gradio /root/models/internlm-xcomposer2-vl-1_8b来启动推理服务:
在本机CMD窗口执行ssh -p 给定端口 root@ssh.intern-ai.org.cn -CNg -L {本地机器_PORT}:127.0.0.1:{开发机_PORT} -o StrictHostKeyChecking=no
访问http://127.0.0.1:6006/即可打开页面:
4.使用LMDeploy完成 InternVL2-2B 模型的部署
与3的操作过程类似,结果如下: