微软首个为Windows而设的智能体(Agent) 亮相,基于GPT-4V,一句话就可以在多个应用中无缝切换,完成复杂任务。整个过程无需人为干预,其执行成功率和效率是GPT-4的两倍,GPT-3.5的四倍。

这样一个智能体叫做UFO,全名“UI-Focused”,是一个专为Windows OS(操作系统)交互设计、面向用户界面(UI)的智能体框架,可以在单个或者多个应用程序中操作,由MSRA、微软AI与应用研究团队等共同打造。用户就可以通过自然语言指令,来操作App的用户界面。
20180619-overview_n.png

UFO Image作为一个双代理框架运行,包括:

  • AppAgent, 其任务是选择用于满足用户请求的应用程序。当请求跨越多个应用程序,并且任务在前一个应用程序中部分完成时,此代理也可以切换到不同的应用程序。
  • ActAgent, 负责在所选应用程序上迭代执行动作,直到在特定应用程序内成功完成任务。
  • 控件交互, 其任务是将来自AppAgent和ActAgent的操作转换为与应用程序及其UI控件的交互。目标控件必须与Windows UI Automation API兼容。

这两个代理都利用GPT Vision的多模式功能来理解应用程序UI并满足用户的请求。

在收到用户请求后,AppAgent会对需求进行分析。除此之外,还有这些信息作为输入:桌面截图、App信息、记忆以及示例。其中,UFO为AppAgent提供了完整的桌面截图和可用应用程序列表以供参考。
然后从当前激活的应用程序中选择一个合适的应用程序,并制定一个全局实现计划,将其传递给ActAgent。
一旦找到合适的应用程序,App就会出现在桌面上。随后ActAgent启动操作。
在每个操作选择之前,UFO都会捕获当前应用程序用户界面窗口的屏幕截图,并标注所有可用控件。此外,UFO还记录了每个控件的相关信息,供 ActAgent观察。
ActAgent的任务是选择要操作的控件,然后通过控件交互模块选择要在所选控件上执行的特定操作。

这一决定是基于 ActAgent 的观察结果、先前计划和操作记忆做出的。这个递归过程一直持续到用户请求在所选应用程序中成功完成为止。至此,用户请求的一个阶段结束。

如果需要跨越多个应用程序,那么在ActAgent 完成当前任务之后,ActAgent 将把任务委托给 AppAgent,以便切换到不同的应用程序,从而启动请求的第二阶段。

用户可以选择提出新的请求,促使 UFO 通过重复上述过程来处理新任务。

研究团队依据日常鼠标操作,还开发了自定义操作,比如单击、选择文本、滚动等,以此来完成对于控件的操作。

源码:https://github.com/microsoft/UFO
论文:https://arxiv.org/abs/2402.07939