ShowUI:当前最好的 UI Agent 开源模型?

AITNT-国内领先的一站式人工智能新闻资讯网站
# 热门搜索 #
AITNT-国内领先的一站式人工智能新闻资讯网站 搜索
ShowUI:当前最好的 UI Agent 开源模型?
7030点击    2024-12-06 09:41

Show Lab 和微软推出 ShowUI,这是一个刚刚开源的 UI Agent 模型,在中文 APP 定位和导航能力上表现出色。通过创新的视觉 token 选择和独特的训练数据构建方法,该模型在有限的训练数据下实现了非常棒的性能。


Home[1] | GitHub[2] | Twitter[3] | Youtube[4] | Bilibili[5]


目录:


本文介绍下最近刚刚开源的 UI Agent 模型 ShowUIShowUI 是在 Qwen2-VL-2B 基础上做的 Lora 微调,模型和代码都开源。ShowUI 在中文 App 上的效果应该是当前 UI Agent 开源模型中最好的。

ShowUI 的一些信息:


  • 论文:ShowUI: One Vision-Language-Action Model for GUI Visual Agent[6]
  • Github:https://github.com/showlab/ShowUI
  • 视频介绍:UI Agent 论文分享:ShowUI-当前最好的 UI Agents 开源模型,还适用中文 APP?[7]


接下来介绍 ShowUI 论文中提到的一些关键信息。


论文详解


论文主要包括 3 个大的贡献:


  1. UI-Guided Visual Token Selection:对图片分 patch 后,去掉一些重复的 patch 以降低计算量。可以提速到原来的 1.5 倍,但效果会略降。
  2.  Interleaved Vision-Language-Action Streaming:训练时把多个单步任务拼成多轮对话的形式进行训练,提升效率。navigation 生成动作时不仅使用当前的 UI 截图,也使用前面步骤的 UI 截图(N=2)。
  3. Small-scale High quality GUI Instruction-following Datasets:按指定比例构建高质量预训练数据集。


UI-Guided Visual Token Selection


先把图片划分成指定大小(patch 大小按照基模的配置即可,比如 Qwen2-VL 可以是 28x28)换分成不同的 patch,然后把临近相同颜色的 patch 连成一个Graph。属于同一个 graph 里的 patches 可以认为高度重复,所以训练时就从里面按比例随机抽取一些即可(对于只包含一个 patch 的 graph,抽取时必须包含此 patch),不需要全用。通过这种方式降低代表一个图片所需的 token 数量,提升训练/推理效率。


ShowUI:当前最好的 UI Agent 开源模型?


ShowUI:当前最好的 UI Agent 开源模型?


使用时作者保留抽取出来的每个 patch 的原始 position 位置信息,然后像如下右边那样输入模型即可(作者做了实验发现左边的处理方式效果更差)。


ShowUI:当前最好的 UI Agent 开源模型?


Interleaved Vision-Language-Action Streaming


作者使用了两种组织不同训练数据的方法,对应图中的两种:


  1. Action-Visual:把每一步的截图和动作串起来,图片和动作交织组成一个长序列,训练时只使用动作 tokens 对应的 loss。这样一个任务理论上可以作为一个样本。
  2. Action-Query:对于一些单步性质的任务,比如对应一个截图中的多个元素的 grounding 任务,可以把这些多个单步任务拼成多轮对话的形式进行训练,也就变成上面那种交织的形式了,以便提升训练效率。


ShowUI:当前最好的 UI Agent 开源模型?


作者的结论是这两种训练方式都用的话,效果会更好(见下图黄色曲线):


ShowUI:当前最好的 UI Agent 开源模型?


GUI Instructional Tuning (预训练)


这一步其实就是预训练


ShowUI:当前最好的 UI Agent 开源模型?


Navigation 数据就是来自 GUIAct


Grounding 数据包含了三类数据:


  • Web–visual elements:作者自己收集的数据,包含 22k 的 web 截图,主要是针对 Button 或者 Checkbox 类型的元素。
  • Desktop–diverse query:来自 OmniAct 的 100 张图片,作者说这个数据集质量很高。作者针对其中的 2k 个元素制定了 3 个新的 query:appearance, spatial and intention,获得了 6k 个样本,加上之前的 2k(可能是 grounding),有大概 8k 个样本。这个数据集作者已开源:https://huggingface.co/datasets/showlab/ShowUI-desktop-8K


ShowUI:当前最好的 UI Agent 开源模型?


ShowUI:当前最好的 UI Agent 开源模型?


  • 生成 appearance, spatial & intention query 数据的 Prompt
  • Mobile–Functionality:用的就是 AMEX 数据集。


整个数据集时 256k 个样本,其中 grounding 占一半少一些,navigation 占一半多一些。训练时每个 batch 中通过随机抽样获得,其中 grounding 和 navigation 各占一半,而 grounding 的三类数据同样随机抽样,保证在每个 batch 中它们的占比是 1:1:1


以下是使用不同的数据训练模型后在 Screenspot grounding 测试集上的效果,可见 OmniAct 数据的效果真好。


数据平衡抽样非常重要,它带来了 3.7% 的精度提升。


ShowUI:当前最好的 UI Agent 开源模型?


作者的实验发现,如果控制好采样比例,预训练中加入 navigation 数据并不会降低模型的 grounding 能力。


ShowUI:当前最好的 UI Agent 开源模型?


微调


以下应该是模型在 AITW 数据集上微调后的模型效果。其中的 ShowUI-ZS 应该是没在 AITW 做过微调,而 ShowUI ✝︎ 表示只使用动作历史,但不使用历史的截图。而 ShowUI 则是使用了历史的 2 张截图加上当前的截图。


在使用了历史截图后,ShowUI 获得了更好的效果。


ShowUI:当前最好的 UI Agent 开源模型?


ShowUI:当前最好的 UI Agent 开源模型?


文章来自于“CraftWarmAI”,作者“ Breezedeus”。


ShowUI:当前最好的 UI Agent 开源模型?

关键词: AI , ShowUI , Agengt , 人工智能 , Show Lab
AITNT-国内领先的一站式人工智能新闻资讯网站
AITNT资源拓展
根据文章内容,系统为您匹配了更有价值的资源信息。内容由AI生成,仅供参考
1
AI数据分析

【开源免费】DeepBI是一款AI原生的数据分析平台。DeepBI充分利用大语言模型的能力来探索、查询、可视化和共享来自任何数据源的数据。用户可以使用DeepBI洞察数据并做出数据驱动的决策。

项目地址:https://github.com/DeepInsight-AI/DeepBI?tab=readme-ov-file

本地安装:https://www.deepbi.com/

【开源免费airda(Air Data Agent)是面向数据分析的AI智能体,能够理解数据开发和数据分析需求、根据用户需要让数据可视化。

项目地址:https://github.com/hitsz-ids/airda

2
智能体

【开源免费】AutoGPT是一个允许用户创建和运行智能体的(AI Agents)项目。用户创建的智能体能够自动执行各种任务,从而让AI有步骤的去解决实际问题。

项目地址:https://github.com/Significant-Gravitas/AutoGPT


【开源免费】MetaGPT是一个“软件开发公司”的智能体项目,只需要输入一句话的老板需求,MetaGPT即可输出用户故事 / 竞品分析 / 需求 / 数据结构 / APIs / 文件等软件开发的相关内容。MetaGPT内置了各种AI角色,包括产品经理 / 架构师 / 项目经理 / 工程师,MetaGPT提供了一个精心调配的软件公司研发全过程的SOP。

项目地址:https://github.com/geekan/MetaGPT/blob/main/docs/README_CN.md

3
微调

【开源免费】XTuner 是一个高效、灵活、全能的轻量化大模型微调工具库。它帮助开发者提供一个简单易用的平台,可以对大语言模型(LLM)和多模态图文模型(VLM)进行预训练和轻量级微调。XTuner 支持多种微调算法,如 QLoRA、LoRA 和全量参数微调。

项目地址:https://github.com/InternLM/xtuner

4
prompt

【开源免费】LangGPT 是一个通过结构化和模板化的方法,编写高质量的AI提示词的开源项目。它可以让任何非专业的用户轻松创建高水平的提示词,进而高质量的帮助用户通过AI解决问题。

项目地址:https://github.com/langgptai/LangGPT/blob/main/README_zh.md

在线使用:https://kimi.moonshot.cn/kimiplus/conpg00t7lagbbsfqkq0