Smol2Operator 釋出:將小型 VLM 轉變為開源的代理式 GUI 程式設計師

TL;DR

Smol2Operator 引入了一套後訓練配方,將輕量級視覺語言模型 SmolVLM2‑2.2B‑Instruct 轉變為能感知並與圖形使用者介面互動的代理式 GUI 程式設計師,且所有程式碼、資料與最終模型皆以開源方式釋出。


介紹 – 小型 VLM 也能成為 GUI 代理

Hugging Face 團隊示範,一個最初沒有任何 GUI 基礎的 2.2 B 參數視覺語言模型,透過兩階段的監督式微調管線,可被轉換成可運作的 GUI 代理。最終成果 smolagents/SmolVLM2‑2.2B‑Instruct‑Agentic‑GUI 能定位 UI 元素、產生低階動作(點擊、輸入、捲動),並在螢幕截圖上執行多步推理。將完整的訓練配方、資料處理工具與最終模型開源,提升可重現性,並鼓勵對輕量級 GUI 代理的進一步研究。


1. 統一行動空間 – 標準化異質 GUI 資料集

不一致行動格式的問題

現有的 GUI 自動化資料集使用不同的函式簽名、命名慣例與座標系統,導致單一模型無法跨資料集學習。

統一的解決方案

作者構建了一條轉換管線,能解析任何函式呼叫、正規化參數順序,並將所有行動映射至共用 API。主要組件包括:

  • utils/function_parser.py – 從原始文字中提取並正規化函式呼叫。
  • preprocessing/action_conversion.py – 將行動手機與 PyAutoGUI 的動作轉換為統一集合(例如 clickdouble_clicktype)。
  • 正規化座標(0‑1 範圍)取代像素值,確保不同影像解析度間的一致性。

範例轉換

# Original
pyautogui.click(x=0.8102, y=0.9463)
mobile.swipe(from_coord=[0.581, 0.898], to_coord=[0.601, 0.518])

# Unified
click(x=0.8102, y=0.9463)
swipe(from_coord=[0.581, 0.898], to_coord=[0.601, 0.518])

行動空間轉換器 – 客製化詞彙表

utils/action_space_converter.py 允許使用者將統一的行動映射至任何領域特定的 API(例如將 click 轉為 touch)。它支援可配置的函式層級與參數層級映射、值轉換與驗證。

已釋出資料集

此管線產生兩個以統一格式的 Hugging Face 資料集:

  • smolagents/aguvis-stage-1
  • smolagents/aguvis-stage-2 這些資料集可直接用於訓練 GUI 代理。

2. Phase 1 – 從零到感知

訓練資料

Phase 1 在 smolagents/aguvis-stage-1 上進行微調,該資料集將使用者指令與以程式碼表達的具體行動配對(例如 { "user": "click on more button", "assistant": "click(x=0.8875, y=0.2281)" })。損失僅計算於助理的行動輸出。

影像解析度與座標消融實驗

影像大小 座標類型 ScreenSpot‑v2 ↑
384 px 正規化 31.28 %
764 px 正規化 32.32 %
1152 px 正規化 33.72 %
1152 px 像素 4.32 %
最佳配置為 1152 px 解析度搭配正規化座標。

結果

在最佳配置下訓練兩個 epoch,使 ScreenSpot‑v2 準確率從 0 %(基線)提升至 41.27 %,絕對提升 +41 %,證實模型學會將視覺元素與行動對應。


3. Phase 2 – 從感知到認知

訓練資料

Phase 2 使用 smolagents/aguvis-stage-2,其中加入了明確的推理標籤(<code>click(x=0.41, y=0.178)</code>)。

結果

將 Phase 1 的檢查點再微調兩個 epoch,使 ScreenSpot‑v2 表現提升至 61.71 %,顯示以推理為導向的資料進一步提升 GUI 基礎。相同的兩階段配方套用於 460 M 參數的 nanoVLM,於 ScreenSpot‑v2 上達到約 58 %,創下該模型規模的最新表現。


4. 開源釋出 – 完整復現所需資源

  • 訓練配方recipe.ipynb(使用 TRL 函式庫)。
  • 資料集smolagents/aguvis-stage-1smolagents/aguvis-stage-2
  • 已訓練模型smolagents/SmolVLM2-2.2B-Instruct-Agentic-GUI
  • 前處理工具 – 函式解析器、行動轉換系統與行動空間轉換器(全部於部落格中連結)。
  • 示範 Space – 互動式 Hugging Face Space (A-Mahla/Smol2Operator) 展示端到端任務執行。
  • 所有資源皆以寬鬆授權公開可用。

5. 含意與未來方向

此工作證明,高品質且富含推理的 GUI 資料即使只透過監督式微調,也能賦予相對小型的 VLM 可靠的感知與代理能力。這降低了構建領域特定 GUI 助手的門檻,且暗示進一步的提升可能來自強化學習或直接偏好最佳化(DPO)方法,從而實現持續的互動式學習。


6. 接下來的計畫

作者預計探索 RL 與 DPO,以提升即時適應與推理深度。社群貢獻——新資料集、客製化行動詞彙表或更大的基礎模型——皆可將此方法擴展至行動、網頁與專業企業介面。


重點: 透過統一異質 GUI 行動資料並套用兩階段監督式微調流程,Hugging Face 將 2.2 B 參數的視覺語言模型轉變為開源的代理式 GUI 程式設計師,並釋出完整堆疊供研究社群進一步構建。

Sources