CogVLM/CogAgent环境搭建&推理测试

引子

对于多模态大语言模型,一直没有怎么接触。刚巧一朋友有问到这方面的问题,也就顺手调研下。智谱AI的东西一直以来,还是很不错的。ChatGLM的忠实fans,看到白嫖网站github上有他们开源的多模态CogVLM/CogAgent,那就顺手看看了。OK,让我们开始吧。

一、模型介绍

CogVLM 是一个强大的开源视觉语言模型(VLM)。CogVLM-17B拥有100亿的视觉参数和70亿的语言参数,支持490*490分辨率的图像理解和多轮对话。CogVLM-17B 17B在10个经典的跨模态基准测试中取得了最先进的性能包括NoCaps, Flicker30k captioning, RefCOCO, RefCOCO+, RefCOCOg, Visual7W, GQA, ScienceQA, VizWiz VQA 和 TDIUC 基准测试。

CogAgent 是一个基于CogVLM改进的开源视觉语言模型。CogAgent-18B拥有110亿的视觉参数和70亿的语言参数, 支持1120*1120分辨率的图像理解。在CogVLM的能力之上,它进一步拥有了GUI图像Agent的能力。CogAgent-18B 在9个经典的跨模态基准测试中实现了最先进的通用性能,包括 VQAv2, OK-VQ, TextVQA, ST-VQA, ChartQA, infoVQA, DocVQA, MM-Vet, 和 POPE 测试基准。它在包括AITW和Mind2Web在内的GUI操作数据集上显著超越了现有的模型。

嗯哼,这么官方的语句,显然是我抄的。言而总之,总而言之,就是这个Cog确实很厉害的样子,各种数据集上的翘楚。

二、安装环境

docker run -it --rm --gpus=all -v /datas/work/zzq:/workspace pytorch/pytorch:2.2.2-cuda12.1-cudnn8-devel bash

cd /workspace

git clone GitHub - THUDM/CogVLM: a state-of-the-art-level open visual language model | 多模态预训练模型

cd CogVLM

pip install -r requirements.txt -i Simple Index

三、推理测试

1、模型下载

git clone https://code.openxlab.org.cn/THUDM/cogagent-chat-hf.git

git clone https://code.openxlab.org.cn/THUDM/cogvlm-chat-hf.git

https://huggingface.co/lmsys/vicuna-7b-v1.5/tree/main

vicuna-7b模型放在basic_demo目录下

2、cogagent测试

cd basic_demo

(1)vlm测试

python cli_demo_hf.py --from_pretrained /workspace/CogVLM/CogVLM/cogvlm-chat-hf --fp16

显存不够,报错

python cli_demo_hf.py --from_pretrained /workspace/CogVLM/CogVLM/cogvlm-chat-hf --quant 4

显存占用

输入图片

测试结果

(2)agent测试

python cli_demo_hf.py --from_pretrained /workspace/CogVLM/CogVLM/cogagent-chat-hf --quant 4

相关推荐
AI街潜水的八角9 分钟前
基于C++的决策树C4.5机器学习算法(不调包)
c++·算法·决策树·机器学习
q5673152326 分钟前
在 Bash 中获取 Python 模块变量列
开发语言·python·bash
是萝卜干呀27 分钟前
Backend - Python 爬取网页数据并保存在Excel文件中
python·excel·table·xlwt·爬取网页数据
代码欢乐豆28 分钟前
数据采集之selenium模拟登录
python·selenium·测试工具
白榆maple34 分钟前
(蓝桥杯C/C++)——基础算法(下)
算法
JSU_曾是此间年少38 分钟前
数据结构——线性表与链表
数据结构·c++·算法
狂奔solar1 小时前
yelp数据集上识别潜在的热门商家
开发语言·python
Tassel_YUE1 小时前
网络自动化04:python实现ACL匹配信息(主机与主机信息)
网络·python·自动化
聪明的墨菲特i1 小时前
Python爬虫学习
爬虫·python·学习
此生只爱蛋2 小时前
【手撕排序2】快速排序
c语言·c++·算法·排序算法