Uso de la computadora

Las zonas de pruebas de uso de la computadora de Agent Platform proporcionan un entorno de navegador seguro y aislado con el que pueden interactuar tus agentes. Estas zonas de pruebas permiten que los agentes automaticen tareas que imitan las interacciones humanas (como hacer clic, navegar por sitios y tomar capturas de pantalla).

Cómo funciona

Cuando creas una zona de pruebas de uso de la computadora, Gemini Enterprise Agent Platform aprovisiona un entorno en contenedores que ejecuta un agente de navegador web. Puedes controlar el navegador de dos maneras:

  • Solicitudes a la API: Envía comandos a la zona de pruebas para realizar acciones como navegar a una URL, hacer clic en elementos o escribir texto.
  • Control del navegador: Conéctate al navegador con una conexión estándar del protocolo de Chrome DevTools (CDP), lo que te permite usar herramientas de automatización del navegador (como Playwright) para automatizar el navegador.

Consideraciones

Durante la versión preliminar, la latencia de la zona de pruebas de uso de la computadora de Agent Platform se optimiza para volúmenes de tráfico bajos. Los volúmenes de tráfico más altos pueden experimentar temporalmente una latencia elevada.

Controla el navegador con la API

Puedes enviar solicitudes a la API a la zona de pruebas para realizar acciones comunes del navegador. La zona de pruebas controla la ejecución de estas acciones dentro de su entorno aislado.

Entre las acciones admitidas, se incluyen las siguientes:

  • Navegar a una URL
  • Hacer clic en coordenadas específicas
  • Escribir texto en los campos
  • Tomar capturas de pantalla

Para obtener un ejemplo de cómo enviar comandos, consulta la guía de inicio rápido de uso de la computadora.

Controla el navegador con una conexión CDP

Para una automatización más avanzada, puedes conectarte al navegador de la zona de pruebas a través de una conexión del Protocolo de herramientas para desarrolladores de Chrome (CDP). Este método te permite usar herramientas de automatización del navegador estándar, como Playwright, para interactuar con la página web.

Para conectar Playwright a la zona de pruebas, haz lo siguiente:

  1. Genera la URL de WebSocket y los encabezados obligatorios para tu zona de pruebas con el método del SDK de Python generate_browser_ws_headers.

      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,
      )
    
  2. Usa el método connect_over_cdp de Playwright para establecer una conexión.

    Usa la URL y los encabezados de WebSocket generados para conectarte a través de CDP con 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))
    

Vista de transmisión en vivo

Las zonas de pruebas de uso de la computadora admiten una vista de transmisión en vivo (VNC), lo que te permite supervisar visualmente las acciones del agente en tiempo real. Puedes depurar y observar el comportamiento del agente.

Por ejemplo, puedes usar noVNC para conectarte a la zona de pruebas a través de WebSocket.

¿Qué sigue?