UFO²

UFO²

Microsoft · 程式設計 · 其他

UFO² 是微軟為 Windows 打造的開源桌面代理程式,能把自然語言指令化為跨應用程式的工作流程,並混用原生 API 與圖形介面操作。

UFO² 的介面預覽

關於 UFO²

What Is UFO²

UFO² 是微軟研究院推出的開源代理程式平台,在 Windows 上執行。它讀取用日常語言寫下的指令,然後在你的電腦上跨應用程式完成,從 Excel、Outlook 到第三方工具都涵蓋在內。微軟把這種設計稱為桌面 AgentOS,意思是代理程式在系統層運作,而不是綁死在單一程式上的指令碼。

這個專案最初叫 UFO,是以 GPT-4V 為基礎、聚焦介面操作的代理程式,微軟 UFO 的第二代就是 UFO²(有時寫成 UFO2)。進步的地方在於深度。UFO² 不再只靠截圖和滑鼠點擊,而是透過 UI Automation、Win32 與 COM 直接和 Windows 溝通,有原生 API 就呼叫,沒有就退回點擊和鍵盤輸入。微軟表示,這讓它比純視覺的代理程式更快也更穩定,而整個專案以 MIT 授權完全開源。

如果你打算實際使用,有幾個取捨要先知道。UFO² 需要 Python 3.10 以上,並在 Windows 10 以上執行,所以它不是一鍵安裝的消費級應用程式;而且模型的金鑰要自己準備,等於在設定時間之外還多一筆 API 帳單。它是給想自動化自己桌面、也願意動手設定的人用的。

Getting Started

  1. 從 GitHub 複製微軟的 UFO 專案,在 Windows 電腦上用 pip 安裝相依套件
  2. 複製代理程式的設定範本,填入你的 LLM API 金鑰,並挑一個模型,例如 GPT-4o 或某個 Qwen 版本
  3. 啟動應用程式,用日常語言輸入指令,例如把試算表的資料轉成圖表
  4. 觀察 HostAgent 把任務拆成子任務,再由 AppAgent 在正確的程式裡執行

產品資訊

快速了解 UFO² 的定價、支援平台與效能。

免費方案是
付費方案N/A (bring your own LLM API key)
平台Windows
開發者Microsoft
類別程式設計 · 其他
發布日期Apr 2025
最近更新Apr 2025
網站訪問量649.3M
網站全球排名50
API 提供狀態N/A

適合對象

這項工具最適合的使用者、任務與情境。

使用者

  • 開發者與愛動手的人:熟悉複製專案、編輯 YAML 設定、接上 API 金鑰的人,換來的是一個自己能掌控的桌面代理程式
  • 自動化工程師:需要在 Windows 應用程式之間串流程,且偏好原生 API 呼叫、不想依賴脆弱螢幕點擊的團隊
  • 研究人員:正在研究電腦操作代理程式,想要一份真實且開源、還有論文可參考的程式碼來測試與延伸的人
  • IT 與維運人員:想自動化 Windows 上重複性工作(例如在試算表和報表之間搬資料),又不想買整套 RPA 的人

任務

  • 在應用程式之間搬資料:把試算表的數字取出,用一次原生 API 呼叫轉成圖表或簡報,而不是串一連串滑鼠點擊
  • 串接桌面流程:讀取一份文件、摘要它,再草擬一封引用相同來源的郵件,全部放在同一道指令裡
  • 自動化例行事務:處理每週都吃掉時間的檔案、郵件與文件例行步驟
  • 打造自己的代理程式原型:用 AppAgent 框架為某個特殊介面的程式寫專屬幫手
  • 衡量電腦操作表現:讓代理程式對上真實的 Windows 應用程式,和其他代理程式比較成功率與步數

情境

  • 自己會重做的報表:代理程式讀取試算表並產生圖表,省去舊式 RPA 指令碼需要的手動點擊路徑
  • 跨應用程式的指令:從文件取出文字、查一個數字,再把兩者放進訊息裡,全程不必離開座位
  • 謹慎上線:在隔離的子母畫面桌面執行自動化,讓你還能在主螢幕上繼續工作
  • 研究基準:讓新模型和 UFO² 跑同一批 Windows 任務,比較各自需要幾步
  • 量身打造的內部幫手:為自家工具建立 AppAgent,補上現成方案涵蓋不到的部分

主要功能

與 Windows 系統深度整合

UFO² 是在系統層接上 Windows,而不是只透過螢幕。它結合 UI Automation、Win32 與 COM,讀出介面的真實結構,包括哪個控制項是按鈕、哪個是文字框,而不是從一張圖片去猜。微軟拿 Excel 當例子:把表格資料轉成圖表可以是一次 API 呼叫,而傳統 RPA 工具得模擬好幾次滑鼠點擊。正是這種深度讓它配得上 AgentOS 這個稱號。

HostAgent 與 AppAgent 架構

平台把工作分給兩種代理程式。中央的 HostAgent 讀取目標、拆成有順序的子任務、啟動需要的程式,並透過狀態機協調整個執行過程。每個執行中的程式都有自己的 AppAgent,這個專屬幫手熟悉該應用程式的介面、API 與領域知識。這樣的分工讓系統保持模組化:要支援一個新程式,就是加一個 AppAgent,不必改寫核心。

圖形介面與 API 混合執行

UFO² 決定的是怎麼做,不只是做什麼。應用程式有原生 API 時,代理程式就呼叫它,換取速度與準確度;沒有時,就退回滑鼠與鍵盤動作。這種混合做法同時涵蓋標準與非標準介面,而這正是純螢幕代理程式容易失手的地方。差別在於:一種工具只對乖巧的應用程式有效,另一種在介面粗糙時仍能撐住。

混合控制項偵測

可靠地讀懂介面是圖形介面自動化最難的部分,所以 UFO² 把兩種方法合起來用。結構化的控制項交給 Windows UI Automation,UIA 漏掉的則靠視覺解析補上,例如自訂或畫布上繪製的元素。這條混合流程支援標準與非標準介面,微軟把版面不整齊時的穩定性歸功於它。在代理程式動手之前,就是這一層在判斷螢幕上到底有什麼。

推測性多動作規劃

典型代理程式的每一步都代表再跑一趟語言模型,累積起來很可觀。UFO² 把好幾個預測動作綁成一次模型呼叫,並在執行前對照介面的即時狀態驗證。微軟指出,這個做法能減少最多 51% 的查詢,同時壓低延遲與成本。對按 token 付費的人來說,這筆省下的錢是賣點的一部分,不是附註。

持續累積的知識庫

UFO² 在工作時會維持一份可隨時取用的知識庫。它把應用程式的離線文件、線上搜尋、使用者示範與過去的執行軌跡混進向量儲存,即時檢索相關片段。結果是代理程式會倚賴看過的東西,而不是每次都從零開始,就像人靠使用來學會一套軟體。微軟把這視為代理程式能隨時間進步的基礎。

子母畫面桌面

讓代理程式在自己桌面上跑,通常等於失去滑鼠的控制權。在 Windows 上,UFO² 用子母畫面桌面來處理:自動化在隔離的虛擬桌面執行,你仍可繼續使用主螢幕與輸入裝置。微軟在目前文件裡把它列為即將推出,所以它在規劃中、還沒正式上線。等它到來,就能移除人們不敢讓代理程式接管電腦的最大顧慮之一。

優缺點

優點

  • 大部分以 MIT 授權開源,你可以讀程式碼、實際執行,並在上面繼續開發
  • 透過 UIA、Win32 與 COM 呼叫原生 Windows API,比純螢幕點擊更快也更穩定
  • 圖形介面與 API 混合的做法同時涵蓋標準與非標準介面
  • 推測性多動作規劃把模型呼叫減少最多 51%,連帶壓低延遲與成本
  • 背後有微軟研究院的論文,以及一個擁有數千顆星、持續活躍的 GitHub 專案

缺點

  • 需要 Windows 10 以上搭配 Python 3.10 以上,還要手動安裝,不是一鍵就能用的應用程式,也得多花時間設定
  • 模型 API 金鑰要自己準備、呼叫費用自己付,等於多一筆持續支出
  • 能把自動化隔離在主桌面之外的子母畫面,在文件裡仍標示為即將推出
  • 成效取決於各個應用程式揭露控制項的程度,不同程式與介面的結果會有落差

常見問題

UFO² 是微軟研究院為 Windows 推出的開源桌面代理程式。它接收自然語言指令並跨多個應用程式執行,有原生 Windows API 就用,沒有就改用圖形介面動作。微軟把它描述為桌面 AgentOS,而不是綁定單一應用程式的指令碼。