1.LMDeploy环境部署
1.1创建开发机
填写开发机名称;选择镜像Cuda12.2-conda
;选择10% A100*1
GPU;点击“立即创建”。注意请不要选择Cuda11.7-conda
的镜像,新版本的lmdeploy会出现兼容性问题。
1.2 创建conda环境
由于环境依赖项存在torch,下载过程可能比较缓慢。InternStudio上提供了快速创建conda环境的方法。打开命令行终端,创建一个名为lmdeploy
的环境:
studio-conda -t lmdeploy -o pytorch-2.1.2
环境接近创建成功后,提示如下:
1.3 安装LMDeploy
- 激活上面安装的conda 环境
- 安装0.3.0版本的lmdeploy。
pip install lmdeploy[all]==0.4.2
2.LMDeploy模型对话(chat)
2.1 下载模型
首先进入一个你想要存放模型的目录,本教程统一放置在Home目录。执行如下指令:
cd ~
然后执行如下指令由开发机的共享目录软链接或拷贝模型:
ln -s /root/share/new_models/Shanghai_AI_Laboratory/internlm2-chat-1_8b /root/
# cp -r /root/share/new_models/Shanghai_AI_Laboratory/internlm2-chat-1_8b /root/
执行完如上指令后,可以运行“ls”命令。可以看到,当前目录下已经多了一个internlm2-chat-1_8b
文件夹,即下载好的预训练模型。
2.2 使用LMDeploy与模型对话
首先激活创建好的conda环境:
conda activate lmdeploy
执行如下命令运行下载的1.8B模型:
lmdeploy chat /root/internlm2-chat-1_8b
输入“请给我讲一个小故事吧”,然后按两下回车键。
使用 LMDeploy 完成 InternLM-XComposer2-VL-1.8B 的部署
然后执行如下指令由开发机的共享目录软链接或拷贝模型:
ln -s /root/share/new_models/OpenGVLab/internlm-xcomposer2-vl-1_8b /root/
打开pipeline_ixv_1_8b.py
,填入内容如下:
from lmdeploy.vl import load_image
from lmdeploy import pipeline
import nest_asyncio
nest_asyncio.apply()
pipe = pipeline('/root/internlm-xcomposer2-vl-1_8b')
image = load_image('/root/image.png')
response = pipe(('请描述图中内容', image))
print(response.text)
从端侧设备复制一张图片到开发机
保存后运行pipeline。
python pipeline_ixv_1_8b.py
得到输出结果(暂时因为只解锁10%A100,显存不够)
使用 LMDeploy 完成 InternVL2-2B 的部署
类似的运行下面的对话脚本
from lmdeploy.vl import load_image
from lmdeploy import pipeline
import nest_asyncio
nest_asyncio.apply()
pipe = pipeline('Mini-InternVL-Chat-2B-V1-5')
image = load_image('/root/image.png')
response = pipe(('请描述图中内容', image))
print(response.text)