​Github揽获3k+星!清华开源CogAgent:基于多模态大模型的GUI Agent

发布时间 2024-01-05 17:34:04作者: CV技术指南(公众号)
前言 本文提出了视觉 GUI Agent,使用视觉模态(而非文本)对 GUI 界面进行更全面直接的感知,从而做出规划和决策。对此,我们研发了多模态大模型 CogAgent,可接受 1120×1120 的高分辨率图像输入,不仅提升了通用视觉理解能力,还具备强大的 GUI Agent 能力。

本文转载自PaperWeekly

仅用于学术分享,若侵权请联系删除

欢迎关注公众号CV技术指南,专注于计算机视觉的技术总结、最新技术跟踪、经典论文解读、CV招聘信息。

CV各大方向专栏与各个部署框架最全教程整理

【CV技术指南】CV全栈指导班、基础入门班、论文指导班 全面上线!!

论文名称:CogAgent: A Visual Language Model for GUI Agents

论文链接:

GitHub项目地址(含开源模型、网页版Demo):

CogAgent 是一个通用的视觉理解大模型,具备视觉问答、视觉定位(Grounding)、GUI Agent 等多种能力,在 9 个经典的图像理解榜单上(含 VQAv2,STVQA, DocVQA,TextVQA,MM-VET,POPE 等)取得了通用能力第一的成绩,并在涵盖电脑、手机的GUI Agent数据集上(含 Mind2Web,AITW 等),大幅超过基于 LLM 的 Agent,取得第一。

为了更好地促进多模态大模型、Agent 社区的发展,我们已将 CogAgent-18B 开源至 GitHub 仓库(可商用),并提供了网页版 Demo。欢迎大家体验、使用与反馈!

 

视觉GUI Agent

基于语言预训练模型(LLM)的 Agent 是当下热门的研究话题,具备良好的应用前景。但是,一个严重的问题是,受限于 LLM 的模态,它只能接受语言形式的输入。拿网页 agent 为例,WebAgent [3] 等工作将网页 HTML 连同用户目标(例如 “Can you search for CogAgent on google”)作为 LLM 的输入,从而获得 LLM 对下一步动作的预测(例如点击按钮,输入文本)。

然而,一个有趣的观察是,人类是通过视觉与 GUI 交互的。比如,面对一个网页,当给定一个操作目标时,人类会先观察他的 GUI 界面,然后决定下一步做什么;与此同时,GUI 天然是为了人机交互设计的,相比于 HTML 等文本模态的表征,GUI 更为直接简洁,易于获取有效信息。

也就是说,在 GUI 场景下,视觉是一种更为直接、本质的交互模态,能更高效完整提供环境信息;更进一步地,很多 GUI 界面并没有对应的源码,也难以用语言表示。因此,若能将大模型改进为视觉 Agent,将 GUI 界面以视觉的形式直接输入大模型中用于理解、规划和决策,将是一个更为直接有效、具备极大提升空间的方法。

对此,我们提出了多模态大模型 CogAgent,可以实现基于视觉的 GUI Agent。下图展现了其工作路径与能力。CogAgent 模型同时接受当前 GUI 截图(图像形式)和用户操作目标(文本形式,例如 “search for the best paper in CVPR 2023”)作为输入,就能预测详细的动作,和对应操作元素的位置坐标。

CogAgent 可以应用于包括电脑、手机的各种场景。受益于 GUI Agent 的可泛化性,CogAgent 能在各类没见过的场景与任务上都取得良好的性能。下图是手机场景下的一个例子。论文中展示了更多示例,覆盖了 PPT、手机系统、社交软件、游戏等各类场景。

  • 一个手机系统的例子

 

  • 一个 Google Map 的例子

 

  • 一个原神的例子

 

User:Who are the teammates on the current mission? 当前任务中的队友是谁?
CogAgent:The teammates on the current mission are Raiden Shogun, Bennett, and Kaedehara Kazuha. 当前任务中的队友是Raiden Shogun, Bennett, and Kaedehara Kazuha。
User:I'm looking for guidance on how to "Find out how to view a detailed map"? 我想知道如何“查看详细地图”?
CogAgent:Plan: 1. Identify the map icon on the screen. 2. Click on the map icon to open the detailed map view. 计划:1. 确定屏幕上的地图图标。2. 点击地图图标打开详细地图视图。
Next Action: Move the cursor over the top left corner of the screen and click on the compass-like icon with 'N' inside it. 下一步操作:将光标移动到屏幕左上角,点击内有 “N” 的类似指南针的图标。

 

 

模型结构及训练方法

CogAgent 的模型结构基于 CogVLM [2]。为了使模型具备对高分辨率图片的理解能力,可以看清 ~720p 的 GUI 屏幕输入,我们将图像输入的分辨率大幅提升至 1120×1120(以往的模型通常小于 500×500,包括 CogVLM,Qwen-VL 等)。

然而,分辨率的提升会导致图像序列急剧增长,带来难以承受的计算和显存开销——这也是现有多模态预训练模型通常采用较小分辨率图像输入的原因之一。对此,我们设计了轻量级的“高分辨率交叉注意力模块”,在原有低分辨率大图像编码器(4.4B)的基础上,增加了高分辨率的小图像编码器(0.3B),并使用交叉注意力机制与原有的 VLM 交互。在交叉注意力中,我们也使用了较小的 hidden size,从而进一步降低显存与计算开销。

 

 

结果表明,该方法可以使模型成功理解高分辨率的图片,并有效降低了显存与计算开销。在消融实验中,我们比较了该结构与 CogVLM 原始方法的计算量。结果表明,当分辨率提升时,使用文中提出的方案(with cross-module,橙色)将会带来极少量的计算量增加,并与图像序列的增长成线性关系。

特别的,1120×1120 分辨率的 CogAgent 的计算开销(FLOPs),甚至比 490×490 分辨率的 CogVLM 的 1/2 还要小。在 INT4 单卡推理测试中,1120×1120 分辨率的 CogAgent 模型占用约 12.6GB 的显存,相较于 224×224 分辨率的 CogVLM 仅高出不到 2GB。

在数据方面,除了 CogVLM 用到的 image caption 数据集之外,我们在文本识别、视觉定位、GUI 图像理解方面进行了数据扩充与增强,从而有效提升了 GUI Agent 场景下的性能。CogAgent 的预训练和微调数据的采集、生成方法详细介绍于论文的 2.2 和 2.3 部分。CogAgent 模型的训练 batch size 为 4,608,学习率为 2e-5,共计训练了 6 万迭代步。

 

实验结果

3.1 GUI Agent能力

在电脑、手机等 GUI Agent 的数据集上,CogAgent 具有较大的优势,大幅超过所有基于 LLM 的 Agent:

  • 在网页 Agent 数据集 Mind2Web 上的性能

 

  • 在手机 Agent 数据集 AITW 上的性能

 

3.2 图像理解综合能力

CogAgent 在图像理解的综合能力也有相当的提升,在 9 个经典的图像理解榜单上(含 VQAv2,STVQA, DocVQA,TextVQA,MM-VET,POPE 等)取得了通用能力第一的成绩。

  • 在 VQA 数据集上的通用性能,涵盖常识、OCR、图表、文档等方面:

 

  • 在多模态大模型通用榜单 MM-VET,POPE 上的结果:

 

 

 

彩蛋

一个小彩蛋 :若提问 CogAgent,应该如何给 CogVLM 仓库点星标(作者按:这也是 CogAgent 的仓库),可以将截图和问题 Can you advise me on how to "star cogvlm repo" 输入给模型:

CogAgent 会告诉你具体动作及对应元素的坐标(红框为模型预测坐标对一个的位置):

 

 

欢迎大家体验使用 CogAgent,留下星星与建议~更欢迎大家进行各类有趣的二创!

 

参考文献

[1] Hong, Wenyi, et al. "CogAgent: A Visual Language Model for GUI Agents." arXiv preprint arXiv:2312.08914 (2023).

[2] Wang, Weihan, et al. "Cogvlm: Visual expert for pretrained language models." arXiv preprint arXiv:2311.03079 (2023).

[3] Gur, Izzeddin, et al. "A real-world webagent with planning, long context understanding, and program synthesis." arXiv preprint arXiv:2307.12856 (2023).

 

欢迎关注公众号CV技术指南,专注于计算机视觉的技术总结、最新技术跟踪、经典论文解读、CV招聘信息。

计算机视觉入门1v3辅导班

【技术文档】《从零搭建pytorch模型教程》122页PDF下载

QQ交流群:470899183。群内有大佬负责解答大家的日常学习、科研、代码问题。

其它文章

分享一个CV知识库,上千篇文章、专栏,CV所有资料都在这了

明年毕业,还不知道怎么做毕设的请抓紧机会了

LSKA注意力 | 重新思考和设计大卷积核注意力,性能优于ConvNeXt、SWin、RepLKNet以及VAN

CVPR 2023 | TinyMIM:微软亚洲研究院用知识蒸馏改进小型ViT

ICCV2023|涨点神器!目标检测蒸馏学习新方法,浙大、海康威视等提出

ICCV 2023 Oral | 突破性图像融合与分割研究:全时多模态基准与多交互特征学习

听我说,Transformer它就是个支持向量机

HDRUNet | 深圳先进院董超团队提出带降噪与反量化功能的单帧HDR重建算法

南科大提出ORCTrack | 解决DeepSORT等跟踪方法的遮挡问题,即插即用真的很香

1800亿参数,世界顶级开源大模型Falcon官宣!碾压LLaMA 2,性能直逼GPT-4

SAM-Med2D:打破自然图像与医学图像的领域鸿沟,医疗版 SAM 开源了!

GhostSR|针对图像超分的特征冗余,华为诺亚&北大联合提出GhostSR

Meta推出像素级动作追踪模型,简易版在线可玩 | GitHub 1.4K星

CSUNet | 完美缝合Transformer和CNN,性能达到UNet家族的巅峰!

AI最全资料汇总 | 基础入门、技术前沿、工业应用、部署框架、实战教程学习

计算机视觉入门1v3辅导班

计算机视觉交流群