CogVLM#

介绍#

CogVLM 是一个强大的开源视觉语言模型 (VLM)。LMDeploy 支持在 PyTorch 引擎中使用 THUDM/cogvlm-chat-hf 等 CogVLM-17B 模型和 THUDM/cogvlm2-llama3-chat-19B 等 CogVLM2-19B 模型。

快速开始#

安装#

通过参考Pytorchinstalling-xformers来安装CogVLM所需的torch、torchvision和xformers

# cuda 11.8
pip install torch==2.2.2 torchvision==0.17.2 xformers==0.0.26 --index-url https://download.pytorch.org/whl/cu118
# cuda 12.1
pip install torch==2.2.2 torchvision==0.17.2 xformers==0.0.26 --index-url https://download.pytorch.org/whl/cu121

按照安装指南安装LMDeploy

准备#

在使用LMDeploy部署CogVLM模型时,需要先下载模型,因为CogVLM模型仓库不包含分词器模型。 然而,对于CogVLM2,这一步则不需要。

CogVLM模型cogvlm-chat-hf为例,您可以按以下方式准备它:

huggingface-cli download THUDM/cogvlm-chat-hf --local-dir ./cogvlm-chat-hf --local-dir-use-symlinks False
huggingface-cli download lmsys/vicuna-7b-v1.5 special_tokens_map.json tokenizer.model tokenizer_config.json --local-dir ./cogvlm-chat-hf --local-dir-use-symlinks False

离线推理管道#

以下示例代码展示了VLM管道的基本用法。更多示例,请参考VLM离线推理管道

from lmdeploy import pipeline
from lmdeploy.vl import load_image


if __name__ == "__main__":
    pipe = pipeline('cogvlm-chat-hf')

    image = load_image('https://raw.githubusercontent.com/open-mmlab/mmdeploy/main/tests/data/tiger.jpeg')
    response = pipe(('describe this image', image))
    print(response)