【论文通读】UFO:A UI-Focused Agent for Windows OS Interaction

2024-03-30 14:28

本文主要是介绍【论文通读】UFO:A UI-Focused Agent for Windows OS Interaction,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

UFO:A UI-Focused Agent for Windows OS Interaction

  • 前言
  • Abstract
  • Motivation
  • Methods
  • Experiment
  • Conclusion

前言

Windows客户端第一个JARVIS,利用GPT4 Vision识别截图信息辅助智能体自动化执行操作,作为微软大肆宣传的一篇工作,其前瞻性还是值得学习的,只不过在实现上博主认为还有很大的改进空间,不过也算是Windows端AI助手的基石工作了。

Paperhttps://arxiv.org/pdf/2402.07939.pdf
Codehttps://github.com/microsoft/UFO
FromarXiv 1 Mar 2024

Abstract

本文提出UFO,一种新颖的以UI为中心的智能体,它利用GPT-Vision的功能满足针对Windows操作系统上的应用程序定制用户的请求。UFO采用双智能体框架来观察和分析Windows下应用的图像化界面和控制信息。这使得智能体能够在各种应用程序内或者跨应用进行操作满足用户的请求。框架集成了一个控制模块,无需人工干预就可以实现自动化操作。UFO将艰巨且耗时的过程转变为仅通过自然语言命令就可以完成的任务。作者在9个流行的windows应用上测试UFO,涵盖了用户日常使用的各种场景。从定性和定量结果表明UFO在满足用户的请求方面的有效性。UFO是目前第一个为Windows操作系统制定的UI智能体。

Motivation

  1. Windows在操作系统所占市场份额大。
  2. Windows端应用丰富,操作复杂,涉及长程计划和多应用交互。
  3. 现有的智能体主要关注于智能手机。

UFO的优势:

  1. 聚焦UI,与Windows操纵系统无缝交互。
  2. 双Agent框架,各司其职。
  3. 无需人工干预,完全自动化,同时也运行用户交互。
  4. 高度可扩展性,可以针对任务和应用程序定制操作和组件。
  5. 根据它们在github上更新的内容来看,RAG似乎加入了最新的UFO中,这有助于进一步提升UFO的能力。

Methods

image.png
UFO结合两个Agent,它们决定选择哪些应用程序和组件来处理用户请求,其中:

  • AppAgent:选择一个正确的应用程序来满足用户的请求。当面临扩应用请求,还可以切换应用程序。
  • ActAgent:动作选择智能体。负责在所选程序上执行动作,直到任务完成。

这两个Agent利用GPT-Vision的多模态功能来理解应用程序UI并满足用户的请求。它们利用一个控制交互模块来确定它们的行动,从而对系统程序进行操作。
image.png
具体来说,UFO为AppAgent提供了完整的桌面截图和一系列可供参考的应用程序,AppAgent从其中选择合适的程序,并制定一个全面的计划来完成请求,然后将计划转交给ActAgent。
image.png
一旦确认了合适的应用程序,程序就会在桌面上显示,接着,ActAgent进行操作完成用户的请求。在每个动作执行之前,UFO会捕获当前应用程序的窗口截图,所有可控组件都会被标注。
ActAgent的任务是选择要操作的控件,基于观察、计划和记忆,通过控件交互模块选择特定控件执行特定操作。执行完毕后,UFO为未来的步骤构建本地计划,并进行到下一个行动选择步骤,这个递归过程会一直持续到用户成功完成任务为止。
在跨应用请求的场景,ActAgent会将任务委托给AppAgent,以便ActAgent完成当前应用程序上任务后切换到另一个应用程序,从而响应下一阶段的请求。
在UFO构建过程中,还应用了如下的一些方法:

  • 用户可以选择交互式引入新的请求,整个过程会迭代持续到用户所有请求完全完成。
  • 为了解决自动化标注会造成截图界面混乱,以及干扰UFO做决策,团队提出双层控制过滤机制,第一层过滤与操作相关度低的组件标注,第二层让UFO动态选择更简洁的控件列表。
  • 任务执行时,真实的状态和预期可能并不一致,因此UFO会在每个决策步骤中不断修改计划,根据需要偏离原始路线。
  • 由于操作系统的敏感性,可能会有一些不可逆的风险操作,为此, UFO会智能评估操作的敏感性,部署相应的防护措施。

Experiment

**数据:**研究团队在9个常用的Windows应用程序上对UFO进行了测试,包括Outlook、Photos、PPT、Word等,涵盖了Windows用户的高频使用场景,能够测试工作、交流、编码、阅读、网页浏览等目的。对于每个请求,团队设计了5个不同的请求,此外还有5个跨应用交互的请求,共50个请求。该数据集也被整理成名为WindowsBench的测试基准。
**评估指标:**从成功度、步骤、完成率和保障率这几个角度来评估UFO。
**baseline:**考虑到没有现成的Windows Agent,团队选择GPT-3.5和GPT-4作为基座模型,并根据它们的指示由人工操作来完成用户请求。
实验结果如下表所示:
image.png
UFO在WindowsBench上成功率达到了86%,远远超过了GPT-4。此外,在执行步骤、完成率和安全度上也是最高的。
最后,从场景角度对WindowsBench的评估结果如下:
image.png

Conclusion

一个在Windows场景的通用智能体,通过两个智能体交互的形式完成用户的指令。其特点是利用GPT-4 Vision的识别能力,模拟人类在Windows系统下操作的行为,这确实特别接近人类对通用AI助手的幻想——即钢铁侠的JARVIS。该工作还有一个亮点是允许用户可选择介入,这对环境实时变化的场景友好。当然,这个工作还是一些不足和值得思考的地方:

  1. 工具需要定制,不具有泛化能力,不过RAG的加入可以一定程度缓解这个问题。
  2. 只能在Windows平台上使用,过于依赖Python工具包pywinauto。
  3. 能不能有更底层的API获取到当前的GUI信息(比如文中提到的Win32 API)?截图方式有些太浅层了,肯定有更底层拿到GUI信息的方法。
  4. 方法依赖GPT4 Vision,如果能够拿到GUI底层信息,是不是就不需要GPT4 Vision也能做?或者内置一个专门的Windows的大模型,能够直接和底层信息交互的那种,这就更像真正的JARVIS了。
  5. UFO运行的效率未知,比如执行一个任务到底需要多长的时间,以及token的开销究竟是多少,毕竟时间成本和token开销成本都是需要考虑的。

这篇关于【论文通读】UFO:A UI-Focused Agent for Windows OS Interaction的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/861728

相关文章

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

AI hospital 论文Idea

一、Benchmarking Large Language Models on Communicative Medical Coaching: A Dataset and a Novel System论文地址含代码 大多数现有模型和工具主要迎合以患者为中心的服务。这项工作深入探讨了LLMs在提高医疗专业人员的沟通能力。目标是构建一个模拟实践环境,人类医生(即医学学习者)可以在其中与患者代理进行医学

论文翻译:arxiv-2024 Benchmark Data Contamination of Large Language Models: A Survey

Benchmark Data Contamination of Large Language Models: A Survey https://arxiv.org/abs/2406.04244 大规模语言模型的基准数据污染:一项综述 文章目录 大规模语言模型的基准数据污染:一项综述摘要1 引言 摘要 大规模语言模型(LLMs),如GPT-4、Claude-3和Gemini的快

论文阅读笔记: Segment Anything

文章目录 Segment Anything摘要引言任务模型数据引擎数据集负责任的人工智能 Segment Anything Model图像编码器提示编码器mask解码器解决歧义损失和训练 Segment Anything 论文地址: https://arxiv.org/abs/2304.02643 代码地址:https://github.com/facebookresear

在 Windows 上部署 gitblit

在 Windows 上部署 gitblit 在 Windows 上部署 gitblit 缘起gitblit 是什么安装JDK部署 gitblit 下载 gitblit 并解压配置登录注册为 windows 服务 修改 installService.cmd 文件运行 installService.cmd运行 gitblitw.exe查看 services.msc 缘起

Windows如何添加右键新建菜单

Windows如何添加右键新建菜单 文章目录 Windows如何添加右键新建菜单实验环境缘起以新建`.md`文件为例第一步第二步第三步 总结 实验环境 Windows7 缘起 因为我习惯用 Markdown 格式写文本,每次新建一个.txt后都要手动修改为.md,真的麻烦。如何在右键新建菜单中添加.md选项呢? 网上有很多方法,这些方法我都尝试了,要么太麻烦,要么不凑效

Windows下Nginx的安装及开机启动

1、将nginx-1.16.1.zip解压拷贝至D:\web\nginx目录下。 2、启动Nginx,两种方法: (1)直接双击nginx.exe,双击后一个黑色的弹窗一闪而过。 (2)打开cmd命令窗口,切换到nginx目录下,输入命令 nginx.exe 或者 start nginx ,回车即可。 3、检查nginx是否启动成功。 直接在浏览器地址栏输入网址 http://lo

论文翻译:ICLR-2024 PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS

PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS https://openreview.net/forum?id=KS8mIvetg2 验证测试集污染在黑盒语言模型中 文章目录 验证测试集污染在黑盒语言模型中摘要1 引言 摘要 大型语言模型是在大量互联网数据上训练的,这引发了人们的担忧和猜测,即它们可能已

OmniGlue论文详解(特征匹配)

OmniGlue论文详解(特征匹配) 摘要1. 引言2. 相关工作2.1. 广义局部特征匹配2.2. 稀疏可学习匹配2.3. 半稠密可学习匹配2.4. 与其他图像表示匹配 3. OmniGlue3.1. 模型概述3.2. OmniGlue 细节3.2.1. 特征提取3.2.2. 利用DINOv2构建图形。3.2.3. 信息传播与新的指导3.2.4. 匹配层和损失函数3.2.5. 与Super

BERT 论文逐段精读【论文精读】

BERT: 近 3 年 NLP 最火 CV: 大数据集上的训练好的 NN 模型,提升 CV 任务的性能 —— ImageNet 的 CNN 模型 NLP: BERT 简化了 NLP 任务的训练,提升了 NLP 任务的性能 BERT 如何站在巨人的肩膀上的?使用了哪些 NLP 已有的技术和思想?哪些是 BERT 的创新? 1标题 + 作者 BERT: Pre-trainin