isolates

2 개의 포스트

cloudflare

에이전트에게 필요한 건 컨테이너가 아니라 컴퓨터입니다 — @cloudflare/computer 소개 (새 탭에서 열림)

가장 뛰어난 에이전트는 자체 컴퓨터처럼 사용할 수 있는 파일시스템, 셸, 도구, 실행 환경을 제공받는다는 것이 글의 핵심 주장입니다. Cloudflare는 이를 위해 `@cloudflare/computer`라는 에이전트 런타임을 공개 프리뷰로 제공하며, 격리 실행 환경(isolate)과 컨테이너를 하나의 공유 파일시스템 아래 결합합니다. 이를 통해 컨테이너만 사용하는 방식보다 비용과 확장성 문제를 줄이고, 수억~수십억 개의 동시 에이전트까지 확장하는 것을 목표로 합니다. ## 에이전트마다 컴퓨터를 제공하는 방식 - 코딩 에이전트는 파일시스템, 셸, 패키지, 실행 도구를 직접 사용하면서 환경을 조사하고 코드를 수정·실행·검증한다. - 이런 “컴퓨터”가 모델이 현실의 작업을 수행하는 익숙한 인터페이스가 된다. - `@cloudflare/computer`는 코드가 isolate, 컨테이너, 웹 브라우저 중 어디에서 실행되는지에 대한 세부 사항을 플랫폼이 처리하는 런타임이다. - 각 에이전트에 작업 공간과 실행 환경을 제공하면서 효율성과 확장성을 최적화한다. ## 컨테이너 중심 구조의 확장성 문제 - 초기에는 에이전트 전체를 컨테이너 안에서 실행하는 방식이 일반적이었다. - 최근에는 에이전트의 판단 루프와 실제 코드 실행 환경을 분리하고, 샌드박스를 도구로 호출하는 구조가 확산되고 있다. - 그러나 사용자마다 에이전트 전용 컨테이너를 제공하면 수억, 수십억 개의 동시 에이전트를 감당할 컴퓨팅 자원이 부족하다. - 이 때문에 에이전트 시스템에는 GPU뿐 아니라 막대한 양의 CPU 컴퓨팅 자원도 필요하다. ## Isolate와 컨테이너의 결합 - Cloudflare는 수년 전부터 빠르게 생성·삭제할 수 있고 수평 확장에 적합한 isolate를 핵심 컴퓨팅 단위로 개발해 왔다. - isolate는 다음과 같은 특성을 가진다. - 매우 빠른 시작과 종료 - 유휴 상태에서의 휴면 - 에이전트 상태 저장 - 신뢰할 수 없는 코드를 실행하기 위한 추가 isolate 생성 - 대규모 수평 확장 - Cloudflare의 기존 구조에서는 Durable Object 안에서 에이전트 루프를 isolate로 실행하고, 무거운 작업이 필요할 때만 연결된 컨테이너를 도구로 호출한다. - 즉, 가벼운 작업은 isolate에서 처리하고 Linux, npm, 네이티브 바이너리 등이 필요한 작업만 컨테이너에서 실행해 성능과 비용을 조절한다. - `@cloudflare/computer`는 개발자가 이 여러 컴퓨팅 요소를 직접 조합하지 않아도 되도록 더 단순한 추상화를 제공하려는 실험이다. ## 공유 파일시스템 기반 작업 공간 - 에이전트에게 작업에 필요한 파일과 실행 환경이 미리 준비된 내구성 있는 파일시스템을 제공한다. - 에이전트는 작업 성격에 따라 실행 환경을 선택할 수 있다. - 파일 조작, 데이터 처리, Git 저장소 관리는 isolate에서 실행 - Linux 명령, npm, 네이티브 바이너리가 필요한 작업은 컨테이너에서 실행 - isolate와 컨테이너는 동일한 파일을 사용하며, 변경 사항은 원본 파일시스템과 동기화된다. - 파일시스템은 Git 저장소, 스토리지 버킷, 임의의 파일을 대상으로 사용할 수 있다. - 파일 읽기·쓰기·수정은 Code Mode나 Bash 명령으로 수행할 수 있다. - 모든 작업은 다음 방식으로 관리된다. - 권한 제어 - 감사(audit) - 관찰 및 추적(observability) - 따라서 에이전트가 수행할 수 있는 변경 범위를 세밀하게 제한하고, 어떤 작업을 했는지 기록으로 남길 수 있다. ## 사용 방법과 에이전트 통합 - 패키지는 npm으로 설치한다. ```bash npm install @cloudflare/computer ``` - Durable Object에 `Workspace`를 생성해 가상 파일시스템과 실행 런타임을 연결한다. - `Workspace`는 Durable Object의 저장소를 이용해 에이전트별 상태와 파일을 지속적으로 보관한다. - 예시에서는 `@cloudflare/think` 기반 에이전트가 버그 트리아지를 수행하도록 구성한다. - 시스템 프롬프트를 통해 에이전트가 다음 작업을 수행하게 할 수 있다. - `/workspace/repo`의 프로젝트 조사 - 버그 재현 - 안전한 경우 집중적인 수정 - 검증 명령 실행 - 변경 내용과 실행한 명령, 검증 결과 보고 - `@cloudflare/computer`는 기본 실행 백엔드 외에도 개발자가 직접 백엔드를 작성할 수 있다. - 제공된 `CloudflareContainerBackend`를 사용하면 Workspace를 Cloudflare Container와 연결할 수 있다. - `withWorkspaceContainer` 같은 헬퍼를 통해 에이전트 Durable Object와 컨테이너를 결합한다. ## 실용적인 의미 - 가벼운 작업은 isolate로 처리하고 무거운 작업만 컨테이너로 넘기는 구조가 대규모 에이전트 서비스에 적합하다. - 에이전트별 전용 컨테이너를 항상 실행하는 방식보다 자원 사용량과 비용을 줄일 가능성이 크다. - 파일 변경 권한과 실행 기록을 통제할 수 있어 코드 수정 에이전트, 버그 트리아지, 자동화된 개발 작업에 유용하다. - 현재는 초기 공개 프리뷰이므로, 실제 도입 시 지원되는 백엔드와 API 안정성, 작업 격리 수준, 비용 구조를 확인하는 것이 좋다.

cloudflare

에이전트 위크에 오신 것을 환영합니다 (새 탭에서 열림)

AI 에이전트의 시대가 도래함에 따라 기존의 컨테이너 기반 클라우드 인프라는 확장성과 비용 측면에서 한계에 직면하고 있습니다. 클라우드플레어는 일대다(1:N) 방식의 전통적인 아키텍처 대신, 개별 에이전트마다 독립적인 실행 환경을 즉시 제공할 수 있는 격리(Isolate) 기반의 서버리스 기술이 미래 인터넷의 핵심이 될 것이라고 주장합니다. 에이전트의 대중화를 위해서는 수 밀리초 안에 실행되고 자원 소모가 적은 가벼운 컴퓨팅 환경으로의 전환이 필수적이라는 결론입니다. **기존 클라우드 모델과 에이전트의 충돌** * 스마트폰 시대를 거치며 발전한 현재의 클라우드는 소수의 마이크로서비스 인스턴스가 다수의 사용자를 처리하는 '일대다(One-to-Many)' 모델을 기본으로 합니다. * 반면 AI 에이전트는 한 명의 사용자가 하나의 특정 작업을 수행하기 위해 고유한 실행 환경을 점유하는 '일대일(One-to-One)' 모델을 요구합니다. * 기존 애플리케이션이 정해진 메뉴를 제공하는 '레스토랑'이라면, 에이전트는 작업마다 다른 도구와 재료를 사용하는 '개인 요리사'와 같아서 기존의 컨테이너 방식으로는 이를 효율적으로 수용하기 어렵습니다. **에이전트 대중화를 가로막는 확장성 산식** * 수억 명의 지식 노동자가 동시에 에이전트를 사용할 경우, 기존 컨테이너 방식으로는 수백만 대의 서버 CPU가 필요하며 이는 현재 가용 가능한 컴퓨팅 용량을 수십 배 초과합니다. * 컨테이너는 실행 시 수백 메가바이트의 메모리를 소모하고 시작 속도가 느려, 에이전트 한 대당 운영 비용이 매우 높게 형성됩니다. * 이러한 경제적 한계 때문에 현재 에이전트 도구들은 높은 비용을 정당화할 수 있는 코딩 도구 등 일부 영역에만 국한되어 있습니다. **V8 Isolate 기술을 통한 인프라 혁신** * Cloudflare Workers의 기반인 V8 Isolate 기술은 컨테이너 대비 시작 속도는 약 100배 빠르고(수 밀리초), 메모리 사용량은 100배가량 효율적입니다. * 'Dynamic Workers' 환경을 통해 요청이 들어올 때마다 실시간으로 에이전트 실행 환경을 할당하고 작업 종료 즉시 폐기함으로써 하드웨어 밀도를 극대화할 수 있습니다. * Isolate는 에이전트가 필요로 하는 최소한의 자원만 할당하므로, 전 세계 수십억 명의 사용자를 위한 에이전트 서비스 운영에 필요한 경제적 타당성을 제공합니다. **전환기의 과제와 하이브리드 전략** * 현재는 에이전트가 사람이 사용하던 웹사이트를 탐색하기 위해 헤드리스 브라우저를 사용하는 '말 없는 마차(Horseless Carriage)' 단계에 머물러 있습니다. * 향후에는 에이전트가 직접 서비스를 호출하는 MCP(Model Context Protocol) 표준과 에이전트 전용 인증 방식이 확산될 것으로 보입니다. * 클라우드플레어는 파일 시스템과 바이너리 실행이 필수적인 코딩 에이전트를 위한 '컨테이너 기반 샌드박스'를 정식 출시함과 동시에, 가벼운 작업을 위한 Isolate 기술을 병행 지원하여 구시대와 신시대의 인프라를 연결할 계획입니다. 에이전트 중심의 서비스를 구축하려는 기업은 컨테이너 중심의 무거운 기존 설계에서 벗어나, 실행 밀도가 높고 비용 효율적인 Isolate 기반의 서버리스 아키텍처를 도입하여 대규모 사용자 환경에 대비할 것을 추천합니다.