文章目录
一、LMDeploy 是什么?
LMDeploy 是一个用于大型语言模型(LLMs)和视觉-语言模型(VLMs)压缩、部署和服务的 Python 库。 其核心推理引擎包括 TurboMind 引擎和 PyTorch 引擎。前者由 C++ 和 CUDA 开发,致力于推理性能的优化,而后者纯 Python 开发,旨在降低开发者的门槛。
1.1 核心功能
- 高效的推理:LMDeploy 开发了
Persistent Batch(即 Continuous Batch),Blocked K/V Cache,动态拆分和融合,张量并行,高效的计算 kernel等重要特性。推理性能是 vLLM 的 1.8 倍。 - 可靠的量化:LMDeploy 支持
权重量化和k/v 量化。4bit 模型推理效率是 FP16 下的 2.4 倍。量化模型的可靠性已通过 OpenCompass 评测得到充分验证。 - 便捷的服务:通过请求分发服务,LMDeploy 支持多模型在多机、多卡上的推理服务。
- 有状态推理:通过 缓存 多轮对话过程中
attention 的 k/v,记住对话历史,从而避免重复处理历史会话。显著提升长文本多轮对话场景中的效率。 - 卓越的兼容性: LMDeploy 支持 KV Cache 量化, AWQ 和 Automatic Prefix Caching 同时使用。
1.2 性能
- LMDeploy
TurboMind引擎拥有卓越的推理能力,在各种规模的模型上,每秒处理的请求数是 vLLM 的 1.36 ~ 1.85 倍。在静态推理能力方面,TurboMind 4bit 模型推理速度(out token/s)远高于 FP16/BF16 推理。在小 batch 时,提高到 2.4 倍

- LMDeploy 支持 2 种推理引擎:
TurboMind和PyTorch,它们侧重不同。前者追求推理性能的极致优化,后者纯用python开发,着重降低开发者的门槛。
二、快速开始
2.1 安装
官方推荐在一个干净的conda环境下(python3.8 - 3.12)进行安装:
conda create -n lmdeploy python=3.12 -y && conda activate lmdeploy
pip install lmdeploy
2.2 验证
lmdeploy --version # 查看版本
lmdeploy list # 查看支持的模型名称
2.3 模型仓库
LMDeploy 默认从 HuggingFace 上面下载模型
-
如果需要从
ModelScope上面下载模型pip install modelscope # 设置环境变量 export LMDEPLOY_USE_MODELSCOPE=True -
如果要从
openMind Hub上面下载模型pip install openmind_hub # 设置环境变量 export LMDEPLOY_USE_OPENMIND_HUB=True
LMDeploy:大模型本地化部署的高效方案

最低0.47元/天 解锁文章
1967

被折叠的 条评论
为什么被折叠?



