為什么 AI 能一句話操作手機和電腦?(GUI Agent 最新綜述)

0 評論 1061 瀏覽 0 收藏 9 分鐘

隨著人工智能技術的不斷進步,大型語言模型(LLMs)正在改變我們與圖形用戶界面(GUI)的互動方式。本文綜述了如何利用LLMs增強GUI自動化代理的能力,通過自然語言指令實現對手機和電腦的智能操作。這種技術的發展不僅提高了自動化的靈活性和智能性,還為GUI自動化領域帶來了新的研究方向和應用前景。

來自《Large Language Model-Brained GUI Agents: A Survey》綜述總結

這篇文章要解決的問題是如何利用大型語言模型(LLMs)來增強圖形用戶界面(GUI)自動化代理的能力。具體來說,研究如何通過LLMs的解釋復雜GUI元素和基于自然語言指令自主執行動作來實現更智能、更靈活的自動化。

該問題的研究相關工作包括早期的基于腳本或規則的方法、近年來引入的機器學習和計算機視覺技術、以及最近的大型語言模型在GUI自動化中的應用。

利用大型語言模型(LLMs)來增強GUI自動化代理的方法:

架構和流程:一個基本的LLM驅動GUI代理的架構,包括操作環境、提示工程、模型推理、動作執行和內存管理五個主要組件。操作環境負責感知當前環境狀態,提示工程構建輸入提示以指導LLM進行推理,模型推理生成計劃和動作,動作執行模擬用戶操作,內存管理用于跟蹤多步驟任務的狀態。

平臺特定感知:針對不同平臺(移動設備、Web、桌面操作系統),代理使用不同的工具和技術來感知環境狀態。例如,移動設備使用Accessibility API,Web使用Selenium,桌面操作系統使用Windows UI Automation。

提示工程:提示工程是關鍵步驟,涉及將用戶請求、環境狀態、可用動作等信息整合成一個結構化的輸入提示。公式:Prompt=User Request+Agent Instruction+Environment States+Action Documents+Demonstrated Examples+Complementary Information

模型推理:模型推理部分將結構化提示輸入到LLM中,生成計劃和動作。LLM可以生成多種類型的輸出,包括規劃、動作和補充信息。

動作執行:動作執行部分將推理結果轉化為具體的用戶界面操作,如點擊、輸入文本、滾動等。代理還使用各種工具和技術來增強其操作能力,如API調用和AI工具。

關鍵問題及回答

問題1:LLM-brained GUI代理在架構和流程上有哪些關鍵組件?它們各自的作用是什么?

LLM-brained GUI代理的架構包括五個主要組件:操作環境、提示工程、模型推理、動作執行和內存管理。

操作環境:負責感知當前環境狀態,包括通過截圖、控件屬性和UI元素樹等方式獲取GUI的視覺和結構信息。

提示工程:將用戶指令和環境數據整合成結構化輸入,確保LLMs能夠理解任務需求并生成合適的動作。提示包括用戶指令、環境狀態、動作文檔、示范示例和補充信息等。

模型推理:通過LLMs生成計劃和動作。推理過程包括規劃和動作推斷兩個主要步驟。規劃部分將長期任務分解為可管理的子任務,并使用鏈式思維(CoT)等方法進行規劃;動作推斷部分則將規劃結果轉化為具體的動作序列。

動作執行:將推理結果轉化為實際的動作,這些動作可以是標準的UI操作、原生API調用或AI工具的使用。通過這些動作,代理能夠在GUI環境中執行復雜的任務。

內存管理:對于多步任務的執行至關重要。短期記憶(STM)用于存儲當前任務的相關信息,而長期記憶(LTM)則用于存儲歷史任務數據和策略。通過內存管理,代理能夠在多步任務中保持連續性和一致性。

這些組件共同確保LLM-brained GUI代理能夠高效、準確地執行復雜的GUI自動化任務。

問題2:LLM-brained GUI代理在數據收集和預處理方面有哪些具體的方法和步驟?

數據收集:

用戶指令:可以通過人工設計、現有數據集或LLM生成。人工設計的指令需要確保覆蓋各種實際應用場景,現有數據集可以提供初始的指令樣本,而LLM生成則可以擴展指令的多樣性和復雜性。

環境感知:包括GUI截圖、控件屬性和UI元素樹等。截圖可以通過屏幕捕捉工具獲取,控件屬性和UI元素樹則可以通過專門的工具和庫提取。

任務軌跡:需要記錄代理執行任務過程中的每一步操作,包括點擊、輸入、滾動等,以生成完整的任務軌跡。

數據預處理:

數據清洗:去除重復、無效或錯誤的數據,確保數據的準確性和一致性。

去重:識別并消除數據集中的重復項,避免對模型訓練造成干擾。

格式化:將數據轉換為適合模型訓練的格式,如統一的數據結構和編碼方式。

數據增強:通過變換、擴充和裁剪等手段增加數據集的多樣性和復雜性,提高模型的泛化能力。

通過這些數據收集和預處理步驟,LLM-brained GUI代理能夠獲得高質量、多樣化的訓練數據,從而提升其在復雜GUI環境中的表現。

問題3:LLM-brained GUI代理在模型推理和動作執行方面有哪些創新的技術和方法?

模型推理:

規劃和動作推斷:將長期任務分解為可管理的子任務,并使用鏈式思維(CoT)等方法進行規劃。動作推斷部分則將規劃結果轉化為具體的動作序列。

多模態處理:結合文本和圖像信息,提升模型對復雜GUI環境的理解能力。例如,使用視覺語言模型(VLM)和視覺變換器(ViT)結合文本和圖像數據進行推理。

強化學習:通過強化學習優化代理的動作選擇和執行策略,特別是在需要多步操作和長期規劃的任務中表現優異。

動作執行:

標準UI操作:包括點擊、輸入、滾動等基本的用戶界面操作。

原生API調用:利用特定應用的API進行更復雜的任務操作,如文件操作、網絡請求等。

AI工具的使用:集成OCR、圖像生成、數據分析等AI工具,提升代理在復雜任務中的表現。例如,使用DALL·E生成圖像,使用ChatGPT進行文本生成和問答。

這些創新的技術和方法使得LLM-brained GUI代理能夠在復雜多變的GUI環境中實現高效的自動化任務,提升了代理的適應性和智能化水平。

本文由人人都是產品經理作者【陳宇明】,微信公眾號:【碼個蛋】,原創/授權 發布于人人都是產品經理,未經許可,禁止轉載。

題圖來自Unsplash,基于 CC0 協議。

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 目前還沒評論,等你發揮!