UI-TARS-1.5-7B: GUIグラウンディングでSOTAを達成したVision AIエージェント
ByteDanceのSeedチームが公開したUI-TARS-1.5が面白い。GUIエージェント向けのビジョン言語モデルで、スクリーンショットを見てUI要素を特定する精度がOpenAI CUAやClaude 3.7を大幅に上回っている。
7Bパラメータの軽量版でもScreenSpotProベンチマークで49.6%を達成。OpenAI CUAの23.4%、Claude 3.7の27.7%と比べて約2倍の精度。デスクトップアプリも提供されていて、ローカルで動作する。
モデルの位置付け
GUIエージェントには大きく2つのアプローチがある。
| アプローチ | 仕組み | 代表例 |
|---|---|---|
| アクセシビリティツリー | DOMやOS APIから要素情報を取得 | Playwright MCP, agent-browser |
| Vision AI | スクリーンショットを見て判断 | Skyvern, UI-TARS |
UI-TARSはVision AIアプローチに特化した専用モデル。汎用VLMをGUIタスクに使うのではなく、最初からGUI操作のために設計・学習されている点が特徴。
アーキテクチャ
Qwen2.5-VLをベースに、GUIエージェントタスク向けの学習を施している。
| 項目 | 値 |
|---|---|
| ベースモデル | Qwen2.5-VL |
| パラメータ数 | 7B(軽量版)/ 72B(最大版) |
| 学習手法 | 強化学習 + 推論時スケーリング |
| ライセンス | Apache 2.0 |
推論時スケーリング
UI-TARS-1.5ではChain-of-Thought推論を導入。「Thought」ブロックで思考過程を出力してから「Action」を決定する。
Thought: 検索ボックスをクリックしてキーワードを入力する必要がある
Action: click(start_box='(512,128)')
この思考プロセスにより、複雑なタスクでの精度が向上している。
ベンチマーク
GUIグラウンディング(ScreenSpotPro)
画面上の特定要素を正確に指し示す能力を測定するベンチマーク。
| モデル | スコア |
|---|---|
| UI-TARS-1.5-7B | 49.6% |
| Claude 3.7 | 27.7% |
| OpenAI CUA | 23.4% |
7Bモデルでこの差は大きい。GUIグラウンディングに特化した学習の効果が出ている。
最大モデル(UI-TARS-1.5)では**61.6%**を達成。
コンピュータ操作(OSWorld)
実際のOS上でタスクを完了する能力を測定。
| モデル | スコア(100ステップ) |
|---|---|
| UI-TARS-1.5(最大) | 42.5% |
| OpenAI CUA | 36.4% |
| Claude 3.7 | 28.0% |
| UI-TARS-1.5-7B | 27.5% |
7Bモデルは最大モデルやOpenAI CUAには及ばないが、Claude 3.7と同等レベル。
ゲーム
Poki Gamesの14種類のブラウザゲームで100%の成功率を達成。Minecraftタスクでも平均0.42スコア(思考プロセス使用時)。
その他のベンチマーク(最大モデル)
| ベンチマーク | スコア |
|---|---|
| Windows Agent Arena | 42.1% |
| Online-Mind2web | 75.8% |
| Android World | 64.2% |
使い方
Pythonパッケージ
pip install ui-tars
プロンプトテンプレート
用途に応じて3種類のテンプレートが用意されている。
| テンプレート | 用途 | 対応アクション |
|---|---|---|
| COMPUTER_USE | デスクトップ(Windows, Linux, macOS) | click, drag, keyboard, scroll |
| MOBILE_USE | モバイル(Android) | long_press, open_app, press_home, press_back |
| GROUNDING | 要素特定のみ | 座標出力 |
コード例
from ui_tars.action_parser import parse_action_to_structure_output
response = "Thought: ボタンをクリックする\nAction: click(start_box='(100,200)')"
parsed_dict = parse_action_to_structure_output(
response,
factor=1000,
origin_resized_height=1080,
origin_resized_width=1920,
model_type="qwen25vl"
)
座標は絶対座標で出力される。画面サイズに応じた変換処理が必要。
デスクトップアプリ
UI-TARS-desktopとして、GUIアプリケーションも提供されている。
特徴:
- 自然言語でGUI操作を指示
- スクリーンショット認識とビジュアルフィードバック
- Windows、macOS、ブラウザで動作
- ローカル実行によるプライバシー保護
1,100コミットを超える活発な開発が続いている。
注意点
- 座標処理が必要: モデルは絶対座標を出力するため、画面サイズに応じた変換が必要
- 7Bは複雑なタスクが苦手: OSWorldのスコアを見ると、複雑なコンピュータ操作では最大モデルとの差がある
- Vision AIの限界: 動的に変化するUIや、スクリーンショットだけでは判断できない状態には弱い
所感
GUIグラウンディングに特化したモデルとして、明確な強みがある。汎用VLMをGUIタスクに使うよりも、専用モデルを使う方が精度が出るという実証。
ただ、実際のエージェントタスクでは「要素を正確に指し示す」だけでなく「何をすべきか判断する」能力も必要。OSWorldのスコアを見ると、7Bモデルでは複雑なタスクの遂行能力はまだ発展途上。
以前調べたE2Eテストツールの文脈で言えば、SkyvernのようなVision AIアプローチのツールがUI-TARSを組み込むと面白いかもしれない。アクセシビリティツリーが使えない場面でのフォールバックとして、GUIグラウンディング精度の高いモデルは価値がある。