CogVLM/CogAgent环境搭建&推理测试-CSDN博客

引子
最近在关注多模态大模型,之前4月份的时候关注过CogVLM(https://blog.csdn.net/zzq1989_/article/details/138337071?spm=1001.2014.3001.5501)。模型整体表现还不错,不过不支持中文。智谱AI刚刚开源了GLM-4大模型,套餐里面包含了GLM-4V-9B大模型,模型基于 GLM-4-9B 的多模态模型 GLM-4V-9B。GLM-4V-9B 具备 1120 * 1120 高分辨率下的中英双语多轮对话能力,在中英文综合能力、感知推理、文字识别、图表理解等多方面多模态评测中,GLM-4V-9B 表现出超越 GPT-4-turbo-2024-04-09、Gemini 1.0 Pro、Qwen-VL-Max 和 Claude 3 Opus 的卓越性能。嗯,,,很厉害 ,OK,那就让我们开始吧。
一、环境搭建
1、模型下载
2、代码下载
3、安装环境
docker run -it -v /datas/work/zzq/:/workspace --gpus=all pytorch/pytorch:2.0.1-cuda11.7-cudnn8-devel bash
cd /workspace/GLM-4V/GLM-4/composite_demo
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
二、代码运行
1、官方代码运行
import torch
from PIL import Image
from transformers import AutoModelForCausalLM, AutoTokenizer

device = "cuda"

tokenizer = AutoTokenizer.from_pretrained("model/glm-4v-9b", trust_remote_code=True)

query = '描述这张图片'
image = Image.open("longbench.png").convert('RGB')
inputs = tokenizer.apply_chat_template([{"role": "user", "image": image, "content": query}],
                                       add_generation_prompt=True, tokenize=True, return_tensors="pt",
                                       return_dict=True)  # chat mode

inputs = inputs.to(device)
model = AutoModelForCausalLM.from_pretrained(
    "model/glm-4v-9b",
    torch_dtype=torch.bfloat16,
    low_cpu_mem_usage=True,
    trust_remote_code=True
).to(device).eval()

gen_kwargs = {"max_length": 2500, "do_sample": True, "top_k": 1}
with torch.no_grad():
    outputs = model.generate(**inputs, **gen_kwargs)
    outputs = outputs[:, inputs['input_ids'].shape[1]:]
    print(tokenizer.decode(outputs[0]))

 

python glm-4v_test_demo.py
0
哦吼,显存爆了,据传说要32G显存,那老夫就无能为力了。
posted @ 2024-06-17 11:51  要养家的程序猿  阅读(73)  评论(0编辑  收藏  举报