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

相关推荐
Fine姐4 分钟前
数据挖掘3.6~3.10 支持向量机—— 核化SVM
算法·支持向量机·数据挖掘
万邦科技Lafite33 分钟前
利用淘宝开放API接口监控商品状态,掌握第一信息
大数据·python·电商开放平台·开放api接口·淘宝开放平台
野渡拾光1 小时前
【考研408数据结构-05】 串与KMP算法:模式匹配的艺术
数据结构·考研·算法
Hy行者勇哥2 小时前
Python 与 VS Code 结合操作指南
开发语言·python
大力水手(Popeye)3 小时前
Pytorch——tensor
人工智能·pytorch·python
tainshuai4 小时前
用 KNN 算法解锁分类的奥秘:从电影类型到鸢尾花开
算法·分类·数据挖掘
飞翔的佩奇7 小时前
【完整源码+数据集+部署教程】表盘指针检测系统源码和数据集:改进yolo11-CA-HSFPN
python·yolo·计算机视觉·数据集·yolo11·表盘指针检测
larance7 小时前
SQLAlchemy 的异步操作来批量保存对象列表
数据库·python
搏博8 小时前
基于Python3.10.6与jieba库的中文分词模型接口在Windows Server 2022上的实现与部署教程
windows·python·自然语言处理·flask·中文分词
lxmyzzs9 小时前
pyqt5无法显示opencv绘制文本和掩码信息
python·qt·opencv