安装#

LMDeploy 是一个用于压缩、部署和服务大型语言模型(LLMs)和视觉语言模型(VLMs)的 Python 库。 其核心推理引擎包括 TurboMind 引擎和 PyTorch 引擎。前者由 C++ 和 CUDA 开发,致力于实现推理性能的极致优化,而后者则完全用 Python 开发,旨在降低开发者的门槛。

它支持在Linux和Windows平台上部署LLMs和VLMs,最低要求CUDA版本为11.3。此外,它与以下NVIDIA GPU兼容:

  • Volta(sm70): V100

  • 图灵(sm75): 20系列, T4

  • 安培(sm80,sm86): 30系列, A10, A16, A30, A100

  • 艾达·洛夫莱斯(sm89): 40系列

使用 pip 安装(推荐)#

建议在conda环境(python 3.8 - 3.12)中使用pip安装lmdeploy:

conda create -n lmdeploy python=3.8 -y
conda activate lmdeploy
pip install lmdeploy

默认的预构建包是在CUDA 12上编译的。如果需要CUDA 11+(>=11.3),你可以通过以下方式安装lmdeploy:

export LMDEPLOY_VERSION=0.6.5
export PYTHON_VERSION=38
pip install https://github.com/InternLM/lmdeploy/releases/download/v${LMDEPLOY_VERSION}/lmdeploy-${LMDEPLOY_VERSION}+cu118-cp${PYTHON_VERSION}-cp${PYTHON_VERSION}-manylinux2014_x86_64.whl --extra-index-url https://download.pytorch.org/whl/cu118

使用pip安装夜间构建包#

LMDeploy的发布频率大约为每月一次或两次。如果您所需的功能已合并到LMDeploy主分支但尚未发布,您可以根据您的CUDA和Python版本尝试使用这里提供的夜间构建包。

从源代码安装#

如果您正在使用PyTorch引擎进行推理,从源代码安装非常简单:

git clone https://github.com/InternLM/lmdeploy.git
cd lmdeploy
pip install -e .

但如果你使用的是TurboMind引擎,你必须按照以下方式构建源代码。强烈推荐使用openmmlab/lmdeploy:{tag} docker镜像。

步骤 1 - 获取 LMDeploy 的 docker 镜像

docker pull openmmlab/lmdeploy:latest

注意

“openmmlab/lmdeploy:latest” 基于 “nvidia/cuda:12.4.1-devel-ubuntu22.04”。如果您在具有 cuda 11+ 驱动程序的平台上工作,请使用 “openmmlab/lmdeploy:latest-cu11”。 自 v0.5.3 版本以来,LMDeploy docker 镜像标签的模式为 “openmmlab/lmdeploy:{version}-cu(11|12)”。

步骤 2 - 克隆 LMDeploy 源代码并切换到其根目录

git clone https://github.com/InternLM/lmdeploy.git
cd lmdeploy

步骤 3 - 以交互模式启动 docker 容器

docker run --gpus all --net host --shm-size 16g -v $(pwd):/opt/lmdeploy --name lmdeploy -it openmmlab/lmdeploy:latest bin/bash

步骤 4 - 构建和安装

cd /opt/lmdeploy
mkdir -p build && cd build
bash ../generate.sh make
make -j$(nproc) && make install
cd ..
pip install -e .