
Seedance 2.0 캐릭터 일관성: 공식 가이드
같은 캐릭터를 유지하는 공식 방법을 정리했습니다. 참조 구문, 12개 입력 슬롯, 음성과 립싱크, 멀티숏 프롬프트를 다룹니다.
캐릭터 일관성은 Seedance 2.0이 지금과 같은 형태로 만들어진 이유입니다. 이 모델은 한 번의 생성에서 최대 9장의 이미지, 3개의 비디오 클립, 3개의 오디오 트랙을 참조로 받을 수 있으며[1], ByteDance의 공식 프롬프트 가이드는 대상을 특정 참조 이미지에 고정하는 구문까지 문서화하고 있습니다[2]. 커뮤니티에서 자주 보이는 “같은 캐릭터인데 다르게 나왔다”, “두 번째 참조를 무시했다” 같은 불만은 대부분 문서에 명시되어 있지만 거의 읽히지 않는 규칙으로 거슬러 올라갑니다.
이 가이드는 ByteDance의 공식 프롬프트 문서, API 레퍼런스, Dreamina 자체 튜토리얼에서 그 규칙을 모아 정리한 것입니다. 또한 공식 메커니즘이 없는 항목(요청 간 캐릭터 잠금, seed)과 플랫폼별로 구분해야 하는 항목(립싱크 문제)도 솔직하게 경계를 짚습니다.
핵심 요약
- Seedance 2.0의 입력 예산은 이미지 9장 + 비디오 3개 + 오디오 클립 3개입니다. 비디오와 오디오는 각각 총 15초로 제한되며, 오디오만 단독으로 보낼 수 없습니다[1].
- 공식 바인딩 구문이 있습니다. 번호가 지정된 이미지에서 대상을 정의하고(“subject@image 1”), 중요한 참조를 먼저 배치하세요. 순서가 가중치에 영향을 주기 때문입니다[2].
- ByteDance는 최대치가 아니라 4~5개의 참조를 권장합니다. 캐릭터마다 얼굴 사진 1장과 전신 사진 1장을 사용하고, 같은 얼굴의 다각도 세트는 피하라고 안내합니다[2].
- seed 매개변수와 영구 캐릭터 ID는 없습니다. 여러 비디오에서 일관성을 유지하려면 동일한 참조 세트를 재사용하고
return_last_frame으로 이어 붙여야 합니다[1][3]. - 음성 가이드는 실제로 존재하지만 립싱크 표현은 플랫폼별입니다. API 문서는 오디오 참조가 퍼포먼스를 유도한다고 설명합니다[1]. 명시적인 “lip-sync” 약속은 API가 아니라 Dreamina 문서에 나옵니다[4].
- 멀티숏에는 공식 패턴이 있습니다. 숏에 번호를 붙이고(“Shot 1… Shot 2… Shot 3…”), 숏별 정확한 시간 지정은 신뢰하기 어렵다고 간주하세요. ByteDance가 직접 경고한 내용입니다[2].
Seedance 2.0의 12개 참조 슬롯을 정확히 이해하기
Seedance 2.0은 각 항목이 역할을 선언하는 content 배열을 통해 참조를 받습니다. 문서에 명시된 한도는 참조 이미지 최대 9장(JPEG/PNG/WebP 등, 가로세로 비율 0.42.5, 한 변 3006,000픽셀, 각 30MB 미만), 참조 비디오 최대 3개이면서 총 15초 이하, 오디오 참조 역시 최대 3개이면서 총 15초 이하입니다[1]. 오디오는 대상이 아니라 보조 요소입니다. 다른 콘텐츠 없이 오디오만 보내는 요청은 API가 거부합니다[1].
거의 모든 사람이 놓치는 구조적 규칙이 하나 있습니다. 첫 프레임 모드와 멀티모달 참조 모드는 서로 배타적인 요청 형식입니다[1]. 모델에 애니메이션으로 만들 정확한 시작 프레임을 주거나, 여러 참조를 주어 새 장면을 구성하게 해야 합니다. 하나의 요청에서 이 두 가지 개념을 섞는 것이 “내 이미지를 무시했다”는 결과로 가는 가장 빠른 길입니다.
가장 혼란스러운 거부를 일으키는 규칙도 있습니다. 실존 인물의 얼굴은 참조로 직접 업로드할 수 없습니다. 이 제한과 동의 기반의 공식 사용 경로는 별도 주제이며, 사용 불가 오류 가이드에서 자세히 다룹니다.
캐릭터를 고정하는 공식 구문
ByteDance의 프롬프트 가이드는 바인딩을 매우 구체적으로 설명합니다. 표준 패턴은 번호가 지정된 이미지에서 각 대상을 정의하며, 문서에서는 이를 “subject@image 1”이라는 축약형으로 표시합니다[2]. 출시 블로그도 예시 프롬프트에서 같은 @ 형식의 참조를 사용하고[5], Dreamina 튜토리얼은 편집기 안에서 이를 @AssetName으로 보여 줍니다[6]. 이 구문의 목적은 모호함을 없애는 것입니다. 참조가 여러 개일 때 어떤 이미지가 얼굴을, 어떤 이미지가 의상을, 어떤 이미지가 장소를 담당하는지 프롬프트로 명확히 지정합니다.
가이드는 이 구문과 함께 다음 네 가지 실전 규칙을 제시합니다[2].
- 참조는 12개가 아니라 4~5개만 사용하세요. 문서는 슬롯을 최대한 채우지 말라고 권장합니다. 에셋을 하나 더 넣을 때마다 집중도가 분산됩니다.
- 캐릭터마다 얼굴 사진 1장과 전신 이미지 1장을 사용하세요. 여러 각도의 이미지를 쌓는 것보다 이 조합이 정체성을 더 잘 고정합니다.
- 같은 사람의 멀티뷰 세트를 피하세요. ByteDance가 명시적으로 권장하지 않습니다. 정체성 이탈을 막기보다 오히려 유발할 수 있습니다.
- 중요도순으로 배치하세요. 프롬프트에서 앞에 올수록 영향력이 큽니다. 캐릭터를 장소보다 앞에, 장소를 무드보드보다 앞에 둡니다.
대부분의 “일관성 해킹” 영상이 다시 포장해 판매하는 비결은 이것이 전부입니다. 대상을 명시적으로 정의하고, 더 적고 더 좋은 참조를 넣으며, 의도적으로 순서를 정하세요.
여러 비디오에서 같은 캐릭터 유지하기
문서가 그어 놓은 경계가 있으며 어떤 튜토리얼도 이를 흐려서는 안 됩니다. Seedance 2.0에는 영구 캐릭터 ID, seed 입력, 요청 간 메모리가 없습니다. ByteDance의 매개변수 레퍼런스와 reAPI의 API 모두 seed를 제공하지 않습니다[1][3]. 따라서 “Seedance가 seed 번호를 사용하는가”라는 질문의 답은 명확합니다. 아니요. 결정성 제어는 seed가 아니라 참조를 기반으로 합니다.
대신 실제 제작에서 효과가 있는 방법을 순서대로 살펴보겠습니다.
참조 세트를 고정하세요. 모든 요청에서 같은 캐릭터 이미지, 같은 순서, 같은 바인딩 문구를 사용합니다. Seedance 2.0의 일관성은 동일한 입력에서 나오므로 이 세트를 프롬프트와 함께 보관하고, 무엇이든 바뀌면 새 캐릭터 버전으로 취급하세요.
return_last_frame으로 연결하세요. API는 생성 결과의 마지막 프레임을 반환할 수 있습니다[1]. 이를 다음 클립의 첫 프레임으로 넘기면 연결 지점에서 정체성을 다시 뽑지 않고도 장면 간 연속성을 만들 수 있습니다.
생성된 얼굴은 허용된 방식으로 다시 입력하세요. 플랫폼이 지난 30일 이내에 해당 계정용으로 생성한 콘텐츠는 얼굴이 포함되어 있어도 신뢰할 수 있는 입력으로 인정됩니다[7]. 얼굴 관련 규칙 아래에서도 반복적인 캐릭터 작업이 가능한 이유가 바로 이것입니다.
대규모 평가에서 ByteDance의 기술 보고서는 동급 모델의 대상 일관성 평가에서 Seedance 2.0을 1위로 평가합니다[5]. 위의 방법은 그 능력을 단일 클립이 아니라 시리즈 전체에서 실제로 활용하는 방식입니다.
음성, 음악 그리고 립싱크 문제
Seedance 2.0의 오디오 참조는 출력의 소리, 퍼포먼스의 타이밍, 목소리의 성격이라는 세 가지 요소를 유도합니다. API는 reference_audio 역할로 최대 3개, 총 15초의 클립을 받습니다[1]. “내 캐릭터가 이 노래를 부르게 해 줘”라는 작업 흐름은 말 그대로입니다. 트랙을 첨부하고(API 플랫폼에서는 공개 URL), 이미지에서 캐릭터를 바인딩한 뒤 퍼포먼스를 프롬프트로 작성하세요.
립싱크에 관해서는 출처별 설명이 갈리므로 정확히 구분할 필요가 있습니다. ByteDance의 API 문서는 오디오-비디오 공동 생성과 오디오 유도 출력을 설명하지만 “lip-sync”라는 단어는 나오지 않습니다. 이를 약속하는 쪽은 Dreamina의 제품 문서로, 음성 샘플이 목소리 특성을 유도하고 “aligns lip-sync, pacing, expressions”라고 명시합니다[4]. 실제로는 같은 모델 계열이 두 플랫폼을 구동하지만, 파이프라인에서 입 모양의 정확한 동기화가 계약상 필요하다면 문서 문구를 인용하는 대신 실제 자료로 직접 테스트하세요. API 측 표현은 의도적으로 보장 범위가 더 좁습니다.
클립 간 음성 일관성도 시각적 일관성과 같은 논리를 따릅니다. 매번 같은 슬롯에 같은 음성 샘플을 재사용하세요. 고정할 수 있는 voice ID가 없으므로 샘플 자체가 ID입니다.
생성 과정에서 살아남는 멀티숏 프롬프트
한 클립에 여러 숏을 넣는 공식 패턴은 번호가 지정된 스토리보드 문장입니다. “Shot 1: … Shot 2: … Shot 3: …” 형식으로 작성합니다[2]. 가이드가 직접 제시하는 경고는 두 가지입니다. 숏별 정확한 초 단위 타이밍은 안정적으로 지켜지지 않으므로 타임코드 대신 순서와 강조점을 작성하세요[2]. 또한 숏 수가 늘수록 복잡성도 커지므로 멀티숏 프롬프트에서는 참조를 줄이는 규칙이 두 배로 중요합니다.
한 번의 생성이 담을 수 있는 길이를 넘는 경우(Seedance 2.0은 15초로 제한됩니다[1]), 스토리보드 → 고정된 참조 세트로 클립별 프롬프트 작성 → return_last_frame으로 연결하는 순서를 따르세요. Seedance 2.5에서 예고된 30초 단일 패스 생성과 구간별 프롬프트 제어가 단축하려는 작업 흐름도 바로 이것입니다. 확인된 정보는 Seedance 2.5 출시 전 가이드에서 계속 추적합니다.
이 모든 작업을 API로 실행하려면 전체 참조 기능(이미지, 비디오, 오디오, 첫 프레임, 마지막 프레임 반환)을 reAPI의 Seedance 2.0에서 사용할 수 있습니다. 초 단위 요금제를 제공하며, 참조 모드 요청은 순수 텍스트-비디오 요청보다 저렴합니다[3].
자주 묻는 질문
Seedance 2.0은 참조 이미지를 몇 장까지 받을 수 있나요?
한 번의 요청에서 이미지 최대 9장, 비디오 3개(총 15초), 오디오 클립 3개(총 15초)를 받을 수 있습니다[1]. ByteDance의 공식 가이드는 최대치 대신 잘 고른 4~5개의 에셋을 사용하라고 권장합니다[2].
여러 Seedance 2.0 비디오에서 같은 인물을 유지하려면 어떻게 하나요?
하나의 참조 세트(얼굴 사진 + 전신 사진)를 고정하고, subject@image 구문으로 바인딩한 뒤 모든 요청에서 똑같이 재사용하고, return_last_frame으로 장면을 연결하세요[1][2]. 별도의 캐릭터 잠금 매개변수는 없으며 참조 세트 자체가 잠금 역할을 합니다.
Seedance 2.0은 seed 번호를 입력으로 사용하나요?
아니요. ByteDance가 문서화한 요청 스키마와 reAPI의 API 어디에도 seed 매개변수가 없습니다[1][3]. 반복 가능성은 동일한 참조와 프롬프트에서 나오며, 비트 단위가 아닌 느슨한 반복 가능성입니다.
Seedance 2.0은 Suno 노래에 립싱크할 수 있나요?
트랙을 오디오 참조로 첨부하고 보컬 퍼포먼스를 프롬프트로 지정하세요. API는 오디오 유도 생성을 문서화합니다[1]. 명시적인 립싱크 정렬 주장은 Dreamina 문서에서 나옵니다[4]. 출시 품질의 동기화가 필요하다면 자신의 영상으로 검증하세요.
Seedance 2.0은 오디오 클립을 몇 개까지 받을 수 있나요?
최대 3개, 총 15초 이하입니다. 오디오만 단독으로 사용할 수 없으며 요청에서 다른 콘텐츠와 함께 보내야 합니다[1].
Seedance 2.0 클립 하나에 여러 숏을 프롬프트로 작성하려면 어떻게 하나요?
공식 가이드에 따라 “Shot 1 / Shot 2 / Shot 3”처럼 번호가 지정된 스토리보드 형식으로 작성하세요. 가이드는 숏별 정확한 길이가 근사치라고도 경고합니다[2].
캐릭터의 얼굴이 거부된 이유는 무엇인가요?
실존 인물의 얼굴은 참조로 직접 업로드할 수 없습니다. 이는 모델 수준의 규칙이며 문서화된 동의 기반 예외가 있습니다[7]. 자세한 내용은 사용 불가 오류 가이드를 확인하세요.
일관성 플레이북을 한 문장으로
대상을 명시적으로 바인딩하고, 캐릭터를 먼저 둔 4~5개의 신중한 참조를 입력하며, 시리즈 전체에서 그 세트를 고정하고, 마지막 프레임을 통해 클립을 연결하고, 소리가 중요할 때는 같은 음성 샘플을 재사용하세요. 위의 모든 내용은 속설이 아니라 ByteDance의 공식 문서에서 나온 것이며, reAPI의 하나의 엔드포인트에서 모두 실행할 수 있습니다. 이것이 Seedance 2.0 캐릭터 일관성의 핵심입니다. 더 적고 더 좋은 참조를 매번 같은 방식으로 사용하세요.
참고 자료
- Volcano Engine / BytePlus(ByteDance). Seedance 2.0 API 레퍼런스 — content 역할, 참조 제한, 첫 프레임 배타성, return_last_frame. 2026년 7월 확인: docs.byteplus.com/en/docs/ModelArk/1520757
- Volcano Engine / BytePlus(ByteDance). Seedance 2.0 공식 프롬프트 가이드 — 대상 바인딩 구문, 참조 수와 순서, 멀티숏 패턴. 2026년 7월 확인: docs.byteplus.com/en/docs/ModelArk/2222480
- reAPI. Seedance 2.0 — API 문서 및 모델 페이지. 2026년 7월 확인: reapi.ai/docs/seedance-2-0
- Dreamina(CapCut). Seedance 2.0 도구 페이지 — 음성 샘플 및 립싱크 정렬. 2026년 7월 확인: dreamina.capcut.com/tools/seedance-2-0
- ByteDance Seed. Seedance 2.0 출시 블로그 및 기술 보고서(arXiv:2604.14148). 2026년 7월 확인: seed.bytedance.com/en/blog/seedance-2-0-official-launch
- Dreamina(CapCut). Seedance 2.0 프롬프트 튜토리얼 — @AssetName 참조 및 Multiframes. 2026년 7월 확인: dreamina.capcut.com/resource/seedance-2-0-prompt
- Volcano Engine / BytePlus(ByteDance). 생성 콘텐츠 및 동의 확인 에셋에 대한 신뢰할 수 있는 입력 예외. 2026년 7월 확인: docs.byteplus.com/en/docs/ModelArk/2291680
함께 읽기
- reAPI. Seedance 2.0 “Not Eligible”: 발생 이유와 해결 방법. reapi.ai/blog/seedance-not-eligible-explained
- reAPI. Seedance 2.0이란 무엇이며 어떻게 사용하나요? (2026 가이드). reapi.ai/blog/what-is-seedance-2-0-and-how-to-use-it
- reAPI. Seedance 2.5: 공개 출시 전에 알려진 내용. reapi.ai/blog/seedance-2-5-what-we-know-2026
작성자

카테고리
더 많은 게시물

Veo 3.1 vs Seedance 2.0: 2026년 비디오 모델 선택법
2026년 Veo 3.1과 Seedance 2.0 중 무엇을 선택할까요? 기능, 멀티샷, 오디오, 해상도와 가격을 출처가 있는 수치로 비교합니다.


Seedance 영상은 몇 초까지? 현재 15초, 다음은 30초
Seedance는 한 번에 4~15초를 생성합니다. 길이 설정, 긴 클립 비용, 장면 연결법, Seedance 2.5의 30초 생성 주장을 설명합니다.


2026년 가장 저렴한 Veo 3.1 API: 공급자별 실제 가격
Veo 3.1 API 가격은 Google 직접 호출 $0.40/sec부터 reAPI의 8초 클립당 $0.046까지입니다. 2026년 5월 5개 공급자 전체 가격 비교.
