赞
踩
- conda create -n lmdeploy python=3.10
- conda activate lmdeploy
- conda install pytorch==2.1.2 torchvision==0.16.2 torchaudio==2.1.2 pytorch-cuda=12.1 -c pytorch -c nvidia
- pip install -U lmdeploy[all]
- mkdir -p ~/model
- cd ~/model
- ln -s /root/share/new_models/meta-llama/Meta-Llama-3-8B-Instruct ~/model/Meta-Llama-3-8B-Instruct
- conda activate lmdeploy
- lmdeploy chat /root/model/Meta-Llama-3-8B-Instruct
模型在运行时,占用的显存可大致分为三部分:模型参数本身占用的显存、KV Cache占用的显存,以及中间运算结果占用的显存。LMDeploy的KV Cache管理器可以通过设置--cache-max-entry-count参数,控制KV缓存占用剩余显存的最大比例。默认的比例为0.8。
lmdeploy chat /root/model/Meta-Llama-3-8B-Instruct/
lmdeploy chat /root/model/Meta-Llama-3-8B-Instruct/ --cache-max-entry-count 0.5
- lmdeploy lite auto_awq \
- /root/model/Meta-Llama-3-8B-Instruct \
- --calib-dataset 'ptb' \
- --calib-samples 128 \
- --calib-seqlen 1024 \
- --w-bits 4 \
- --w-group-size 128 \
- --work-dir /root/model/Meta-Llama-3-8B-Instruct_4bit
lmdeploy chat /root/model/Meta-Llama-3-8B-Instruct_4bit --model-format awq
之前都是在本地直接推理大模型,这种方式成为本地部署。在生产环境下,我们有时会将大模型封装为 API 接口服务,供客户端访问。
通过以下命令启动API服务器,推理Meta-Llama-3-8B-Instruct模型:
- lmdeploy serve api_server \
- /root/model/Meta-Llama-3-8B-Instruct \
- --model-format hf \
- --quant-policy 0 \
- --server-name 0.0.0.0 \
- --server-port 23333 \
- --tp 1
lmdeploy serve api_client http://localhost:23333
Gradio作为前端,启动网页客户端。
- pip install gradio==3.50.2
- lmdeploy serve gradio http://localhost:23333 \
- --server-name 0.0.0.0 \
- --server-port 6006
打开浏览器,访问地址http://127.0.0.1:6006 与模型进行对话
使用 LMDeploy 在 A100(80G)推理 Llama3,每秒请求处理数(RPS)高达 25,是 vLLM 推理效率的 1.8+ 倍。
但是本文使用的是30%的A100(重在参与
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。