0 / 4 節読了

「Computer Vision」でAIが「目」と「手」を獲得!その驚きの機能とは?

皆さん、AIがただテキストを生成したり、画像を認識するだけだと思っていませんか?いやいや、時代はもう次のフェーズに入っていますよ!今回、Googleが一般公開した「Interactions API」の目玉機能の一つ、「Computer Vision」は、まさにAIに「目」と「手」を与えたと言えるでしょう。これは単なる画像認識ではありません。AIがスクリーンショットを解析し、まるで人間のようにブラウザ、モバイル、デスクトップのUIを操作するんです。クリックしたり、キーボード入力したり、ドラッグしたり…想像してみてください、これまでの自動化の概念を根底から覆す可能性を秘めていると私は断言します。

このComputer Visionを最大限に活用するために推奨されているのが、最新モデルの「Gemini 3.5 Flash」です。このモデルには、Computer Visionをさらに強力にするためのいくつかの新機能が搭載されています。

  • 複数環境対応: ブラウザだけでなく、モバイルやデスクトップ環境でもエージェントを作成できるようになりました。これは、まさに全方位型の自動化を意味します。
  • 意図を伴う合理化されたアクション: モデルがなぜその操作を選んだのかを説明するintentフィールドが含まれるようになりました。これにより、AIの思考プロセスが可視化され、デバッグや改善が格段にやりやすくなります。これは開発者にとって本当に助かる機能だと感じています。
  • 設定可能な安全ポリシー: AIの行動に安全上の制約を設け、微調整できるようになりました。悪意のある操作を防ぐためのガードレールを自分で設定できるのは、非常に重要です。
  • プロンプトインジェクション攻撃検出: スクリーンショットスキャン機能で、隠された敵対的なプロンプト(プロンプトインジェクション)を検出できるようになりました。セキュリティ面での配慮も抜かりないですね。

これらの機能が組み合わさることで、AIは単なるツールではなく、私たちのデジタル環境における強力な「共同作業者」へと進化を遂げたと言えるでしょう。

実務でどう使う?「Computer Vision」が変えるビジネスの現場

さて、このComputer Visionが私たちの実務にどう活かせるのか、具体的なイメージを持ってもらいたいですね。私はこの技術を見た時、「これはビジネスのゲームチェンジャーになる!」と直感しました。特に、営業、開発、そして一般的な実務の現場で、その威力を発揮すると確信しています。

  • 営業・マーケティング: 競合他社のウェブサイトから商品情報、価格、レビューなどを自動で収集し、市場調査レポートを瞬時に作成できます。私が以前、手作業で何時間もかけていた情報収集が、AIによって数分で終わるなんて、夢のようですよ。顧客のニーズに合わせたパーソナライズされた情報提供も、より効率的に行えるようになるでしょう。
  • 開発・QA: Webアプリケーションの自動テストが劇的に進化します。ユーザーが実際に操作するシナリオをAIが再現し、バグの検出やUIの検証を自動で行ってくれます。これまでのテストコード作成の手間が省け、開発者はより創造的な作業に集中できるようになります。私のチームでも、この機能を使ってテストプロセスを自動化し、リリースのスピードを格段に向上させたいと考えています。
  • 一般実務・バックオフィス: 繰り返し行われるデータ入力やフォーム記入作業を自動化できます。例えば、複数のシステムにまたがる情報の転記作業や、オンライン申請フォームへの入力など、退屈で時間のかかる作業をAIに任せられるんです。これにより、従業員はより付加価値の高い業務に集中でき、生産性向上に直結します。私自身、日々のルーティンワークで「なぜこの作業はまだ手動なんだ…」と感じることが多々ありましたが、Computer Visionがあれば、その不満も解消されるはずです。

Computer Visionは、単なるコスト削減ツールではありません。それは、私たちの働き方そのものを再定義し、新たなビジネスチャンスを生み出す可能性を秘めた戦略的なツールなのです。

「Computer Vision」の裏側:AIが「見て」「考えて」「行動する」メカニズム

この革新的なComputer Visionがどのように動作するのか、そのメカニズムを理解することは、効果的な活用に不可欠です。AIが「見て」「考えて」「行動する」プロセスは、アプリケーションとAPIの間で継続的に繰り返されるループによって実現されます。まるでAIが私たちの隣に座って、画面を見ながら指示を待っているようなイメージですね。

  1. モデルへの要求送信: まず、あなたのアプリケーションは、Computer Visionツール、ターゲット環境(ブラウザなど)、ユーザーからの指示、そして現在の画面のスクリーンショットをAPIに送ります。AIは、このスクリーンショットを「目」として認識するわけです。
  2. モデルからの応答受信: モデルは送られてきたスクリーンショットと指示を分析し、次に実行すべきUI操作(クリック、スクロール、キー入力など)をfunction_callとして返します。Gemini 3.5 Flashの場合、このfunction_callには、モデルがその操作を選んだ「理由」を説明するintentも含まれます。さらに、内部の安全システムからのsafety_decisionも返され、その操作が安全かどうか、ユーザーの承認が必要かどうかが示されます。
  3. 受信したアクションの実行: アプリケーションは、モデルから受け取ったfunction_callを解析し、Playwrightのような自動化ツールを使って、ターゲット環境でその操作を実行します。もし操作が安全でないと判断された場合は、実行を停止するか、適切な処理を行う必要があります。
  4. 新しい環境状態のキャプチャ: 操作が完了すると、アプリケーションは再び新しいスクリーンショットを撮影し、それをfunction_resultとしてモデルに送り返します。これにより、AIは操作後の画面の状態を認識し、次のステップを計画できるようになります。

この一連のプロセスが、タスクが完了するか、または終了するまで繰り返されることで、AIは複雑なUI操作を自動で実行し続けるのです。このループこそが、AIがまるで生きているかのように画面と対話する秘密なんですね。

実装への第一歩!「Computer Vision」を動かすための準備とコード例

さあ、この素晴らしいComputer Visionを実際に動かしてみましょう!実装は一見複雑そうに見えますが、基本的なステップを理解すれば、誰でも始めることができます。まず、準備すべきは「安全な実行環境」と「クライアントサイドのアクションハンドラー」です。

  • 安全な実行環境: AIエージェントは、予期せぬ操作を行う可能性もゼロではありません。そのため、ホストシステムから隔離されたサンドボックス環境(VMやDockerコンテナなど)で実行することが強く推奨されます。これにより、AIの行動がシステム全体に与える影響を最小限に抑えることができます。
  • クライアントサイドのアクションハンドラー: モデルから受け取ったUI操作の指示(function_call)を実際に実行するためのコードが必要です。Webブラウザ環境であれば、Playwrightのような自動化ツールが非常に強力な味方になります。

ここでは、PythonとPlaywrightを使った簡単な実装例を見てみましょう。まずは必要なパッケージのインストールから始めます。

pip install google-genai playwright
playwright install chromium

次に、Playwrightのブラウザセッションを初期化します。ここでは、画面サイズを設定し、Googleのトップページにアクセスする例を示します。

from playwright.sync_api import sync_playwright

# ターゲット環境の画面サイズを設定
SCREEN_WIDTH = 1440
SCREEN_HEIGHT = 900

# Playwrightブラウザを起動(本番環境ではサンドボックス化された環境を利用)
playwright = sync_playwright().start()
browser = playwright.chromium.launch(headless=False) # headless=Falseで操作を目視できます

# 指定した寸法でコンテキストとページを作成
context = browser.new_context(viewport={"width": SCREEN_WIDTH, "height": SCREEN_HEIGHT})
page = context.new_page()

# タスクを開始するために初期ページに移動
page.goto("https://www.google.com")

# これで 'page', 'SCREEN_WIDTH', 'SCREEN_HEIGHT' が以降のステップで利用可能になります

そして、いよいよモデルにリクエストを送信する部分です。Computer Visionツールを有効にし、ターゲット環境を指定します。ここでは、Gemini 3.5 Flashを使って、フライト検索の指示を出す例を見てみましょう。

from google import genai
from google.genai.types import (
    Content, Part, GenerateContentConfig, Tool, ComputerUse, Environment, ThinkingConfig,
)

client = genai.Client()

response = client.models.generate_content(
    model="gemini-3.6-flash", # 推奨モデル
    contents=[
        Content(
            role="user",
            parts=[
                Part(text="Find a flight from SF to Hawaii on Jun 30th, coming back on Jul 6th")
            ],
        )
    ],
    config=GenerateContentConfig(
        tools=[
            Tool(
                computer_use=ComputerUse(
                    environment=Environment.ENVIRONMENT_BROWSER, # ブラウザ環境を指定
                    enable_prompt_injection_detection=True, # プロンプトインジェクション検出を有効化
                ),
            ),
        ],
        thinking_config=ThinkingConfig(
            include_thoughts=True # モデルの思考プロセスを含める
        ),
    )
)

print(response.text)

このコードを実行すると、AIは「SFからハワイへのフライトを6月30日出発、7月6日帰着で探す」という指示を解釈し、Playwrightを通じてブラウザを操作し始めるでしょう。あとは、モデルからの応答を受け取り、実行し、新しいスクリーンショットを送り続けるループを実装すれば、AIエージェントの完成です。皆さんもぜひ、この驚くべきComputer Visionの世界に飛び込んでみてください!