引子 最近在关注多模态大模型,之前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、模型下载 git clone https://www.modelscope.cn/ZhipuAI/glm-4v-9b.git 2、代码下载 git clone https://github.com/THUDM/GLM-4.git 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 哦吼,显存爆了,据传说要32G显存,那老夫就无能为力了。 标签:inputs,torch,GLM,4V,9B,CogVLM,CSDN,CogAgent,True From: https://www.cnblogs.com/nick-algorithmer/p/18252098