[AI 월칠만원 실험 9]

유튜브 쇼츠 자동화의 현실

by 월칠만원러

https://youtu.be/KECvUlviUX8




Gemini의 Gem으로 인스타툰을 만드는 것도 해봤네. 이제 다른 건 뭐 없을까?

브런치도 하고, 인스타툰도 시작했으니, 이참에 유튜브 쇼츠도 해볼까 싶었다. 욕심일까? 하지만 AI 시대잖아. 뭔가 자동화할 방법이 있지 않을까.

그렇게 유튜브를 뒤지다가 발견했다. Google Opal.

"이거다!"

영상을 보는 순간, 확신했다.

"노드만 잘 짜면, 유튜브 쇼츠가 자동으로 만들어진다고?"

Opal은 Google Labs에서 나온 AI 영상 생성 도구다. Veo라는 AI를 활용해서, 프롬프트만 잘 쓰면 영상이 만들어지는 구조였다.

핵심은 '노드' 방식이었다. 엑셀 수식 짜듯이, 블록을 연결해서 워크플로우를 만드는 거였다.


예를 들면:

콘텐츠 생성 노드: "오늘 주제"를 넣으면 → AI가 프롬프트를 짬

영상 제작 노드: 그 프롬프트를 받아서 → Veo가 영상을 만듦

썸네일 생성 노드: 영상 내용 기반으로 → 썸네일까지 자동 생성


이 세 개만 연결하면, 나는 그냥 앉아서 "오늘은 출근 준비 강아지" 같은 주제만 던져주면 되는 거였다.



화면 캡처 2025-11-19 124250.png 이렇게 노드를 연결하면 자동으로 영상이 만들어진다고 했다


"이거면 되겠는데?"

바로 시작했다.


노드가 뭔데


문제는 첫 단추부터 꼬였다.

영상을 보면서 따라 하는데, 뭔가 이상했다. 노드를 이렇게 연결하라는데, 연결이 안 됐다. 화면은 똑같이 만들었는데, 실행하면 오류만 떴다.

"Please use fewer than 10800 images in your request"

이미지를 10800개 이상 쓰지 말라고? 나는 이미지 하나만 올렸는데?

알고 보니 내가 강아지 이미지를 잘못된 노드에 넣었던 거였다. 노드 구조 자체를 이해하지 못한 채 무작정 따라만 한 거였다.

유튜브 영상을 다시 돌려봤다. 멈추고, 되감고, 또 멈추고.

"아... 이 노드는 이미지를 분석하는 거고, 이 노드는 프롬프트를 만드는 거고..."

천천히 이해되기 시작했다. 그런데 이해했다고 해서 바로 되는 건 아니었다.



강아지가 계속 바뀐다


가장 큰 문제는 캐릭터 일관성이었다.

내가 원한 건 인스타툰에 쓴 우리 강아지 '모닝이'가 영상에도 똑같이 나오는 거였다. 하얀 비숑, 동그란 헤어스타일, 동그란 눈. 이 특징들이 매번 똑같아야 했다.


이미지 2-1.jpg
이미지 2-2.jpg
강아지가 계속 바뀐다...


그런데 영상을 만들 때마다 강아지가 달라졌다.

처음엔 두 발로 걷는 비숑이 나왔는데, 두 번째는 그냥 비숑이 되었다. 세 번째는 아예 리트리버가 나왔다.

"아니, 같은 프롬프트인데 왜 매번 다른 개가 나와?"

문제는 Veo가 프롬프트를 '해석'한다는 거였다. "하얀 비숑"이라고 써도, AI마다 생각하는 '하얀 비숑'이 다른 거였다.

"이거... 혼자서는 못 하겠다."

나는 제미나이를 열었다.



제미나이에게 SOS


"강아지 특징을 고정적으로 등장시키고 싶은데, 노드를 어떻게 짜야해?"

제미나이가 답했다.

"강아지 특징 분석 노드를 먼저 만들어야 합니다. 업로드한 이미지를 분석해서, 그 특징을 텍스트로 추출하는 노드를 추가하세요."


구체적인 프롬프트까지 줬다:

"A small, adorable white Bichon Frise with a perfectly round, fluffy 'helmet-style' haircut, tiny black bead eyes, and a small black button nose..."

이미 지3.png 제미나이가 준 프롬프트.


이걸 노드에 넣으면 된다고 했다

이걸 '강아지 특징 분석 노드'에 넣고, 그 결과를 '콘텐츠 생성 노드'로 연결하라고 했다.

"아, 이렇게 하는 거구나."

처음으로 노드의 흐름이 이해됐다. 데이터가 어떻게 흐르는지, 어디서 어디로 연결되는지.

이제 됐다 싶어서 실행 버튼을 눌렀다.



검은 화면


결과물이 나왔다.

8초짜리 영상. 썸네일도 생성됐다.

"오! 됐네?"

기대하는 마음으로 재생했다.

검은 화면이었다.

8초 내내 그냥 검은 화면. 소리도 없고, 움직임도 없고. 그냥 아무것도 없었다.

"뭐지?"

프롬프트를 다시 확인했다. 강아지 특징도 들어갔고, 콘텐츠 생성 노드도 제대로 연결했는데.

왜 검은 화면이 나온 거지?

문제를 찾기 위해 제미나이에게 다시 물었다. 그리고 깨달았다.

내가 만든 건 '제품 홍보' 영상이었다. 그런데 나는 강아지가 '상황극'을 하는 걸 원했던 거였다.

짧은 드라마처럼. 프롬프트 자체가 잘못됐던 거다.



의인화의 벽


제미나이가 새로운 프롬프트를 짜줬다. 이번엔 '출근 준비하는 강아지'였다.

"좋아, 이번엔 되겠지."

실행.

"No images generated."

또 실패. 이번엔 정책 위반이라고 떴다.

"No images generated." 이 문구를 몇 번이나 봤는지 모르겠다

"출근 준비하는 강아지가 왜 정책 위반이야?"

프롬프트를 읽어보니, 강아지가 두 발로 서서 양복을 입고 서류가방을 들고 있는 묘사였다.

"아... 의인화 때문에 걸리는 거구나."

Google의 안전 정책이 문제였다. 동물을 지나치게 의인화하면 생성이 안 됐다. 두 발로 걷는 것도, 옷 입는 것도, 사람처럼 행동하는 것도 모두 걸렸다.

그런데 나는 강아지가 사람처럼 행동하는 걸 원했다.

노트북도 치고, 출근도 하고, 회의도 하는 그런 캐릭터를.

"이거 어떻게 하지?"



프롬프트 지옥


제미나이와 나는 프롬프트를 고쳤다. 다시 고쳤다. 또 고쳤다.

"두 발로 서 있다" → "서 있는 자세" → "직립 자세"
"양복을 입고" → "옷을 입고" → "잘 차려입고"
"서류가방을 들고" → "작은 가방을 옆에 두고"

단어 하나하나를 바꿔가며 정책을 피하려고 했다. 하지만 매번 똑같은 결과였다.

"No images generated."

아홉 번째 시도에서, 드디어 하나가 통과됐다.

강아지가... 네 발로 걷고 있었다. 양복도 없고, 가방도 없고. 그냥 평범한 강아지가 복도를 걷는 영상이었다.

"이건 내가 원한 게 아닌데..."

하지만 이게 한계였다. Google의 정책상, 강아지를 완전히 의인화할 수는 없었다.



그래도 계속


밤늦게까지 수정을 했다. 눈도 감기고, 머리도 아팠다.

하지만 여기서 포기하기엔 아까웠다. 이미 노드도 짰고, 프롬프트도 10개는 수정했고.

"마지막으로 한 번만 더."

이번엔 정책을 완전히 피하는 방향으로 갔다. 의인화는 최소한으로, 상황만 암시하는 식으로.

실행.

드디어 영상이 생성됐다.

8초짜리 영상. 강아지가 집 안을 돌아다니는 모습. 썸네일도 괜찮게 나왔다.

"됐다!"

기뻐하는 것도 잠시, 영상을 자세히 보니 문제가 또 있었다.

씬마다 강아지 모습이 달랐다. 첫 컷에선 하얀 비숑이었는데, 두 번째 컷에선 다른 비숑이 있었다.

"캐릭터 일관성이 또 깨지네..."

그리고 가장 큰 문제.

영상이 8초밖에 안 됐다.

유튜브 쇼츠는 최소 15초는 되어야 하는데, 8초로는 완성된 이야기를 담을 수가 없었다.

"60초짜리 쇼츠를 만들려면 어떻게 해야 돼?"

제미나이에게 물었다.

답은 간단했다.

"Veo는 한 번에 최대 8초까지만 생성 가능합니다. 더 긴 영상을 원하시면 여러 클립을 이어 붙여야 합니다."

결국 수작업이 필요하다는 얘기였다.

완벽한 자동화는 없었다.




다음 편에서 계속됩니다.

작가의 이전글[AI 월칠만원 실험 8]