電腦使用

Agent Platform Computer Use 沙箱提供安全隔離的瀏覽器環境,可供代理互動。代理可透過這些沙箱自動執行模擬人類互動的工作 (例如點按、瀏覽網站及擷取螢幕截圖)。

運作方式

建立電腦使用沙箱時,Gemini Enterprise Agent Platform 會佈建執行網頁瀏覽器代理程式的容器化環境。你可以透過下列兩種方式控制瀏覽器:

  • API 要求:將指令傳送至沙箱,執行前往網址、點選元素或輸入文字等動作。
  • 瀏覽器控制:使用標準 Chrome 開發人員工具通訊協定 (CDP) 連線至瀏覽器,即可使用瀏覽器自動化工具 (例如 Playwright) 自動執行瀏覽器作業。

注意事項

在預覽期間,Agent Platform Computer Use Sandbox 的延遲時間會針對低流量進行最佳化。流量較高時,延遲時間可能會暫時增加。

使用 API 控制瀏覽器

您可以將 API 要求傳送至沙箱,執行常見的瀏覽器動作。沙箱會在隔離環境中執行這些動作。

支援的動作包括:

  • 前往網址。
  • 在特定座標點按。
  • 在欄位中輸入文字。
  • 擷取螢幕截圖。

如需傳送指令的範例,請參閱「電腦使用快速入門」。

透過 CDP 連線控制瀏覽器

如要進行更進階的自動化作業,可以透過 Chrome 開發人員工具通訊協定 (CDP) 連線連線至沙箱瀏覽器。您可以使用 Playwright 等標準瀏覽器自動化工具與網頁互動。

如要將 Playwright 連線至沙箱,請按照下列步驟操作:

  1. 使用 Python SDK generate_browser_ws_headers 方法,為沙箱產生 WebSocket URL 和必要標頭。
service_account_email = "SERVICE_ACCOUNT_EMAIL"
ws_url, ws_headers = client.agent_engines.sandboxes.generate_browser_ws_headers(
    sandbox_environment=sandbox,
    service_account_email=service_account_email,
)
  1. 使用 Playwright 的 connect_over_cdp 方法建立連線。

使用產生的 WebSocket URL 和標頭,透過 Playwright 使用 CDP 連線:

import asyncio
from playwright.async_api import async_playwright
import nest_asyncio
nest_asyncio.apply()

async def connect_over_cdp(ws_url, ws_headers):
    async with async_playwright() as p:
        try:
            browser = await p.chromium.connect_over_cdp(
                endpoint_url=ws_url,
                headers=ws_headers
            )
            print("Successfully connected to browser over CDP.")

            # You can now interact with the browser
            page = browser.contexts[0].pages[0]
            await page.goto("https://www.example.com")
            print(f"Page title: {await page.title()}")

            await browser.close()
            print("Browser connection closed.")
        except Exception as e:
            print(f"An error occurred: {e}")

# Run CDP connection
asyncio.run(connect_over_cdp(ws_url, ws_headers))

直播觀看畫面

電腦使用沙箱支援即時串流檢視 (VNC),可讓您即時監控代理程式的動作。您可以偵錯及觀察代理程式的行為。

後續步驟