많은 에이전트 작업에는 신뢰할 수 없는 코드를 실행하거나 보안 위험을 초래할 수 있는 방식으로 외부 환경과 상호작용하는 것이 포함됩니다. Gemini Enterprise Agent Platform은 이러한 워크로드를 안전하게 처리할 수 있는 격리된 샌드박스를 제공합니다.
샌드박스는 에이전트를 대신하여 특정 작업을 실행하기 위해 생성되는 안전하고 격리된 컴퓨팅 환경을 제공합니다. 샌드박스에서 이러한 작업을 실행하면 에이전트가 실행하는 잠재적으로 악의적이거나 잘못된 작업으로부터 인프라와 데이터를 보호할 수 있습니다. 샌드박스는 다음을 통해 이러한 위험을 완화합니다.
- 격리: 각 샌드박스는 다른 샌드박스 및 호스트 시스템과 격리됩니다. 샌드박스에서 한 상담사가 취한 조치는 동일한 런타임 리소스를 공유하는 다른 상담사나 사용자에게 영향을 미치지 않습니다.
- 보안: 샌드박스 내 작업이 제한되어 리소스에 대한 무단 액세스를 방지합니다. 모든 샌드박스 환경은 보안 컨테이너 샌드박스를 사용하여 강력한 보안 경계를 제공합니다. 악성 코드는 런타임 내에서 민감한 정보나 사용자 인증 정보에 액세스할 수 없습니다.
- 안전: 에이전트가 유해한 명령어 또는 무한 루프를 실행하는 경우 영향은 샌드박스 내에 포함됩니다. 예를 들어 잘못 작성되었거나 악성 코드가 사용 가능한 모든 CPU 또는 메모리를 사용할 수 있습니다.
샌드박스와 런타임 비교
에이전트 런타임과 샌드박스는 목적과 사용 방식이 다릅니다.
- 에이전트 런타임: 에이전트의 핵심 로직, 의사 결정, 오케스트레이션이 실행되는 환경입니다. 코드를 실행하고 에이전트의 수명 주기를 관리하는 신뢰할 수 있는 환경입니다.
- 샌드박스: 특정 작업을 실행하기 위해 에이전트 또는 플랫폼에 의해 생성되는 보조 환경입니다. 샌드박스는 일반적으로 수명이 짧거나 세션 기반이며 작업 또는 사용자 세션 기간 동안만 상태를 유지합니다. 예를 들어 에이전트가 Python 스크립트를 생성하고 실행하여 복잡한 수식을 계산해야 하는 경우 자체 런타임이 아닌 샌드박스에서 해당 스크립트를 실행해야 합니다.
기능
샌드박스는 미리 정의된 샌드박스, 맞춤 컨테이너, 스냅샷과 같은 여러 기능을 제공합니다.
- 코드 실행: 에이전트가 안전한 환경에서 코드를 생성하고 실행할 수 있습니다. 이는 복잡한 수학적 계산, 데이터 분석, 컴퓨팅이 필요한 기타 작업에 유용합니다.
- 컴퓨터 사용: 에이전트가 웹브라우저와 상호작용하여 양식 작성, 웹 검색, 복잡한 UI 워크플로 탐색과 같은 작업을 실행할 수 있습니다.
- 커스텀 컨테이너: '자체 컨테이너 가져오기'를 통해 특정 라이브러리, 도구 또는 구성으로 실행 환경을 맞춤설정할 수 있습니다.
- 스냅샷: 샌드박스의 상태를 저장하고 나중에 복원하여 체크포인트 또는 알려진 정상 상태 복원과 같은 수명 주기 관리를 지원할 수 있습니다.