為什麼現在必須理解 Computer Use Agents
2024 年末到 2025 年,AI Agent 從「對話式助手」開始向「操作式代理」進化。 Computer Use Agents(簡稱 CUA)是其中最激進的一支 —— 它不再只回答你,而是直接替你操作電腦:打開瀏覽器、填寫表單、點擊按鈕、讀取螢幕截圖、滾動頁面。
如果你維護過UI自動化測試,或寫過 Playwright 腳本,你會立刻察覺這有多「不可能」:傳統自動化依賴固定選擇器,一旦 DOM 結構變化就斷裂。 而 CUA 的做法是純粹基於視覺理解 + 座標點擊,完全跳過前端框架細節。
這輪熱度並非炒作。 OpenAI 在 2024 年 12 月發佈了 Computer Use 參考實現,Anthropic 的 Claude 3.5 Sonnet 也內置了類似能力,Hugging Face 上湧現了大量基於 SmolVLM 的桌面操控微調模型。 問題不再是「能不能做」,而是「在生產中能可靠到什麼程度」。
它到底解決什麼工程問題
最直接的場景是遺留系統操作。 很多企業內部系統沒有 API 介面,只有 Web 或桌面 GUI。 傳統方案要麼寫脆弱的 Selenium 腳本,要麼雇人手動操作。 CUA 提供了第三路徑:用自然語言描述操作目標,由 Agent 通過截圖識別元素、執行點擊和輸入來回任務。
例如一個典型的「報銷流程自動錄入」場景:使用者說「打開 OA 系統,登錄,進入報銷模組,上傳附件並提交」,CUA 會依次完成。 每一步失敗(比如找不到附件按鈕)會重試或報錯。
另一個實際場景是多工具數據搬運。 例如從 PDF 中提取表格,粘貼到 Excel 中,再發郵件。 傳統方法需要解析 PDF 格式再調用 Excel API,而 CUA 可以像人一樣複製粘貼。

最容易翻車的地方
1. 螢幕解析度與布局變化
如果你換顯示器或調整視窗大小,CUA 看到的截圖和座標就偏離了訓練數據分佈。 同一個按鈕,在1920x1080和2560x1440下位置不同。 這不是小問題 —— 我見過一個 CUA 在 4K 屏上連續點錯三個按鈕,因為座標偏移了 30 圖元。
2. 模態對話框與意外彈窗
瀏覽器突然彈出「瀏覽器崩潰」對話框、系統提示「更新可用」、許可權請求彈窗...... 這些在人工操作時是瞬間處理的,但對 CUA 它可能被彈窗擋住目標按鈕,然後陷入「點擊→彈窗→再次點擊→新彈窗」的迴圈。
3. 操作速度與可靠性衝突
為了確保截圖穩定,CUA 需要在每次操作後等待畫面靜置,然後截取新幀。 這導致一個簡單操作(點擊→彈功能表→選擇一項)可能要 5-8 秒。 如果操作鏈有 20 步,延遲就到了分鐘級。 使用者往往在等 30 秒後手動接管。
4. 有限的動作空間
當前 CUA 基本只能實現:點擊、拖拽、鍵盤輸入、滑鼠滾輪。 它不能識別「當前登錄使用者是誰」或「上傳檔是否被系統策略阻止」。 遇到許可權不足、文件覆蓋提示等對話框,Agent 看不懂英文消息含義,只會機械點擊「Cancel」或「OK」。

如果你現在要落地,第一步怎麼做
不要從關鍵任務開始。 選定一個高頻但低風險的操作腳本,比如自動生成週報截圖併發送。
具體步驟:
- 固定環境:在虛擬機或 Docker 容器中運行 CUA,確保每次啟動時的桌面解析度、瀏覽器版本、視窗佈局一致。 使用 Wayland 或 Xvfb 虛擬顯示器避免物理環境干擾。
- 操作腳本化,而非自然語言化:先用 Claude 或 GPT 寫一段 Python 調用,通過函數定義每一步操作,而不是直接讓 Agent 自由發揮。 例如
def click_login_button(): screenshot = capture(); button_region = find_by_text(screenshot, '登录'); mouse_click(button_region.center_x, button_region.center_y)。 - 添加防彈窗邏輯:在每次操作前,先全屏截圖並檢測是否有對話框(通過 OCR 識別固定關鍵詞如 'Error', 'Warning', 'Update'),若有則先關閉它。
- 設置超時與回滾:單步操作超過 10 秒未完成則中止並記錄快照。 整體任務失敗時恢復到初始截圖狀態。
替代方案與何時放棄 CUA
如果你對穩定性要求高(金融、醫療、生產環境),目前 CUA 不適合作為主力。 替代方案:
- 有 API 的系統優先用 API 調用,哪怕是包裝 Shell 腳本。
- 對於 Web 應用,使用 Playwright 的視覺定位(locator 基於截圖匹配)比 CUA 更可控。
- 若必須桌面操作,考慮 RPA 工具(如 UiPath),它們基於控件樹定位,視窗變化時沒那麼容易斷。
放棄 CUA 的信號:單步操作失敗率超過 15%,或使用者需要每天糾正多於 3 次。 此時應退回傳統自動化或人工處理。
下一步系統化學習
本文只是工程第一站。 如果你希望從零掌握 Agent 設計、上下文管理、MCP 協定與生產級迴圈,推薦進入更系統的原創付費文章與課程:你會學到如何構建可恢復的長鏈操作 Agent,如何處理失敗重試與狀態持久化,以及何時不該用 Agent 而該用更簡單的規則。

暫無評論,快來發表你的看法吧