前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >为什么 AI 能一句话操作手机和电脑?(GUI Agent 最新综述)

为什么 AI 能一句话操作手机和电脑?(GUI Agent 最新综述)

作者头像
陈宇明
发布2025-02-26 15:13:21
发布2025-02-26 15:13:21
650
举报
文章被收录于专栏:设计模式

来自《Large Language Model-Brained GUI Agents: A Survey》综述总结

这篇文章要解决的问题是如何利用大型语言模型(LLMs)来增强图形用户界面(GUI)自动化代理的能力。具体来说,研究如何通过LLMs的解释复杂GUI元素和基于自然语言指令自主执行动作来实现更智能、更灵活的自动化。

该问题的研究相关工作包括早期的基于脚本或规则的方法、近年来引入的机器学习和计算机视觉技术、以及最近的大型语言模型在GUI自动化中的应用。

利用大型语言模型(LLMs)来增强GUI自动化代理的方法:

  1. 架构和流程:一个基本的LLM驱动GUI代理的架构,包括操作环境、提示工程、模型推理、动作执行和内存管理五个主要组件。操作环境负责感知当前环境状态,提示工程构建输入提示以指导LLM进行推理,模型推理生成计划和动作,动作执行模拟用户操作,内存管理用于跟踪多步骤任务的状态。
  2. 平台特定感知:针对不同平台(移动设备、Web、桌面操作系统),代理使用不同的工具和技术来感知环境状态。例如,移动设备使用Accessibility API,Web使用Selenium,桌面操作系统使用Windows UI Automation。
  3. 提示工程:提示工程是关键步骤,涉及将用户请求、环境状态、可用动作等信息整合成一个结构化的输入提示。公式:Prompt=User Request+Agent Instruction+Environment States+Action Documents+Demonstrated Examples+Complementary Information
  4. 模型推理:模型推理部分将结构化提示输入到LLM中,生成计划和动作。LLM可以生成多种类型的输出,包括规划、动作和补充信息。
  5. 动作执行:动作执行部分将推理结果转化为具体的用户界面操作,如点击、输入文本、滚动等。代理还使用各种工具和技术来增强其操作能力,如API调用和AI工具。

关键问题及回答

问题1:LLM-brained GUI代理在架构和流程上有哪些关键组件?它们各自的作用是什么?

LLM-brained GUI代理的架构包括五个主要组件:操作环境、提示工程、模型推理、动作执行和内存管理。

  1. 操作环境:负责感知当前环境状态,包括通过截图、控件属性和UI元素树等方式获取GUI的视觉和结构信息。
  2. 提示工程:将用户指令和环境数据整合成结构化输入,确保LLMs能够理解任务需求并生成合适的动作。提示包括用户指令、环境状态、动作文档、示范示例和补充信息等。
  3. 模型推理:通过LLMs生成计划和动作。推理过程包括规划和动作推断两个主要步骤。规划部分将长期任务分解为可管理的子任务,并使用链式思维(CoT)等方法进行规划;动作推断部分则将规划结果转化为具体的动作序列。
  4. 动作执行:将推理结果转化为实际的动作,这些动作可以是标准的UI操作、原生API调用或AI工具的使用。通过这些动作,代理能够在GUI环境中执行复杂的任务。
  5. 内存管理:对于多步任务的执行至关重要。短期记忆(STM)用于存储当前任务的相关信息,而长期记忆(LTM)则用于存储历史任务数据和策略。通过内存管理,代理能够在多步任务中保持连续性和一致性。

这些组件共同确保LLM-brained GUI代理能够高效、准确地执行复杂的GUI自动化任务。

问题2:LLM-brained GUI代理在数据收集和预处理方面有哪些具体的方法和步骤?

  1. 数据收集:
  • 用户指令:可以通过人工设计、现有数据集或LLM生成。人工设计的指令需要确保覆盖各种实际应用场景,现有数据集可以提供初始的指令样本,而LLM生成则可以扩展指令的多样性和复杂性。
  • 环境感知:包括GUI截图、控件属性和UI元素树等。截图可以通过屏幕捕捉工具获取,控件属性和UI元素树则可以通过专门的工具和库提取。
  • 任务轨迹:需要记录代理执行任务过程中的每一步操作,包括点击、输入、滚动等,以生成完整的任务轨迹。
  1. 数据预处理:
  • 数据清洗:去除重复、无效或错误的数据,确保数据的准确性和一致性。
  • 去重:识别并消除数据集中的重复项,避免对模型训练造成干扰。
  • 格式化:将数据转换为适合模型训练的格式,如统一的数据结构和编码方式。
  • 数据增强:通过变换、扩充和裁剪等手段增加数据集的多样性和复杂性,提高模型的泛化能力。

通过这些数据收集和预处理步骤,LLM-brained GUI代理能够获得高质量、多样化的训练数据,从而提升其在复杂GUI环境中的表现。

问题3:LLM-brained GUI代理在模型推理和动作执行方面有哪些创新的技术和方法?

  1. 模型推理:
  • 规划和动作推断:将长期任务分解为可管理的子任务,并使用链式思维(CoT)等方法进行规划。动作推断部分则将规划结果转化为具体的动作序列。
  • 多模态处理:结合文本和图像信息,提升模型对复杂GUI环境的理解能力。例如,使用视觉语言模型(VLM)和视觉变换器(ViT)结合文本和图像数据进行推理。
  • 强化学习:通过强化学习优化代理的动作选择和执行策略,特别是在需要多步操作和长期规划的任务中表现优异。
  1. 动作执行:
  • 标准UI操作:包括点击、输入、滚动等基本的用户界面操作。
  • 原生API调用:利用特定应用的API进行更复杂的任务操作,如文件操作、网络请求等。
  • AI工具的使用:集成OCR、图像生成、数据分析等AI工具,提升代理在复杂任务中的表现。例如,使用DALL·E生成图像,使用ChatGPT进行文本生成和问答。

这些创新的技术和方法使得LLM-brained GUI代理能够在复杂多变的GUI环境中实现高效的自动化任务,提升了代理的适应性和智能化水平。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-11-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 码个蛋 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档