Uso de computador

Os sandboxes de uso do computador da Agent Platform oferecem um ambiente de navegador seguro e isolado com que os agentes podem interagir. Esses sandboxes permitem que os agentes automatizem tarefas que imitam interações humanas, como clicar, navegar em sites e fazer capturas de tela.

Como funciona

Ao criar um sandbox de uso do computador, a Gemini Enterprise Agent Platform provisiona um ambiente em contêiner que executa um agente de navegador da Web. É possível controlar o navegador de duas maneiras:

  • Solicitações de API: envie comandos para o sandbox para realizar ações como navegar até um URL, clicar em elementos ou digitar texto.
  • Controle do navegador: conecte-se ao navegador usando uma conexão padrão do Chrome DevTools Protocol (CDP), permitindo que você use ferramentas de automação do navegador (como o Playwright) para automatizar o navegador.

Considerações

Durante o pré-lançamento, a latência do sandbox de uso do computador do Agent Platform é otimizada para volumes de tráfego baixos. Volumes de tráfego mais altos podem encontrar latência elevada temporariamente.

Controlar o navegador usando a API

É possível enviar solicitações de API para o sandbox para realizar ações comuns do navegador. O sandbox processa a execução dessas ações no ambiente isolado.

As ações compatíveis incluem:

  • Navegar até um URL.
  • Clicar em coordenadas específicas.
  • Digitar texto em campos.
  • Fazer capturas de tela.

Para ver um exemplo de como enviar comandos, consulte o guia de início rápido sobre o uso do computador.

Controlar o navegador usando uma conexão CDP

Para uma automação mais avançada, é possível se conectar ao navegador do sandbox por uma conexão do Chrome DevTools Protocol (CDP). Esse método permite usar ferramentas de automação de navegador padrão, como o Playwright, para interagir com a página da Web.

Para conectar o Playwright ao sandbox:

  1. Gere o URL do WebSocket e os cabeçalhos necessários para o sandbox usando o método generate_browser_ws_headers do SDK do Python.
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. Use o método connect_over_cdp do Playwright para estabelecer uma conexão.

Use o URL e os cabeçalhos do WebSocket gerados para se conectar ao CDP usando o Playwright:

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))

Visualização de transmissão ao vivo

Os sandboxes de uso do computador oferecem suporte a uma visualização de transmissão ao vivo (VNC), permitindo que você monitore visualmente as ações do agente em tempo real. É possível depurar e observar o comportamento do agente.

A seguir