
Continuum 구축하기: 단일 클립이 아닌 드라마 시리즈 전체를 촬영하는 에이전트
요약
Qwen과 Wan 모델을 기반으로 연속적인 마이크로 드라마를 제작하는 자율형 AI 쇼러너 'Continuum'을 소개합니다. 에이전트 크루가 대본 작성부터 영상 생성, 편집까지 수행하며 에피소드 간 캐릭터 일관성을 유지하는 것이 핵심입니다.
핵심 포인트
- Qwen과 Wan 모델을 활용한 자율형 AI 에이전트 구축
- 에피소드 간 캐릭터 정체성(Identity) 유지 기술 구현
- 대본, 스토리보드, 영상 생성, 음악, 편집의 통합 워크플로우
- 마이크로 드라마 시장의 성장성과 AI 적용 가능성 제시
Continuum은 Qwen Cloud와 함께하는 Global AI Hackathon Series(Track 2: AI Showrunner)를 위한 저의 참가작입니다. 코드: https://github.com/calderbuild/continuum
저는 지난 몇 주 동안 Qwen과 Wan을 기반으로 연속적인 세로형 마이크로 드라마 (micro-drama)를 제작하는 자율형 AI 쇼러너 (showrunner)인 Continuum을 구축하는 데 시간을 보냈습니다. 하나의 에이전트 크루 (agent crew)가 전제 조건과 출연진을 가져와서, 대본을 쓰고, 스토리보드를 만들고, 영상을 생성하고, 자체적으로 배경 음악을 입히고, 에피소드를 편집합니다. 그런 다음 에피소드 2를 위해 이 과정을 다시 반복하며, 두 번째 에피소드는 실제로 첫 번째 에피소드에 속해 있는 것처럼 보입니다. 그 마지막 부분이 핵심이며, 동시에 가장 어려운 부분이었습니다.
왜 마이크로 드라마인가, 그리고 왜 일관성이 모두가 마주하는 벽인가
세로형 마이크로 드라마 (Vertical micro-drama)는 틈새 시장이 아닙니다. 글로벌 시장 규모는 2025년에 약 110억 달러에 달했으며, 중국에서는 매달 추가되는 128,000개의 신규 타이틀 중 약 95%가 이미 어떤 방식으로든 AI의 손길을 거치고 있습니다. 이는 실질적이고 검증되었으며 수익을 창출하는 포맷이며, 빠르게 해외로 진출하고 있습니다. Qwen은 119개 언어를 지원하므로, 이 분야에서의 적합성은 거의 불공평할 정도입니다.
문제는 단일 클립 이상의 것을 원하게 되는 순간 나타납니다. 제가 살펴본 모든 도구인 Showrunner, AIDrama Studio, Topview는 멋진 장면 하나는 만들어 줄 수 있습니다. 하지만 그 어떤 것도 에피소드를 넘어 장면들 사이에서 캐릭터가 동일 인물처럼 보이게 유지할 수는 없습니다. 현재의 최첨단 기술 (state of the art)은 사람이 루프 안에 머물며 (human in the loop), 생성을 다시 시도하고 일치하는 테이크 (takes)를 직접 골라내는 방식입니다. 세상에 대한 기억을 유지하고 스스로의 드리프트 (drift)를 수정하는 에이전트는 아무도 없었습니다. 그 격차가 바로 Continuum이 존재하는 이유 전체입니다.
제가 실제로 구축한 것
핵심은 함께 작동하는 세 가지 요소입니다.
첫째, 시리즈 바이블 (Series Bible)입니다. 이는 에이전트가 촬영 전 읽고 촬영 종료 후 작성하는 JSON 문서입니다. 여기에는 각 캐릭터의 외형 프롬프트 (appearance prompt), 고정된 참조 이미지 (reference image), 소품 (props), 장소 (locations), 플롯 스레드 (plot threads), 그리고 감정적 아크 (emotional arc)가 담겨 있습니다. 이를 작동하게 만드는 규칙은 지루할 정도로 엄격합니다. 일단 캐릭터의 외형이 고정되면, 이후의 병합 (merges) 과정에서 새로운 소품이나 스레드를 추가할 수는 있지만 얼굴을 다시 쓸 수는 없습니다. 이 단 하나의 제약 조건이 모든 다중 샷 (multi-shot) 시도를 망치는 점진적인 표류 (slow drift)를 막아줍니다.
둘째, 비평가-최적화 루프 (critic-optimizer loop)입니다. 각 클립이 돌아온 후, Qwen-VL은 해당 클립 속 캐릭터를 에피소드 1의 앵커 프레임 (anchor frame)과 비교하여 한 줄의 이유와 함께 구조화된 정체성 점수 (identity score)를 반환합니다. 점수가 임계값 미만이면, 최적화 도구 (optimizer)가 샷 프롬프트 (shot prompt)를 다시 작성하고 촬영 감독 (cinematographer)이 다시 생성합니다. 횟수 제한이 있는 몇 번의 시도 끝에 가장 좋은 것을 선택합니다. 에이전트는 인간의 관찰 없이 스스로의 결과에 이의를 제기하고 이를 수정합니다.
셋째, 실제적인 일관성 수치입니다. 이는 막연한 주장이 아니라 동일한 Qwen-VL 비평가로부터 나옵니다. 이 모델은 각 에피소드의 캐릭터를 첫 등장 장면과 비교하여 정체성 일치도 (identity match)를 평균 냅니다. 0.98에 도달한 2개 에피소드 데모 시리즈의 경우, 완전히 다른 장면임에도 불구하고 동일한 탐정, 단발머리 (bob), 청록색 회로 문신 (cyan circuit tattoo)이 유지되었습니다. 이는 주장이 아닌 측정된 수치입니다. ffmpeg를 통한 SSIM은 의존성 없는 폴백 (fallback) 수단으로 유지되지만, 이는 픽셀을 점수화할 뿐 정체성을 점수화하지 않으므로 VL 판독가가 실질적인 의미를 갖습니다.
뇌(brain)에는 스크립팅과 프롬프트 최적화를 위해 Qwen3-max를, 시각적 비평가(visual critic)로는 Qwen-VL을 사용했습니다. 영상은 Qwen Cloud의 Wan text-to-video로 구동되며, 모든 프롬프트에 잠금된 룩(locked look)이 주입됩니다. Wan의 레퍼런스-투-비디오 모델(reference-to-video model)은 이 작업을 위해 설계되었기 때문에 정체성을 더욱 강화하는 다음 단계가 될 것입니다. 백엔드는 라이브 뷰를 위한 서버 전송 이벤트(server-sent events)를 사용하는 FastAPI로 구축되었으며, Alibaba Cloud Function Compute에 배포되도록 구조화되어 있습니다.
놀라웠던 점
Wan은 제가 예상했던 것보다 훨씬 잘 작동했습니다. 저는 모델과 모든 수직 프레임에서 싸워야 할 것이라고 가정했지만, 실제 첫 번째 시도만으로 일관성 있는 9:16 클립과 합리적인 움직임을 얻었습니다. 덕분에 출력 품질 문제로 씨름하며 예산에 책정했던 며칠을 절약할 수 있었고, 그 시간을 성경(Bible)과 비평가 루프(critic loop)에 할애했습니다.
두 번째 놀라움은 디버깅 우회 경로였습니다. Wan으로 보낸 비동기 제출 및 폴링 호출(async submit-and-poll calls)이 API 앞단의 프록시에서 간헐적으로 503 오류를 내며 실패하기 시작했고, 매번 촬영하는 장면마다 다르게 나타났습니다. 저는 이것을 제 코드의 버그로 보고 몇 시간을 추적하며 소모했지만, 결국 상위 시스템(upstream)의 불안정성 때문임을 받아들였습니다. 해결책은 화려하지 않았습니다. 503 오류를 재시도 가능(retryable)한 것으로 간주하고, 백오프(back off)하여 다시 폴링하는 것이었습니다. 첫 번째 응답을 신뢰하는 것을 멈추고 일시적인 실패에 대한 재시도를 시작하자, 파이프라인은 '5번 중 1번 실패'에서 사람의 개입 없이 전체 에피소드를 실행하는 수준으로 발전했습니다. 계속 배우는 교훈은 이것입니다: 호출이 작동해야 하는데 작동하지 않는다면, 로직을 다시 작성하기 전에 전송 계층(transport)부터 확인하세요.
세 번째는 예산이었습니다. 비디오 생성 비용이 제가 가장 두려워했던 부분이라, 구축하는 동안 720p 수직으로 렌더링하고 에피소드를 짧게 유지했습니다. 그 결과 전체 데모 시리즈가 무료 Wan 할당량 내에서 실행되었습니다. 무료 할당량이 거의 바닥날 무렵에는 사용한 만큼 지불(pay-as-you-go)로 흘러가는 것보다 명확한 지출 상한선(hard spending cap)을 설정했습니다. 비디오 생성으로 인해 잃을 것이라 예상했던 돈은 대부분 계좌를 떠나지 않았습니다.
다음 계획
뼈대는 자율적이며 해자(moat)가 작동하고 있으므로, 후속 작업은 깊이를 더하는 것에 관한 것입니다. Speech-to-video를 통한 입 모양이 일치하는 대화(Lip-synced dialogue)가 가장 명백한 과제입니다. 현재는 자막과 나레이션을 함께 제공하고 있는데, 이는 정직하지만 평범한 방식입니다. 그 다음으로는 일관성 점수 측정기(consistency scorer)를 벡터 인덱스(vector index)에 연결하여, 에이전트가 캐릭터를 매번 새로 도출하는 대신 라이브러리에서 불러올 수 있도록 하는 것입니다. 그리고 다국어 측면도 바로 눈앞에 놓여 있습니다. Qwen이 이미 여러 언어를 지원하므로, 하나의 시리즈를 동일한 바이블(Bible)로부터 수십 개의 시장에 출시할 수 있습니다.
한 명의 사람, 몇 주간의 시간, 그리고 주인공이 실제로 일관성을 유지하며 연속된 에피소드를 제작하는 에이전트. 이것이 제가 가능함을 증명하고 싶었던 것이며, 이제 그것은 실제로 작동합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기