始智AI wisemodel.cn开源社区
模型基座与结构升级: 采用更强大的视觉语言模型GLM-4V-9B作为基座,显著提升了模型的图像理解性能。
视觉处理模块优化: 实现了更高效、统一的视觉处理模块,支持1120*1120原生高分辨率图像输入。通过带参数的下采样方法,在几乎不损失模型能力的前提下,提高了模型效率。CogAgent在结构上支持任意比例或大小的图像输入。
但在训练和推理中,统一将输入图像缩放到1120*1120。尽管输入图像尺寸固定,测试结果显示,即使在2K或更高分辨率的屏幕上,模型仍能保持准确的理解能力。为获得更佳表现,建议用户适当增加图标和文字的相对大小,确保缩放后截图中的内容清晰可辨。
数据集丰富与完善: 广泛收集并整合了多种数据集,包括无监督数据和GUI指令微调数据集。无监督数据涵盖开源GUI布局数据集、自采集的应用和网页数据集;GUI指令微调数据集则包含更长链路、更多应用、跨应用的GUI agent任务数据集等。此外,利用CogAgent自我生成数据,进一步扩充和完善了数据集。
GUI Referring Expression Generation (REG):预测截图上某一区域对应的布局表征。 GUI Referring Expression Comprehension (REC):预测截图中某一元素对应的位置。此方法已应用于多个GUI理解数据构造和GUI agent工作中。在原论文中,我们使用40万网页数据,构造了1.4亿的REC & REG训练样本。在此基础上,进一步扩充和优化了训练数据,加入了桌面应用和移动应用的布局数据,使模型更适应实际应用场景。
后训练策略改进: 后训练在提升模型GUI agent分析、推理、预测能力方面至关重要。我们采用了更科学的后训练策略,分为两个难度递进的阶段:
GUI instruction tuning:融合GUI相关多任务数据,深化模型对GUI内容和功能的理解,具备初步问答能力。使用了广泛的开源数据和私有收集数据。 GUI agent SFT:使模型具备完善的GUI agent推理能力,训练数据包括开源数据集(如Mind2Web)和额外收集的多平台跨应用数据。
CogAgent以GUI截图为唯一环境输入,结合已完成的动作历史,计算当前 GUI 截图中最合适的动作。该动作通过 CogAgent 端侧应用(如GLM-PC 和 CogAgent Demo App)注入GUI,GUI响应并更新图像内容;同时,该动作被添加至动作历史。CogAgent根据更新后的历史动作和截图,计算后续操作。此过程循环往复,直至 CogAgent判定指令执行完毕。
CogAgent 的输入仅包含三部分:用户的自然语言指令、已执行历史动作记录和 GUI 截图,无需任何文本形式表征的布局信息或附加元素标签(set of marks)信息。其输出涵盖以下四个方面:
思考过程(Status & Plan): CogAgent 显式输出理解 GUI 截图和决定下一步操作的思考过程,包括状态(Status)和计划(Plan)两部分,输出内容可通过参数控制。
下一步动作的自然语言描述(Action): 自然语言形式的动作描述将被加入历史操作记录,便于模型理解已执行的动作步骤。
下一步动作的结构化描述(Grounded Operation):CogAgent以类似函数调用的形式,结构化地描述下一步操作及其参数,便于端侧应用解析并执行模型输出。其动作空间包含 GUI 操作(基础动作,如左键单击、文本输入等)和拟人行为(高级动作,如应用启动、调用语言模型等)两类。
在以下四个数据集中,CogAgent-9B-20241220和类似模型的性能进行了测试。
Screenspot。Screenspot 衡量模型进行 GUI 元素定位的能力。
OmniAct。我们衡量下表中所有模型在 OmniAct 任务中第一步操作的准确率,即使OmniAct 任务可能需要多步操作才能完成。这是因为 OmniAct 没有提供每一步操作之后的屏幕截图。
CogAgentBench-basic-cn。这是自行收集并内部使用的中文测试集,每个测试样本是完成一条指令过程中的一个步骤,测试样本的输入与 CogAgent 所接收的输入相同。值得注意的是,在给定相同的截图、用户指令、历史操作的情况下,可能会有多个正确的输入,例如点击“发送”按钮和按下回车键都可以发送消息。人工为每一条测试样本标记出所有可能的正确输出。CogAgentBench-basic-cn包含了 147 个任务对应的 1100 个步骤,涉及微信、淘宝、小红书、12306、携程等常见中文应用和网站。表格中的数字为单步操作的正确率。
OSworld。表格中的数字为多步任务的完成率。
编辑:成蕴年