커뮤니티 세션: Vercel Workflow
원제 · Community Session: Vercel Workflow
핵심 요약
Vercel 워크플로 SDK는 오픈 소스 기반의 직관적인 장기 실행 코드 모델링을 제공하며, 로컬과 프로덕션 환경 간의 일관된 경험을 보장합니다.
하이라이트
Vercel 워크플로 SDK는 오픈 소스 프레임워크로, Dockerfile 문법처럼 장기 실행 코드를 직관적으로 설계하도록 돕습니다.
로컬 환경, Vercel 클라우드, Postgres 어댑터를 통해 동일한 코드로 다양한 인프라 환경에서 워크플로를 실행할 수 있습니다.
워크플로는 단계(steps), 훅(hooks), 슬립(sleeps)의 3가지 핵심 요소를 기반으로 백그라운드 파이프라인과 에이전트를 모델링합니다.
현재 개발 중인 SDK 5 베타 버전은 WASM 기반 스냅샷 런타임을 도입하여 이벤트 로그 크기 제한 없이 워크플로를 실행하는 것을 목표로 합니다.
워크플로의 네이티브 동시성 제어를 위해 'Lock' 기능을 추가하여 다중 워크플로 실행 시 분당 작업 처리량을 제한할 수 있습니다.
타임라인
워크플로의 기초 요소 및 에이전트 설계
워크플로는 일시 중지 및 재개가 가능한 단계, 외부 이벤트를 기다리는 훅, 그리고 최대 몇 달까지 대기 가능한 슬립 기능을 제공합니다. 이러한 요소를 조합하여 복잡한 백그라운드 프로세스를 모델링합니다. Durable Agent는 반복적인 AI 에이전트 작업을 워크플로 내에서 안정적으로 처리하도록 돕습니다.
- 워크플로는 단계, 훅, 슬립이라는 세 가지 기본 요소로 구성됩니다.
- Durable Agent 클래스는 LLM 호출과 도구 실행을 반복하는 장기 실행 작업을 오케스트레이션합니다.
SDK의 개방성 및 멀티 환경 지원
SDK는 장기 실행 코드를 표현하는 오픈 소스 프레임워크로, 실행 환경에 맞는 어댑터를 사용하여 동일한 코드를 어디서든 구동할 수 있습니다. 로컬 환경에서는 파일 시스템을 통해 데이터를 검사하고, Vercel에서는 종단간 암호화와 빠른 네트워킹을, Postgres 환경에서는 직접 관리 가능한 안정적인 지속성 계층을 제공합니다.
- 워크플로 SDK는 '월드(Worlds)' 어댑터 개념을 통해 특정 플랫폼에 종속되지 않습니다.
- 로컬 환경, Vercel, Postgres 어댑터가 현재 제공되며 Cloudflare와 AWS 어댑터도 개발 중입니다.
실전 활용 사례와 AI 에이전트 적응
공식 예제 저장소는 항공편 예약 앱, Postgres 실행 예시 등을 포함하며, v0의 '중지' 버튼 기능은 분산형 어보트 컨트롤러의 실제 사례입니다. SDK를 경량화하고 직관적인 JavaScript 패턴을 따르게 함으로써, AI 에이전트가 복잡한 문서 없이도 코드를 작성하고 이해하기 쉽게 설계되었습니다.
- 예제 저장소와 쿡북은 단순 코드를 넘어 분산형 어보트 컨트롤러와 같은 실전 패턴을 제공합니다.
- JavaScript의 Promise.race 패턴을 활용하여 에이전트가 병렬 작업과 타임아웃을 직관적으로 학습합니다.
규모 확장성과 SDK 5의 향후 계획
동시성 제한은 실행 환경의 특성을 따르지만, 이벤트 로그의 비대화는 장기 실행 워크플로의 잠재적 제약 요소입니다. 이를 해결하기 위해 SDK 5는 리플레이 문제를 제거하고 O(1) 성능을 구현하고자 합니다. 또한 새로운 Lock 요소로 다중 워크플로의 리소스 점유를 관리할 수 있게 됩니다.
- 현재 워크플로는 이벤트 로그 기반으로 동작하며 5,000단계 이상의 실행이 가능합니다.
- SDK 5는 WASM 기반 런타임을 통해 리플레이 문제를 해결하고 무제한 실행을 목표로 합니다.
- 네이티브 Lock 기능을 추가하여 분당 동시성 제어 및 규모에 맞춘 워크플로 관리를 지원합니다.
설명
인프라 관리는 Vercel Workflow에 맡기고, 일시 중지, 재개 및 상태 유지가 가능한 앱과 AI 에이전트 구축에 집중하는 방법을 알아보세요.
