ViMax: 아이디어를 멀티 에이전트로 단편 영상까지 만드는 영상 생성 프레임워크

ViMax 소개

ViMax는 텍스트로 입력한 아이디어나 각본을 여러 개의 전문 에이전트가 분업해 한 편의 영상으로 만들어내는 멀티 에이전트(Multi-Agent) 영상 생성 프레임워크입니다. 대부분의 AI 영상 생성 도구가 수 초 길이의 짧은 클립에 머무르고, 프레임이 넘어갈 때마다 등장인물과 배경이 제멋대로 바뀌는 문제를 겪는데, ViMax는 각본 작성부터 스토리보드 구성, 캐릭터 생성, 최종 영상 합성까지의 과정을 하나의 파이프라인으로 묶어 이 문제를 풀려고 합니다.

ViMax를 만든 HKUDS(홍콩대 데이터 인텔리전스 랩) 는 영상 제작 과정을 사람 제작진의 역할에 빗대어 감독(Director), 각본가(Screenwriter), 프로듀서(Producer), 영상 생성기(Video Generator) 를 한데 모은 구조라고 소개합니다. 사용자가 콘셉트 한 줄을 입력하면 이후 단계는 시스템이 자율적으로 처리하며, 사람은 기술적인 구현보다 이야기 자체에 집중할 수 있도록 설계되어 있습니다.

본 게시물에서는 ViMax가 지원하는 입력 방식, 멀티 에이전트 파이프라인의 동작 단계, 그리고 설치와 실행 방법을 정리합니다.

ViMax가 지원하는 네 가지 입력 방식

ViMax는 영상 제작의 출발점이 되는 입력을 네 가지 모드로 나눠 받습니다. 각 모드는 입력의 형태만 다를 뿐, 이후의 영상 생성 파이프라인은 공유합니다.

  • Idea2Video: 짧은 아이디어 한 줄을 입력하면 멀티 에이전트 워크플로우가 이야기 구성, 캐릭터 디자인, 제작 단계를 자동으로 채워 완결된 영상으로 만듭니다.
  • Novel2Video: 소설처럼 긴 글을 입력으로 받아, 서사를 압축하고 등장인물을 추적하며 장면 단위로 시각화해 에피소드형 영상 콘텐츠로 변환합니다.
  • Script2Video: 사용자가 직접 작성한 각본(screenplay)을 입력해 영상으로 만듭니다. 장면·대사·연출을 직접 통제하고 싶은 경우에 해당합니다.
  • AutoCameo: 사용자가 자신의 사진을 업로드하면 일관된 외형을 유지한 채 등장인물로 합성해, 여러 각본과 장면에 카메오로 등장하는 영상을 만듭니다.

ViMax의 멀티 에이전트 파이프라인

ViMax는 입력에서 출력까지를 여러 단계로 나누고, 중앙 오케스트레이션(Central Orchestration) 계층이 에이전트 스케줄링과 단계 전환, 재시도·폴백 로직을 관리합니다. 저자가 밝힌 주요 기술 단계는 다음과 같습니다.

각본 이해 단계에서는 RAG(Retrieval-Augmented Generation) 기반의 긴 각본 설계 엔진이 소설처럼 긴 이야기를 분석해 여러 장면으로 구성된 각본 형식으로 자동 분할합니다. 이때 핵심 줄거리 전개와 등장인물 대사가 새 구조 안에서 정확히 유지되도록 처리합니다. 이어지는 스토리보드 설계 단계는 사용자 요구사항과 목표 관객을 바탕으로 촬영 언어(cinematography)를 활용한 샷 단위 스토리보드를 만들어 영상 생성의 서사적 리듬을 잡습니다.

영상 합성에 들어가기 전, ViMax는 참조 이미지 선택과 일관성 검증에 상당한 비중을 둡니다. 현재 영상의 첫 프레임에 필요한 참조 이미지를 이전 타임라인의 스토리보드까지 고려해 지능적으로 선택하고, 선택된 참조 이미지와 시각적 순서를 토대로 이미지 생성기의 프롬프트를 자동으로 구성합니다. 생성 단계에서는 이미지를 병렬로 여러 장 만든 뒤 MLLM/VLM(멀티모달·시각 언어 모델) 을 통해 가장 일관된 이미지를 첫 프레임으로 고르는데, 저자는 이를 사람 제작자의 작업 방식을 모방한 것이라고 설명합니다.

마지막으로 같은 카메라에서 잡은 연속 샷을 병렬로 처리하는 고효율 병렬 샷 생성으로 제작 속도를 높입니다. 이 과정을 거쳐 프레임과 클립, 최종 영상, 로그, 작업 디렉토리 산출물이 출력 계층으로 모입니다.

ViMax 설치 및 사용법

ViMax는 Python 3.12 환경에서 동작하며, 환경 관리에는 uv 를 사용합니다. 공식 안내 기준 지원 운영체제는 Linux와 Windows입니다.

git clone https://github.com/HKUDS/ViMax.git
cd ViMax
uv sync

아이디어를 영상으로 만드는 경우, configs/idea2video.yaml 파일에서 대화 모델(chat model), 이미지 생성기(image generator), 영상 생성기(video generator) 세 부분의 모델과 API 키를 설정합니다.

chat_model:
  init_args:
    model: google/gemini-2.5-flash-lite-preview-09-2025
    model_provider: openai
    api_key: <YOUR_API_KEY>
    base_url: https://openrouter.ai/api/v1

image_generator:
  class_path: tools.ImageGeneratorNanobananaGoogleAPI
  init_args:
    api_key: <YOUR_API_KEY>

video_generator:
  class_path: tools.VideoGeneratorVeoGoogleAPI
  init_args:
    api_key: <YOUR_API_KEY>

working_dir: .working_dir/idea2video

그다음 main_idea2video.py 에 아이디어와 창작 요구사항을 적고 실행하면 됩니다.

idea = \
"""
If a cat and a dog are best friends, what would happen when they meet a new cat?
"""
user_requirement = \
"""
For children, do not exceed 3 scenes.
"""
style = "Cartoon"

대화 모델 제공자로는 OpenAI 호환 API 외에 MiniMax 모델도 사용할 수 있으며, 이 경우 model_provider: minimax 로 지정하면 base URL이 자동으로 설정됩니다. 직접 작성한 각본으로 영상을 만들려면 main_script2video.pyconfigs/script2video.yaml 을 같은 방식으로 설정한 뒤 장면 각본을 입력합니다.

ViMax의 라이선스

ViMax는 MIT 라이선스로 공개되어 있어 개인 및 상업적 목적으로 자유롭게 사용할 수 있습니다.

:github: ViMax 프로젝트 GitHub 저장소

더 읽어보기




이 글은 GPT 모델로 정리한 글을 바탕으로 한 것으로, 원문의 내용 또는 의도와 다르게 정리된 내용이 있을 수 있습니다. 관심있는 내용이시라면 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 덧글로 알려주시기를 부탁드립니다. :hugs:

:pytorch:파이토치 한국 사용자 모임:south_korea:이 정리한 이 글이 유용하셨나요? 회원으로 가입하시면 주요 글들을 이메일:love_letter:로 보내드립니다! (기본은 Weekly지만 Daily로 변경도 가능합니다.)

:wrapped_gift: 아래:down_right_arrow:쪽에 좋아요:+1:를 눌러주시면 새로운 소식들을 정리하고 공유하는데 힘이 됩니다~ :star_struck: