코드 인터프리터에서 에이전트 컴퓨터로: 에이전트가 상태 저장 샌드박스를 필요로 하는 이유

코드 인터프리터에서 에이전트 컴퓨터로: 에이전트가 상태 저장 샌드박스를 필요로 하는 이유

에이전트는 작업에 지속적인 파일, 설치된 종속성, 브라우저 또는 미리보기 접근, 장기 실행 명령, 그리고 단일 코드 실행을 넘어서는 반복 가능한 출력 검토가 필요할 때 상태 저장 샌드박스를 필요로 합니다. 코드 인터프리터는 여전히 경계가 명확한 계산, 차트, 일회성 스크립트에 유용합니다. 에이전트가 저장소를 편집하고, 실패한 테스트를 재시도하고, 생성된 아티팩트를 유지하고, 웹 UI를 검사하거나, 작업을 인간에게 다시 넘겨야 하는 순간, 워크스페이스나 에이전트 컴퓨터에 더 가까운 것이 필요합니다.

코드 인터프리터에서 에이전트 컴퓨터로 무엇이 바뀌었나?

초기 ‘코드 인터프리터’ 기능은 좁지만 중요한 문제를 해결했습니다. 모델이 코드(보통 Python)를 작성하고 실행하여 대화에 첨부된 파일을 처리하도록 하는 것입니다. 이것은 많은 데이터 작업에 충분합니다. 사용자는 CSV를 업로드하고, 변환을 요청하고, 차트를 얻고, 출력을 다운로드할 수 있습니다.

에이전트 작업은 더 넓은 표면적을 가집니다. 코딩 에이전트는 프로젝트를 클론하고, 종속성을 설치하고, 파일을 편집하고, 테스트를 실행하고, 로그를 검사하고, 개발 서버를 시작하고, 미리보기를 열고, 결과를 수정하고, 검토자가 변경 사항을 확인할 수 있을 만큼 오랫동안 상태를 유지해야 할 수 있습니다. 브라우저 에이전트는 쿠키, 다운로드된 파일, 스크린샷, DOM 상태, 그리고 실패한 단계를 재생할 방법이 필요할 수 있습니다. 연구 또는 평가 에이전트는 나중에 검사할 수 있도록 아티팩트와 로그를 유지하는 수백 개의 격리된 작업자가 필요할 수 있습니다.

이것이 용어가 변화하는 이유입니다:

  • 코드 인터프리터 는 짧은 스크립트와 생성된 출력을 위한 관리형 실행 도구를 의미합니다.
  • 샌드박스 는 신뢰할 수 없거나 에이전트가 생성한 작업이 호스트 시스템으로부터 떨어져 실행될 수 있는 격리된 환경을 의미합니다.
  • 워크스페이스 는 작업 상태가 여러 단계에 걸쳐 축적될 수 있는 파일 기반 환경을 의미합니다.
  • 에이전트 컴퓨터 는 파일, 명령, 패키지, 브라우저 또는 UI 접근, 로그, 미리보기, 아티팩트, 수명 주기 제어, 재설정 또는 스냅샷 옵션을 갖춘 보다 완전한 런타임을 의미합니다.

이 용어들은 겹칩니다. 유용한 구분은 브랜딩이 아니라 에이전트가 필요한 상태와 검토 표면의 양입니다.

핵심 용어는 무엇을 의미하나요?

개념 주요 역할 일반적인 상태 모델 최적의 사용처
코드 인터프리터 생성된 코드를 실행하고 출력 반환 단기 세션 상태 계산, 파일 변환, 차트, 작은 스크립트
샌드박스 호스트 및 다른 세션으로부터 실행 격리 일시적 또는 지속적 신뢰할 수 없는 코드 실행, 명령 실행, 브라우저 자동화
워크스페이스 파일과 환경 컨텍스트를 함께 유지 지속적 파일 시스템 또는 복원 가능한 이미지 코딩 에이전트, 데이터 프로젝트, 작업 인계, 반복 가능한 검토
에이전트 컴퓨터 에이전트에게 도구와 수명 주기 제어 기능이 있는 작업 환경 제공 로그, 아티팩트, 미리보기, 재설정/스냅샷 경로가 있는 상태 저장 런타임 다단계 소프트웨어 작업, 브라우저 에이전트, 평가, 장기 실행 워크플로

동일한 제품이 둘 이상의 상자를 포함할 수 있습니다. 상태 저장 샌드박스는 워크스페이스처럼 작동할 수 있습니다. 터미널, 브라우저, 아티팩트 및 수명 주기 관리를 갖춘 워크스페이스는 에이전트 컴퓨터처럼 느껴지기 시작합니다. 평가 질문은 에이전트가 무엇을 할 수 있는지, 어떤 상태가 유지되는지, 그리고 인간이 결과를 얼마나 안정적으로 검사하거나 재설정할 수 있는지입니다.

일시적 코드 실행으로 충분한 때는 언제인가?

작업이 작고, 경계가 명확하며, 최종 출력으로 쉽게 확인할 수 있을 때는 일시적 실행이 여전히 올바른 기본값입니다.

다음과 같은 경우 단기 코드 인터프리터 스타일 환경을 사용하세요:

  • 입력 파일이 사전에 제공됩니다.
  • 작업이 하나 또는 몇 개의 스크립트 실행으로 완료될 수 있습니다.
  • 출력이 차트, 표, 변환된 파일 또는 계산 결과입니다.
  • 관리형 환경 이상의 패키지 설치가 필요하지 않습니다.
  • 사용자가 실행 중인 앱, 브라우저 상태 또는 긴 명령 로그를 검사할 필요가 없습니다.
  • 답변이 전달되면 세션을 폐기할 수 있습니다.

예를 들어, 지원 분석가가 어시스턴트에게 티켓을 카테고리별로 그룹화하도록 요청하는 경우 지속적인 워크스페이스가 필요하지 않습니다. 데이터 분석가가 일회성 시각화를 요청하는 경우 브라우저 접근이나 스냅샷이 필요하지 않을 수 있습니다. 작업에 필요한 것보다 더 많은 인프라를 추가하면 수명 주기, 비용 및 보안 검토가 더 어려워질 수 있습니다.

에이전트가 상태 저장 샌드박스를 필요로 하는 때는 언제인가?

에이전트가 단순히 답변을 계산하는 것이 아니라 워크플로를 통해 작동할 때 상태 저장 샌드박스가 중요해집니다.

파일이 여러 단계에 걸쳐 유지되어야 함

에이전트는 종종 중간 파일(다운로드된 소스 데이터, 생성된 코드, 테스트 픽스처, 빌드 아티팩트, 스크린샷, 보고서, 로그)을 생성합니다. 각 실행이 깨끗한 상태에서 시작되면 에이전트는 반복적으로 컨텍스트를 재구성하거나 너무 많은 상태를 모델 프롬프트에 밀어넣어야 합니다.

상태 저장 파일 시스템은 에이전트에게 컨텍스트 창 외부의 작업 메모리를 제공합니다. 또한 인간이 검사할 구체적인 대상을 제공합니다.

종속성을 설치하거나 재사용해야 함

많은 실제 작업은 기본 런타임에 없는 패키지에 의존합니다. 코딩 에이전트는 npm ci, pip install, Playwright 브라우저, 컴파일러 또는 프로젝트별 바이너리가 필요할 수 있습니다. 데이터 에이전트는 프로덕션과 일치하는 라이브러리 버전이 필요할 수 있습니다.

이러한 종속성이 모든 명령 후에 사라지면 에이전트는 시간을 낭비하고 더 많은 실패 지점을 만듭니다. 템플릿과 스냅샷은 팀이 매번 실행할 때마다 환경을 재구축하는 대신 알려진 환경에서 시작하는 데 도움이 됩니다.

명령이 한 번의 모델 턴보다 오래 실행될 수 있음

빌드, 테스트, 크롤러, 마이그레이션, 훈련 작업 및 평가 도구는 단일 응답 주기보다 오래 걸릴 수 있습니다. 에이전트는 명령을 시작하고, 출력을 모니터링하고, 부분적 실패로부터 복구하고, 로그를 캡처해야 합니다.

이를 위해서는 프로세스 상태가 필요합니다. 또한 타임아웃 제어, 취소 및 모델이 다음 단계로 이동한 후 결과를 검색할 방법이 필요합니다.

브라우저 및 미리보기 접근이 작업의 일부가 됨

많은 에이전트 워크플로는 시각적이거나 웹 중심입니다:

  • 코딩 에이전트가 로컬 웹 앱을 시작하고 렌더링된 페이지를 확인합니다.
  • 브라우저 에이전트가 사이트를 탐색하고, 파일을 다운로드하고, 양식을 작성하거나, 스크린샷을 캡처합니다.
  • 검토 에이전트가 차트, 보고서 또는 데모 페이지가 실제로 렌더링되는지 확인합니다.

이러한 작업을 위해 환경은 표준 출력 이상이 필요합니다. 포트, 미리보기 URL, 브라우저 자동화, 스크린샷 또는 에이전트와 검토자가 결과를 볼 수 있는 다른 아티팩트 경로가 필요합니다.

인간 검토에는 반복 가능한 증거가 필요함

에이전트는 “테스트 통과” 또는 "앱이 올바르게 보입니다"라고 말할 수 있지만, 프로덕션 팀은 반복 가능한 증거가 필요합니다. 좋은 런타임은 다른 사람이나 프로세스가 검토할 수 있을 만큼 오랫동안 로그, 생성된 파일, 스크린샷 및 미리보기 링크를 유지합니다.

이것이 상태 저장 샌드박스가 협업 모델을 변화시키는 지점입니다. 샌드박스는 모델을 위한 도구일 뿐만 아니라 검토 아티팩트이기도 합니다.

상태 저장 에이전트 샌드박스는 무엇을 보존해야 하나?

상태는 의도적일 때만 유용합니다. 상태 저장 샌드박스는 무엇이 유지되고, 무엇이 재설정되며, 무엇이 재사용 가능한 시작점이 될 수 있는지 명확히 해야 합니다.

파일 시스템 상태

파일 시스템은 에이전트 작업의 기본 단위입니다. 소스 파일, 생성된 출력, 테스트 아티팩트, 로그, 스크린샷 및 다운로드된 입력을 보유해야 합니다. 또한 SDK, CLI 또는 UI를 통해 파일을 나열, 읽기, 쓰기, 업로드 및 다운로드하기 쉬워야 합니다.

런타임 및 패키지 상태

런타임은 작업에 필요한 언어와 패키지 관리자를 지원해야 합니다. 코딩 에이전트의 경우 일반적으로 셸 명령, 프로젝트 수준 종속성 및 준비된 환경을 재사용하는 기능을 의미합니다. 브라우저 에이전트의 경우 브라우저 바이너리 및 자동화 프레임워크를 포함할 수 있습니다.

네트워크 및 웹 접근

네트워크 접근은 모호한 개방성 대신 신중한 정책이 필요합니다. 일부 에이전트는 아웃바운드 패키지 다운로드, API 호출 또는 웹 브라우징이 필요합니다. 다른 에이전트는 더 엄격한 송신 규칙으로 실행되어야 합니다. 팀은 런타임이 샌드박스가 도달할 수 있는 대상을 결정하고 해당 선택이 어떻게 기록되는지 평가해야 합니다.

미리보기 및 아티팩트 캡처

에이전트 출력에는 종종 텍스트 이상이 포함됩니다. 파일, 스크린샷, 브라우저 세션, 노출된 포트, 웹 미리보기 및 명령 로그에 대한 지원을 찾으세요. 이러한 아티팩트는 검토자가 에이전트의 주장을 신뢰하는 것에서 실제 결과를 확인하는 것으로 이동하는 방법입니다.

수명 주기 제어

상태 저장이 영구적을 의미하지는 않습니다. 런타임은 생성, 타임아웃, 가능한 경우 일시 중지/재개, 종료 및 정리를 지원해야 합니다. 또한 모든 세션을 영원히 보존하지 않고도 준비된 환경을 재사용할 수 있도록 템플릿 또는 스냅샷을 지원해야 합니다.

재설정 및 스냅샷 경로

에이전트는 실수를 합니다. 실용적인 에이전트 컴퓨터에는 깔끔한 재설정 경로와 위험한 작업 전에 좋은 상태를 캡처하는 방법이 필요합니다. 스냅샷은 설정 후, 종속성 설치 후 또는 장기 평가 실행 전에 유용합니다.

팀은 에이전트 런타임을 어떻게 평가해야 하나?

평가 기준은 공급업체의 주장과 분리되어야 합니다. 올바른 런타임은 워크플로, 위험 프로필 및 검토 프로세스에 따라 달라집니다.

기준 질문할 사항 중요한 이유
수명 주기 환경은 어떻게 생성, 일시 중지, 재개, 타임아웃 및 삭제되나요? 버려진 세션과 통제되지 않은 비용 방지
파일 시스템 에이전트와 검토자가 파일과 아티팩트를 검사할 수 있나요? 다단계 작업을 검토 가능하게 함
패키지 설치 종속성을 설치, 캐시, 템플릿화 또는 스냅샷할 수 있나요? 설정 반복 및 드리프트 감소
명령 실행 로그, 종료 코드, 타임아웃 및 백그라운드 작업에 접근할 수 있나요? 실패를 디버깅 가능하게 함
브라우저 또는 미리보기 접근 에이전트가 렌더링된 출력을 검사하거나 브라우저를 자동화할 수 있나요? 웹 앱, UI 작업 및 시각적 검토 지원
네트워크 정책 어떤 아웃바운드 접근이 허용되며 어떻게 제어되나요? 패키지 가져오기, 웹 브라우징 및 외부 호출로 인한 위험 감소
격리 샌드박스를 서로 및 호스트로부터 분리하는 경계는 무엇인가요? 런타임이 적합한 코드 및 데이터 유형 결정
템플릿 및 스냅샷 팀이 알려진 양호한 환경을 재사용할 수 있나요? 재현성 향상
인간 인계 검토자가 동일한 파일, 로그, 스크린샷 또는 미리보기를 볼 수 있나요? 런타임을 검토 가능한 아티팩트로 전환
비용 모델 청구가 세션 시간, CPU, 메모리, 스토리지 또는 동시성에 연결되어 있나요? 에이전트가 병렬로 실행될 때 예상치 못한 비용 방지

보안에 민감한 질문은 정확한 문서와 제품 검토가 필요합니다. 어떤 샌드박스도 마법의 보호로 취급하지 마십시오. 격리, 네트워크 접근, 비밀 처리 및 로그는 모두 명시적인 설계 선택이 필요합니다.

Novita Agent Sandbox는 어디에 적합한가?

Novita Agent Sandbox는 격리되고 상태 저장된 실행 환경이 필요한 에이전트 워크플로를 위해 설계되었습니다. Agent Sandbox 개요는 샌드박스를 에이전트가 명령을 실행하고, 파일을 읽고 쓰고, 종속성을 설치하고, 브라우저 기반 워크플로를 사용할 수 있는 환경으로 설명합니다. 또한 준비된 시작 환경을 위한 템플릿과 구성된 샌드박스 상태를 저장하기 위한 스냅샷을 정의합니다.

이는 에이전트 워크로드가 다음을 필요로 할 때 Novita를 평가 대상으로 만듭니다:

  • 격리된 환경 내 코드 실행;
  • 여러 단계에 걸친 파일 접근;
  • 종속성 설치 및 재사용 가능한 준비 환경;
  • 브라우저 중심 워크플로;
  • 인간이 검사할 수 있는 생성된 아티팩트;
  • SDK 또는 CLI를 통한 수명 주기 제어;
  • 모델 API와 에이전트 샌드박스 인프라를 결합한 플랫폼 방향.

이것이 모든 에이전트가 상태 저장 샌드박스를 필요로 한다는 의미는 아닙니다. 애플리케이션이 사용자가 업로드한 파일에 대한 일회성 Python 실행만 필요로 한다면 코드 인터프리터 패턴이 더 간단할 수 있습니다. 팀에 이미 엄격한 송신, 비밀 처리, 감사 및 검토 흐름을 갖춘 내부 런타임이 있다면, 외부 샌드박스가 이러한 제어를 약화시키지 않으면서 개발자 속도를 향상시키는지가 문제입니다.

Novita Agent Sandbox를 모든 실행 경로에 대한 포괄적인 대체물이 아닌 아키텍처 결정의 일부로 사용하십시오.

실용적인 결정 규칙

런타임을 선택하기 전에 한 가지 질문을 하십시오:

첫 번째 모델 턴이 끝난 후 두 번째 사람이나 에이전트가 환경에서 이 작업을 재개, 검사 또는 재현할 수 있습니까?

대답이 '아니오’이고 출력이 여전히 유용하다면 일시적 실행으로 충분할 것입니다. 대답이 '예’여야 한다면 작업은 상태 저장 샌드박스 또는 에이전트 컴퓨터로 이동하고 있습니다.

프로덕션 에이전트 시스템의 경우, 이는 종종 기본 패턴이 됩니다:

  1. 깨끗한 템플릿 또는 스냅샷에서 시작합니다.
  2. 에이전트가 격리된 런타임 내에서 작업하도록 합니다.
  3. 파일, 로그, 스크린샷, 미리보기 및 명령 결과를 캡처합니다.
  4. 검토를 위해 환경을 충분히 오래 유지합니다.
  5. 결과에 따라 재설정, 삭제 또는 스냅샷을 수행합니다.

이 워크플로는 모델에게 행동할 공간을 제공하면서 결과를 검사 가능하게 유지합니다.

추천 문서

FAQ

코드 인터프리터와 에이전트 샌드박스는 같은 것인가요?

아니요. 코드 인터프리터는 일반적으로 생성된 코드를 실행하고 관리형 세션 내에서 출력을 반환하는 데 중점을 둡니다. 에이전트 샌드박스는 명령, 파일, 종속성, 브라우저 워크플로, 수명 주기 제어 및 검토 가능한 아티팩트를 위한 더 광범위한 격리 환경입니다.

모든 AI 에이전트가 상태 저장 샌드박스를 필요로 하나요?

아니요. 간단한 데이터 변환, 계산 및 일회성 스크립트는 일시적 실행에서 잘 작동할 수 있습니다. 에이전트는 워크플로가 지속적인 파일, 설치된 패키지, 장기 실행 프로세스, 브라우저 또는 미리보기 접근, 또는 아티팩트에 대한 인간 검토에 의존할 때 상태 저장 샌드박스가 필요합니다.

에이전트 컴퓨터란 무엇인가요?

에이전트 컴퓨터는 AI 에이전트에게 컴퓨터와 같은 도구(파일 시스템, 셸, 패키지, 브라우저 또는 UI 접근, 로그, 아티팩트, 수명 주기 제어 및 재설정 또는 스냅샷 옵션)를 제공하는 작업 환경입니다. 장기 실행 및 검토 가능한 에이전트 작업에 유용한 개념입니다.

스냅샷이 에이전트 워크플로에 중요한 이유는 무엇인가요?

스냅샷을 사용하면 팀이 구성된 환경을 저장하고 나중에 재사용할 수 있습니다. 반복적인 설정 작업을 줄이고, 재현성을 향상시키며, 에이전트가 위험하거나 실험적인 작업을 수행하기 전에 깔끔한 지점으로 돌아갈 수 있는 방법을 제공합니다.

팀은 샌드박스 보안에 대해 어떻게 생각해야 하나요?

샌드박스 보안을 아키텍처 결정으로 취급하십시오. 민감한 워크로드나 신뢰할 수 없는 코드를 실행하기 전에 격리 모델, 네트워크 접근, 비밀 처리, 로그, 수명 주기 정리 및 인간 검토 프로세스를 검토하십시오.