Agent Platform 컴퓨터 사용 샌드박스는 에이전트가 상호작용할 수 있는 안전하고 격리된 브라우저 환경을 제공합니다. 이러한 샌드박스를 사용하면 에이전트가 클릭, 사이트 탐색, 스크린샷 찍기와 같은 인간의 상호작용을 모방하는 작업을 자동화할 수 있습니다.
작동 방식
컴퓨터 사용 샌드박스를 만들면 Gemini Enterprise Agent Platform에서 웹브라우저 에이전트를 실행하는 컨테이너화된 환경을 프로비저닝합니다. 다음 두 가지 방법으로 브라우저를 제어할 수 있습니다.
- API 요청: URL로 이동, 요소 클릭, 텍스트 입력과 같은 작업을 실행하도록 샌드박스에 명령어를 보냅니다.
- 브라우저 제어: 표준 Chrome DevTools 프로토콜 (CDP) 연결을 사용하여 브라우저에 연결하면 브라우저 자동화 도구 (예: Playwright)를 사용하여 브라우저를 자동화할 수 있습니다.
고려사항
미리보기 중에 Agent Platform 컴퓨터 사용 샌드박스 지연 시간은 트래픽 양이 적은 경우에 최적화됩니다. 트래픽 양이 많으면 일시적으로 지연 시간이 길어질 수 있습니다.
API를 사용하여 브라우저 제어
API 요청을 샌드박스에 보내서 일반적인 브라우저 작업을 실행할 수 있습니다. 샌드박스는 격리된 환경 내에서 이러한 작업의 실행을 처리합니다.
지원되는 작업은 다음과 같습니다.
- URL로 이동
- 특정 좌표 클릭
- 필드에 텍스트 입력
- 스크린샷 찍기
명령어를 보내는 방법의 예시는 컴퓨터 사용 빠른 시작을 참조하세요.
CDP 연결을 사용하여 브라우저 제어
고급 자동화를 위해 Chrome DevTools 프로토콜 (CDP) 연결을 통해 샌드박스 브라우저에 연결할 수 있습니다. 이 방법을 사용하면 Playwright와 같은 표준 브라우저 자동화 도구를 사용하여 웹페이지와 상호작용할 수 있습니다.
Playwright를 샌드박스에 연결하려면 다음 단계를 따르세요.
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, )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)를 지원하므로 에이전트의 작업을 실시간으로 시각적으로 모니터링할 수 있습니다. 에이전트의 동작을 디버그하고 관찰할 수 있습니다.
예를 들어 noVNC를 사용하여 WebSocket을 통해 샌드박스에 연결할 수 있습니다.
다음 단계
- 컴퓨터 사용 빠른 시작
- 샌드박스 수명 주기 관리를 위한 스냅샷을 살펴보세요.