
關於 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
- 從 GitHub 複製微軟的 UFO 專案,在 Windows 電腦上用 pip 安裝相依套件
- 複製代理程式的設定範本,填入你的 LLM API 金鑰,並挑一個模型,例如 GPT-4o 或某個 Qwen 版本
- 啟動應用程式,用日常語言輸入指令,例如把試算表的資料轉成圖表
- 觀察 HostAgent 把任務拆成子任務,再由 AppAgent 在正確的程式裡執行
產品資訊
快速了解 UFO² 的定價、支援平台與效能。
適合對象
這項工具最適合的使用者、任務與情境。
使用者
- 開發者與愛動手的人:熟悉複製專案、編輯 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,而不是綁定單一應用程式的指令碼。
相關內容
探索與 UFO² 相關的工具、技能與文章。
UFO² 替代方案
Base Code
Base44 (Wix) · 程式設計 · 生產力Base Code 是 Base44 推出的共享雲端開發環境。團隊在對話中描述對既有 GitHub 儲存庫的修改,看著預覽確認結果,再以 Pull Request 交回工程團隊。
Google EmbeddingGemma 2
Google DeepMind · 寫作 · 圖片 · 程式設計Google EmbeddingGemma 2 是 7.4 億參數的開源模型,能把文字、程式碼、圖片、音訊與影片畫面轉成同一個 768 維空間裡的向量,在手機與筆電上就能執行。
GitGlow
GitGlow · 程式設計 · 生產力GitGlow 是桌面版 Git 用戶端,把你自己的程式碼與 AI 代理程式的變更集中在同一份審查裡,讓你在交付前看清楚機器上究竟要送出什麼。

