コンピュータ操作エージェント比較
いまやすべての主要ラボが、画面を見てクリックできるモデルを出荷しています。Anthropic の computer use ツール、OpenAI の computer ツール、Google の computer_use ツールはすべて同じ形の問題を解きます — スクリーンショットを撮り、アクションを決め、実行し、また撮る — そして3つとも互いにワイヤー非互換で、しかもそれはクリックが40ピクセルずれ始めるまで明らかにならない類のものです。
このページはハーネスレベルのガイドであって、リーダーボードではありません。リーダーボードは毎月変わりますが、以下の失敗モードは最初のプレビューが出荷されて以来ずっと同じです。
- 3つのプロバイダーが共有するエージェントループ — そしてそれらが分岐する3つの箇所を理解する
- ほとんどの初回試行を静かに壊す座標バグを直す(Retina、ダウンスケール、画像サイズ制限)
- 各プロバイダーの安全ゲートを知る。それはオプションの付け足しではなくプロトコルの一部だから
- OSWorld を正直に読む: 人間のベースラインが実際に何を意味するか
- 推論の努力量を正しく選ぶ: 最も安い設定は、あなたが思うものではない
誰もが共有するループ
ブランディングを取り払えば、3つとも同じ状態機械です:
- モデルはあなたの指示と現在の画面の画像を受け取ります。一部のプロバイダーは現在の URL や最近のアクションの短い履歴も欲しがります。
- (x, y) をクリック。これを入力。ここをスクロール。それはあなたのコードに何かをするよう求める要求です — モデル自身がマシンに触れることはできません。
- ここはあなたの担当です。Anthropic は率直に述べています: あなたのアプリケーションがツールを実行しなければならず、Claude が直接実行することはできません。スクリーンショットの取得、マウス、キーボードはあなたが実装します。
- 新しい画面がツール結果として戻ります。モデルは自分のアクションの帰結を見ます — これがフィードバック信号のすべてです。
- 終了は「完了」フラグではなく、それ以上のアクション要求がないことです。あなたのループには独自のステップ上限とストール検出が必要です。
人々が見落とす帰結: モデルの世界に対する唯一の知覚は、あなたが送る画像です。 以下のすべての失敗は、実のところその画像、あるいはそれが暗示する座標空間の失敗です。
3つがどこで分岐するか
分岐は「どれが賢いか」ではありません。契約です。
| Anthropic (Claude) | OpenAI (GPT) | Google (Gemini) | |
|---|---|---|---|
| アクション空間 | 生のデスクトッププリミティブ: screenshot、left_click、type、key、scroll、drag、hold_key、wait、加えて最新ツールバージョンでは zoom | 構造化された UI アクション: click、double_click、scroll、type、keypress、drag、move、wait、screenshot | 意味的なアクション: click/type だけでなく navigate、go_back、go_forward、open_app、long_press — ブラウザとモバイルの概念が第一級 |
| 座標 | ピクセル寸法を送り、モデルはその空間の生のピクセル座標を返す | 同じピクセル契約、推奨デスクトップサイズあり | 同じ、加えて各アクションの理由を説明する intent フィールドあり |
| ループの配管 | 画像を運ぶツール結果ブロック | computer_call → call_id で対応づけられた computer_call_output。previous_response_id が履歴を運ぶので再送不要 | 関数呼び出し → 新しいスクリーンショット付きの function_result |
| 安全ゲート | インジェクション分類器がスクリーンショットに対して自動で走る | 明示的に承認しなければならない pending_safety_checks | ポリシーカテゴリ付きの safety_decision |
| 得意領域 | 一般的なデスクトップ / OS レベルの制御 | デスクトップとブラウザ、加えてコード実行パス | ブラウザ優先。モバイルに強い。デスクトップ OS 制御には明示的に最適化されていない |
最後の Anthropic/Google の行が、アーキテクチャを決めるものです。Google のアクション空間は意味的です — go_back はモデルが名指しできる概念です。Anthropic のは機械的です — 戻るとは、モデルが戻るボタンを見つけてクリックするか、正しいキー組み合わせを押すことを意味します。意味的アクションはブラウザ内でより信頼でき、ブラウザ外では役に立ちません。機械的プリミティブはどこでも動き、より頻繁に失敗します。
つまり: プロバイダー間でコンピュータ操作エージェントを移植するのは、モデルの入れ替えではありません。ハーネスのアクション実行器を書き直すことです。それに応じて見積もってください。(コーディングエージェント CLI 比較と同じ教訓です: モデルではなくハーネスこそ、あなたが実際に添い遂げるものです。)
最初の1週間を食う座標バグ
これはこのページで単一で最も価値のあることです。ほぼ誰もが遭遇し、症状が「モデルがクリックが下手」に見えるからです。
クリックが下手なのではありません。あなたの画像と座標空間が食い違っているのです。
3つの独立した原因があり、それらは積み重なります:
1. Retina / HiDPI が画像を倍にする
macOS の Retina ディスプレイは、デバイスピクセル比 2 でスクリーンショットを撮ります — 画像は論理的な画面座標の2倍の解像度です。それを生のまま送ると、モデルは 2880 幅の画像について推論する一方、あなたのクリック実行器は 1440 幅の論理点で考えます。すべてのクリックが、意図した位置のおよそ半分に、一貫して、一方向に着地します。
修正: 送る前に2で縮小する、または モデルが返す座標を半分にする。両方はしない。
2. API が過大な画像を静かにダウンスケールする
モデルには画像サイズ制限があり — しかもそれは同じラボのモデル間でも異なります。Claude Sonnet 5、Opus 4.8、Opus 4.7 は長辺で最大 2576 ピクセルまで受け付けます。それ以前の Claude モデルは 1568 ピクセルとおよそ 1.15 メガピクセルまでです。
ここに罠があります: より大きいものを送ると、API はエラーにするのではなくあなたのためにダウンスケールします。するとモデルは、自分が見た画像の空間で座標を返し — リサイズがサーバー側で起きたため、あなたはスケール係数を決して知りません。本当に巨大な画像(一辺 ~8,000 px 超)だけがバリデーションエラーで即座に拒否されます。
つまり「親切な」挙動がバグなのです。常にクライアント側でリサイズし、display_width_px/display_height_px を実際に送った寸法に設定し、返された座標を自分でスケールバックしてください。
3. ディテール設定とアスペクト比
OpenAI のツールでは、スクリーンショットは detail: "original" を使うべきです — "high" も "low" も、このタスクに限ってはクリック精度を劣化させます。そして、アスペクト比を保たずにリサイズすると、クリックは正しい領域に着地し、標的を外します。
座標スケーリング — 修正の形
# Before sending: shrink to fit the model's image limit, remember the factor. LONG_EDGE_LIMIT = 2576 # check YOUR model's limit; older Claude models: 1568 scale = min(1.0, LONG_EDGE_LIMIT / max(width, height)) sent_w, sent_h = round(width * scale), round(height * scale) # -> send the resized image, and declare display_width_px=sent_w, display_height_px=sent_h # After the model replies: map its coordinates back to the real screen. real_x, real_y = model_x / scale, model_y / scale # On a Retina capture you did NOT pre-downscale, divide by the device pixel ratio too.
症状 → 原因 早見表
| 症状 | ほぼ確実に |
|---|---|
| クリックが一貫して一方向にずれる | 宣言した display_width_px/display_height_px が実際に送った画像と一致していない |
| クリックが正しい領域に着地するが小さな標的を外す | ダウンスケールでディテールが失われた、またはリサイズでアスペクト比が歪んだ |
| どこでも精度が悪い | 解像度が低すぎる — 下限として 1280x720 を試す |
| モデルが小さな文字を読み違える(タブタイトル、ファイル名、行番号) | ズームが必要なのに、有効化していない |
ベンダー自身による解像度ガイダンス: Anthropic は一般的なデスクトップに 1024x768 か 1280x720、Web アプリに 1280x800 か 1366x768 を推奨し、1920x1080 を超えないよう明示的に述べています。OpenAI は 1440x900 か 1600x900 を推奨します。大きい方が良いわけではありません — ピクセルにトークンを払っておいて、ダウンスケールでそのディテールを捨てるのです。
ズームの逃げ道
Claude の最新のコンピュータツールバージョン(computer_20251124)は zoom アクションを追加しました。デフォルトはオフで、enable_zoom: true を設定する必要があります。オンにすると、Claude はスクリーンショットの基本解像度では読めない小さな文字を読む必要があるとき、領域にズームインします: サイドバーのファイル名、タブタイトル、ステータスバーの文字、行番号、ボタンのラベル。
自明でない運用上の注意: Claude が期待どおりにズームしない場合、修正はたいてい、画面全体についてではなく特定の領域や要素について尋ねることです。
安全ゲートはプロトコルの一部
これを付け足しとして扱わないでください。3つの API すべてで、安全メカニズムはあなたのループの形を変えます。
Anthropic はモデルをプロンプトインジェクションに抵抗するよう訓練し、かつコンピュータ操作ツールが関与しているときは、あなたのプロンプトに対して分類器を自動で走らせます。分類器がスクリーンショット内にありそうなインジェクションを見つけると、次のアクションの前にユーザーへ確認を求めるようモデルを誘導します。これは人間が居るときは素晴らしく、無人パイプラインでは端的に間違っています — だからサポートへの連絡でゲートされたオプトアウトがあります。
OpenAI は pending_safety_checks を提示し、あなたのコードがループを進める前にそれを明示的に承認(acknowledged_safety_checks)しなければなりません。ゲートはあなたの手にあり、それをスキップするのはコードで下す決定です。
Google は safety_decision を返します — allowed、require_confirmation、または blocked で、FINANCIAL_TRANSACTIONS、COMMUNICATION_TOOL、ACCOUNT_CREATION、SENSITIVE_DATA_MODIFICATION、LEGAL_TERMS_AND_AGREEMENTS を含むポリシーカテゴリに駆動されます。スクリーンショットのプロンプトインジェクション審査はオプトインで利用可能です。
脅威は現実的かつ具体的です: スクリーンショットは信頼できない入力です。 Web ページ、画像、エージェントが開いた PDF に描かれたテキスト — そのすべてが、あなたの指示と同じチャネルを通じてモデルに届きます。Anthropic 自身のドキュメントは、Claude が状況によっては、あなたのものと矛盾する場合でもコンテンツ内の指示に従うことがあると注記しています。すべてのプロバイダーの緩和策は同じ3つのルールに収束します: 環境を隔離する、影響の大きいアクションには人間を置く、画面上のすべてを敵対的として扱う。
エージェントがログインしなければならないなら、そのリスクは急激に上がります — 資格情報とインジェクション可能なコンテンツの組み合わせは、この分野で最悪です。防御のプレイブックはローカルとハイブリッドのエージェントの保護とプロンプトインジェクションを参照してください。
OSWorld を正直に読む
OSWorld は共有のものさしであり、良いものです。ごまかしにくいからです: エージェントを実際のアプリケーションを備えた実際の OS に放り込み、実行ベースの検証で採点します — スクリプトが、エージェントが保存したと主張したかではなく、ファイルが実際に保存されたかを確認します。ベンチマークは 369 タスクにわたり(標準評価セットでは 361。少数の Google Drive タスクが手動セットアップを要するため)、134 の実行ベース評価関数を備えています。OSWorld-Verified はクリーンアップされた改訂版で、コミュニティ報告の壊れた例が修正され、評価時間が AWS で約1時間に短縮されています。
同時に押さえておくべき2つの数値:
- 人間のベースラインは ~72.4%。 100% ではありません。これらのタスクは本当に面倒で、人間もしくじります。
- OSWorld が公開されたとき、最良のモデルは 12.24% でした。
フロンティアのエージェントはいまや70%台以上のスコアを報告しています — これは「エージェントはコンピュータ操作で人間レベルに達した」という見出しが、算術的には擁護でき、実務的には誤解を招くことを意味します。ベンチマークスコアは、コーディングベンチマークとまったく同じく、モデル + ハーネス + 足場の結果です(能力と信頼性のギャップを参照)。あなたのハーネスは彼らのハーネスではありません。そして単一タスクの 75% 成功率は残酷に積算します: 各ステップが 95% 信頼できる8ステップのワークフローは、約 66% の確率で成功します。
OSWorld は能力が存在するという証拠として扱い、あなた自身の評価セットを、あなたの製品が動くという唯一の証拠として扱ってください。
誰も予想しない推論努力量の結果
Claude のコンピュータ操作に限って言えば、Anthropic の内部ベンチマークは、通常の直感を反転させるガイダンスを与えます:
- Opus 4.7: デフォルトとして
high努力。高スループットやコスト重視のワークロードではlowに落とす。 - Sonnet 4.6 と Opus 4.6:
mediumが精度対コストの最良比。maxは避ける — UI タスクでは精度を上げずにトークンコストを足すだけ。 - 直感に反するもの: これらのモデルでは、
low努力は思考を完全に無効化するより少ない出力トークンを使う。 少しの思考がミスを防ぎ、ミスはリトライを招く — そしてリトライは思考よりはるかに多くのトークンを食う。
つまり「お金を節約するために思考をオフにする」は、コンピュータ操作にとってはしばしば間違いです。最も安いのは少しの思考です。
もう1つのモデル選択の細かい点: 機械的なクリック精度は知性と同じ軸ではありません。Sonnet 4.6 はクリックにおいて Opus 4.6 より機械的に精密で、スクリーンショットが大きくダウンスケールされたときにもより頑健です。Opus 4.7 はその差を縮め、ピクセル制限を上げるので、そもそもダウンスケールを少なく済ませます。
接触を生き延びるハーネス
- 価値あるものが何もないコンテナか VM。すべてのプロバイダーがこれを言い、みな本気です: エージェントはいずれ、あなたが意図しないものをクリックします。
- 撮影し、モデルの制限までクライアント側でリサイズし、送った正確な寸法を宣言し、スケール係数を保つ。これを一度書けば、二度と考えなくて済みます。
- 終了は「それ以上アクションが返らない」こと — これは、エージェントが閉じられないモーダルで立ち往生していると決して発火しません。最大ステップ予算とストール検出器(同一スクリーンショットが N 回連続)を加えます。
- 人間参加型か、オプトアウトと狭い影響範囲を持つ無人か。確認プロンプトが cron ジョブをデッドロックさせて偶然これを発見しないでください。
- OSWorld がやるように、実行検証で: エージェントがそう言ったかではなく、世界が変わったかを確認する。これが、あなたのシステムについて意味を持つ唯一の数値です。
- 最も信頼できるコンピュータ操作エージェントは、コンピュータを使わなくて済むものです。標的に API、MCP サーバー、CLI があるなら、その経路の方が速く、安く、桁違いに信頼できます。画面は目標ではなくフォールバックです。
その最後のステップが戦略的なものです。コンピュータ操作は、API のないソフトウェア — レガシーなデスクトップアプリ、ベンダーポータル、統合手段のないログインの向こうにある何か — のための万能アダプターです。それは見事なハックであり、それでもハックです。まず MCP と実際のツールに手を伸ばしてください。
Check yourself
0/5ソースと参考資料
- Anthropic — Computer use tool — ベータヘッダー、アクションセット、画像制限、座標スケーリング、努力量ガイダンス、インジェクション分類器。
- OpenAI — Computer use guide —
computer_call/computer_call_outputループ、安全チェック、推奨解像度。 - Google — Gemini computer use — ブラウザ、モバイル、デスクトップにまたがる意味的アクション空間。
safety_decisionのポリシーカテゴリ。 - OSWorld と xlang-ai/OSWorld — ベンチマーク、その実行ベース検証、人間ベースライン。
- anthropics/anthropic-quickstarts —
computer-use-demoリファレンス実装(コンテナ、仮想ディスプレイ、エージェントループ)。 - openai/openai-cua-sample-app — OpenAI のリファレンスコンピュータ操作ハーネス。
- browser-use/browser-use — ループを自分で作らずにブラウザのケースが欲しい場合の、広く使われるモデル非依存のブラウザエージェントハーネス。