-
Seedance 2.0 fast는 한글 손글씨를 보존할 수 있다 — diffusion 정설을 뒤집은 prompt 4축IT 2026. 5. 21. 22:00
📡 이 글은 BytePlus Seedance 2.0 fast 모델을 API로 직접 호출해서 영상을 만드는 사용자를 위한 글입니다. prompt 길이 제한, image_url role 지정 같은 세밀한 통제는 API로만 가능하기 때문입니다. ModelArk 콘솔에서 만드는 분들도 prompt 핵심 어휘는 동일하게 적용해 볼 수 있지만, 본문의 모든 결과를 그대로 재현하긴 어렵습니다.
"diffusion은 글자를 못 보존한다"는 통설
BytePlus Seedance 같은 AI 영상 모델로 한글이 적힌 사진을 영상화해 본 사람은 거의 다 같은 경험을 합니다. "아빠에게"라고 적힌 손편지가 모델을 거치고 나면 "아빠어계"가 되거나, 더 이상 글자라고 부르기 어려운 자모의 잔해로 변합니다. 이 현상은 한국어·중국어·일본어 같은 학습 분포가 sparse한 글자에서 더 심하고, 영어에서도 자주 일어납니다.
원인은 모델 구조 그 자체에 있습니다. diffusion 기반 비디오 모델은 입력 사진을 latent space로 한 번 압축한 다음, 매 프레임을 거기서 다시 디코딩합니다. 픽셀을 복사하는 게 아니라 자기 학습 분포에서 재추정하는 구조입니다. 그러니 손글씨처럼 모델이 잘 모르는 작은 시각 패턴은 그럴듯한 다른 패턴으로 흘러내리기 쉽습니다. 그래서 일반적인 결론은 "글자가 중요하면 AI는 ambience만 시키고 글자는 영상 위에 PNG로 후합성해라"였습니다.
이 결론은 절반만 맞다는 걸 최근에 깨달았습니다. 같은 Seedance 2.0 fast 모델이 같은 한글 손글씨 편지를 한 번은 깨뜨리고, 한 번은 픽셀 그대로 보존합니다. 차이는 prompt에 있었습니다.
같은 사진, 같은 모델, 두 번의 다른 결과
처음 시도했을 때의 결과는 정설 그대로였습니다. 아이가 작성한 손편지 사진을 reference로 Seedance 2.0 fast i2v 호출 → "아빠에게"가 "아빠어계"로 망가짐. "prompt에 한글 보존해 달라고 적어도 안 된다"는 후기를 여러 곳에서 봤기에 그러려니 했습니다.
그런데 같은 2.0 fast 모델로 prompt를 전혀 다른 방식으로 다시 적었을 때, 편지지 위 한글 손글씨가 reference 그대로 또렷이 재현됐습니다. 시청자가 편지 내용을 그대로 읽을 수 있을 정도였죠. 두 호출의 차이는 결국 prompt 한 덩어리뿐이었습니다.
이쯤 되면 결론을 살짝 수정해야 합니다. "diffusion은 글자를 못 보존한다"가 아니라, "diffusion은 글자 보존 모드로 진입하지 않으면 못 보존한다" 가 더 정확한 표현입니다. 그리고 그 모드로 진입하는 트리거는 prompt 어휘(픽셀 보존 명령·변형 금지 negative)와 카메라·subject 설계(모션 절제·정적 anchor) 두 군데에 있었습니다.
글자 보존을 부르는 4가지 축
성공한 prompt를 다시 뜯어보면, 네 가지 공통 패턴이 보였습니다.
다이어그램은 글자 보존 모드로 진입하기 위해 동시에 켜져야 하는 네 가지 축을 그린 것입니다. 어느 하나만 빠져도 모델은 "이 사진의 글자는 그냥 분위기 요소"라고 해석하고 자기 분포로 재구성하기 시작합니다.
코드로 보는 prompt 차이
prompt를 코드처럼 보기는 어색하지만, 실제로 성공한 prompt의 일부를 텍스트 그대로 옮기면 그 자체가 글자 보존 모드를 트리거하는 일종의 "API 호출"이 됩니다.
따뜻한 톤의 오프닝 컷. @image1은 아이가 받은 손편지 reference — 모델은 그 사진의 손글씨·종이결·잉크·편지 형태·색감을 "픽셀 단위로 정확히" 화면에 띄운다. # ① 픽셀 명령 책상 위에 놓인 그 손편지가 "장면의 중심"이며, # ④ subject 고정 정적인 책상이 미세하게 살아나는 매직 리얼리즘. ※ 편지지에 쓰인 손글씨는 reference 이미지의 실사 한글 손글씨 그대로 또렷이 보여야 한다 — 모델은 글자를 "변형·번역·재생성하지 않고" reference의 픽셀을 최대한 # ② 명시적 negative 보존(시청자가 편지 내용을 읽을 수 있도록). 카메라 워크: "모션 절제 — 매우 느린 미세 푸시인"이 # ③ 카메라 모션 절제 부드럽게 일어난다 (과한 카메라 이동 금지, 편지가 매 프레임 안정적으로 유지되어야 글자 보존 가능).각 줄에 # 주석으로 어떤 축이 켜지는지 표시했습니다. 첫 번째 시도에서는 "편지를 자연스럽게 보여주세요" 정도의 한 줄로 끝났던 prompt가, 성공한 버전에서는 네 축이 빠짐없이 명시적으로 들어가 있습니다. 다른 일반 i2v prompt는 모션·각도·표정에 집중하는데, 글자 보존이 필요한 클립만큼은 subject를 일부러 정적인 anchor로 잡고, 카메라도 거의 안 움직이게 한다는 게 핵심 차이였습니다.
결과와 한계
이 4축 prompt를 적용한 클립은 reference 편지의 한글이 또렷이 살아 있었고, 시청자가 영상만 보고도 편지를 읽을 수 있었습니다. 같은 Seedance 2.0 fast 모델, 같은 사진, prompt만 바꿔서 얻은 결과입니다.
다만 솔직해야 할 한계도 있습니다.
- 결정적이지 않습니다. 같은 prompt로 같은 reference에 다시 호출해도 어느 호출에선 픽셀이 살아 있고, 어느 호출에선 살짝 흐트러질 수 있습니다. AI 모델 자체가 reference 충실도에서 비결정성을 가진다는 사실은 따로 정리할 만큼 깊은 주제입니다.
- 언어·서체별 일반화는 미검증입니다. 한글 손글씨에서 통한 4축이 영어 인쇄체·간판·UI 텍스트에도 같은 강도로 통하는지는 별도 검증이 필요합니다.
- Seedance 2.0 fast 모델 기준입니다. 더 큰 pro 모델에서는 이미 비슷한 효과가 default일 수도 있고, 반대로 다른 모델에서는 더 강한 prompt가 필요할 수도 있습니다.
그래서 production system을 설계할 때는 두 단계로 갑니다. (1) 4축 prompt로 일단 글자 보존을 모델에 부탁해 본다. (2) 그래도 결정적이지 않다는 가정 하에, 정말 critical한 글자(브랜드명·날짜·이름)는 영상 위에 PNG로 후합성하는 fallback 레이어를 같이 갖춥니다. "diffusion은 글자를 보존 못 한다"는 정설은 절반 정도만 받아들이고, 나머지 절반을 prompt 어휘와 카메라·subject 설계로 떼어 오는 게 지금 시점의 합리적인 선택지입니다.
핵심으로 가지고 나갈 한 줄은 이겁니다 — 글자 보존은 모델의 capability이지만, 그 capability를 켤 책임은 호출자에게 있다. 그 스위치가 바로 prompt 4축입니다.
이 글은 생성형 AI의 도움을 받아 작성되었습니다. 원본 자료를 기반으로 AI가 초안을 생성하고, 작성자가 검토·편집하였습니다.
'IT' 카테고리의 다른 글
Seedance 2.0 fast API로 가족 영상 만들 때 — 토큰 영수증도 만만치 않지만, 시간이 더 비싸다 (0) 2026.05.23 프롬프트는 영화 시나리오가 아니라 체크리스트다 — Seedance 2.0 fast에서 손가락 2개와 10개의 거리 (0) 2026.05.22 Seedance 2.0 fast가 만든 영상의 입 모양이 어색했다 — lip-sync가 production 디폴트가 된 이유 (0) 2026.05.22 t2v, i2v, flf2v, omni_reference — Seedance 2.0 fast 약어가 가리키는 것과 조합 매트릭스 (0) 2026.05.22 Seedance 2.0 fast가 실존 인물 사진을 거절했다 — 우회 말고 Real Human Asset 등록이 정도 (0) 2026.05.21 200 OK가 거짓말을 한다 — Seedance 2.0 fast API의 silent fallback을 잡아내는 법 (0) 2026.05.21 /investigate — Trivial pass의 뿌리를 캐는 자리 (gstack 시리즈 6/6) (0) 2026.05.20 /qa — 함수가 옳아도 화면에 안 나타나는 버그를 잡는 자리 (gstack 시리즈 5/6) (0) 2026.05.20 /review — 테스트가 못 보는 의미 부패를 청소하는 자리 (gstack 시리즈 4/6) (0) 2026.05.20 /plan-* 3종 — 한 PLAN 문서를 세 시선으로 통과시키기 (gstack 시리즈 3/6) (1) 2026.05.19