Michael Johnson2026-07-16

Seedream 5.0 Pro + Seedance 2.0로 제품 사진 한 장을 UGC 광고 10개로 만든 방법

제품 사진 한 장을 약 $25로 네이티브 UGC 광고 10개로 변환하세요. 실행 가능한 Python 및 cURL이 포함된 Seedream 5.0 Pro + Seedance 2.0 API 워크플로를 단계별로 소개합니다.

Seedream 5.0 Pro + Seedance 2.0로 제품 사진 한 장을 UGC 광고 10개로 만든 방법

제품 사진이 한 장 있었습니다 — 아무것도 없는 흰색 배경 위의 무광 블랙 세럼 병이었죠 — 그리고 주말까지 TikTok 테스트용으로 스크롤을 멈추게 할 UGC 광고 10개가 필요했습니다. 크리에이터 10명을 섭외해 촬영했다면 $1,500–3,000가 들고 일주일 정도 걸렸을 겁니다. 하지만 저는 오후 반나절 만에 약 $25의 API 호출 비용으로 완성했고, 모든 클립에서 화면 속 병은 정확히 동일하게 유지됐습니다.

이 파이프라인은 ByteDance 모델 두 개를 연결합니다. Seedream 5.0 Pro로 제품 사진을 완성도 높은 대표 이미지로 만든 다음, Seedance 2.0으로 해당 이미지를 네이티브 오디오가 포함된 영상으로 애니메이션화합니다. 이 글을 쓰는 이유는 제가 찾은 거의 모든 "Seedance UGC" 가이드가 웹 플레이그라운드를 거쳐 거기서 끝나기 때문입니다 — 한 장의 원본 사진에서 10가지 변형을 코드로 생성해 확장할 수 있게 해주는 핵심, 즉 두 모델의 API 연결을 보여주는 가이드는 없었습니다. 아래의 모든 과정은 두 모델을 하나의 키와 잔액으로 제공하는 GPTProto에서 실행되므로, 파이프라인 중간에 두 공급업체를 따로 관리할 필요가 없습니다.

목차

왜 모델 하나가 아니라 두 모델인가

Seedance 2.0은 텍스트만으로 바로 영상을 생성할 수 있는데, 왜 먼저 이미지를 만들까요? 광고 성과는 제품의 정확성에 따라 좌우되며, 텍스트 프롬프트만으로는 실제 병, 라벨, 패키징을 안정적으로 재현할 수 없기 때문입니다. 해결 방법은 먼저 실제 제품을 정지 이미지에 고정한 뒤, 그 정확한 이미지를 애니메이션화하는 것입니다.

Seedream 5.0 Pro는 이미지 생성 단계입니다. 렌더링 전에 레이아웃을 계획하고, 14개 언어로 이미지 위 텍스트를 정확한 글자 형태로 작성하며, 최대 10개의 참조 이미지를 받아 실제 패키징을 기준점으로 삼는 텍스트-이미지 및 이미지 편집 모델입니다. Seedance 2.0은 영상 단계입니다 — 음성 해설을 나중에 덧붙이는 대신 한 번의 과정에서 동기화된 오디오를 생성하는 ByteDance의 텍스트/이미지/참조-영상 모델입니다(아키텍처와 네이티브 오디오 관련 주장은 arXiv 논문에 나와 있습니다). Seedance 2.0의 참조-영상 모드에서만 Seedream 정지 이미지를 전달하고 "이 제품은 그대로 유지하고, 주변에 장면을 만들어줘"라고 지시할 수 있습니다.

사진 한 장을 넣어 영상 10개를 만들고, 모든 영상에서 제품을 일관되게 유지하는 것. 이것이 핵심 아이디어의 전부입니다.

두 모델 연결: Seedream 5.0 Pro가 정지 이미지를 만들고 Seedance 2.0이 애니메이션화합니다.

이 작업을 할 가치가 있는지 결정하는 비용 계산

먼저 수치를 나란히 비교했습니다. 이 수치가 파이프라인 구축을 실제로 정당화해 주기 때문입니다.

완성된 15초 세로형 광고 10개 이 워크플로(API) 사람 크리에이터 영상 10개
대표 이미지 $0.081 (2K Seedream 정지 이미지 1개, 재사용) 촬영당 포함
영상 10개 ~$24.95 (10 × 720p, Seedance 15초)
광고 10개 총비용 ≈ $25 $1,500–3,000
유료 광고 사용 권한 포함 +25–30%
소요 시간 오후 반나절 약 일주일

완성된 15초 광고 하나당 약 $2.58입니다. 가격은 GPT Proto의 Seedream 5.0 ProSeedance 2.0 페이지 기준입니다(ByteDance 공식 가격보다 10% 저렴). 사람 크리에이터 비용 범위는 2026년 UGC 요금 조사를 참고했습니다. 제 판단으로는 — 측정된 주장이 아니라 개인적인 견해입니다 — 비용 절감이 가장 큰 이점은 아닙니다. 진짜 이점은 변형 제작이 무료에 가까워진다는 것입니다. 제품 사진 하나를 10개의 프롬프트에 넣어 하나가 아닌 A/B 테스트용 10가지 각도를 얻을 수 있습니다.

필요한 것

API 키가 있는 GPT Proto 계정(이메일 가입, 전화번호나 사업자 인증 불필요), requests가 설치된 Python 3, 공개 URL에 호스팅된 제품 사진 한 장, 그리고 광고 10개 전체를 몇 차례 실행할 수 있도록 약 $30의 잔액이 필요합니다. 대시보드에서 키를 복사하세요 — 키는 sk-...와 같은 형태입니다 — 그리고 문서에 표시된 대로 Authorization 헤더 값에 그대로 붙여 넣으세요. Bearer 접두사는 사용하지 않습니다.

1단계 — 제품 사진을 대표 이미지로 변환하기

두 모델 모두 비동기 방식입니다. 작업을 POST하고, 예측 id를 받은 다음, GET /api/v3/predictions/{id}/result를 호출해 statussucceeded가 될 때까지 확인합니다. 다음은 두 단계에서 재사용할 간단한 폴러입니다.

import requests, json, time

API_KEY = "sk-xxxxx"                     # paste your key directly, no "Bearer"
HEADERS = {"Authorization": API_KEY, "Content-Type": "application/json"}
BASE = "https://gptproto.com/api/v3"

def submit(path, payload):
    r = requests.post(f"{BASE}/{path}", headers=HEADERS, data=json.dumps(payload))
    r.raise_for_status()
    return r.json()["data"]["id"]

def wait(pred_id, every=5, timeout=600):
    deadline = time.time() + timeout
    while time.time() < deadline:
        r = requests.get(f"{BASE}/predictions/{pred_id}/result", headers=HEADERS)
        data = r.json()["data"]
        if data["status"] == "succeeded":
            return data["outputs"][0]
        if data["status"] in ("failed", "expired"):
            raise RuntimeError(f"job {data['status']}: {data.get('error')}")
        time.sleep(every)
    raise TimeoutError("polling timed out")

이제 제품 사진 한 장을 image-edit 작업으로 장면에 배치합니다. 캡션이 아니라 디자인 브리프처럼 작성하세요 — 구도 규칙을 먼저 쓰고 스타일 형용사는 마지막에 배치하며, 조명을 직접 명시해야 합니다. Seedream의 사실감이 바로 여기서 나오기 때문입니다. 약 30–80단어로 작성하고, 세로형 2K 크기를 사용해 정지 이미지가 9:16 영상 프레임과 맞도록 하세요.

product_photo = "https://your-cdn.com/serum-bottle.png"   # the one photo you start with

edit_prompt = (
    "Place this matte-black serum bottle on a wet bathroom counter, "
    "soft window light from the left, water droplets on the glass, "
    "shallow depth of field, photoreal product photography, keep the label exactly as shown"
)

img_id = submit(
    "bytedance/dola-seedream-5-0-pro-260628/image-edit",
    {"prompt": edit_prompt, "images": [product_photo], "size": "1600*2848"},
)
hero_image_url = wait(img_id)["url"]   # feed this into Seedance next
print(hero_image_url)

먼저 셸에서 테스트하려면 같은 호출을 cURL로 실행할 수 있습니다:

curl --location 'https://gptproto.com/api/v3/bytedance/dola-seedream-5-0-pro-260628/image-edit' \
  --header 'Authorization: sk-xxxxx' \
  --header 'Content-Type: application/json' \
  --data '{"prompt":"Place this matte-black serum bottle...","images":["https://your-cdn.com/serum-bottle.png"],"size":"1600*2848"}'

size 형식은 1600*2848처럼 별표를 사용하며, x를 사용하지 않는다는 점에 유의하세요. 2K 이미지는 $0.081이며, 1K(832*1248)로 같은 장면을 만들면 $0.0405로 낮아집니다. 일회성 콘셉트 테스트라면 유용합니다. 첫 번째 참조 이미지는 무료이고, 추가 참조 이미지는 최대 10개까지 개당 $0.0027입니다.


1단계: 같은 병을 평범한 스튜디오 사진에서 UGC에 적합한 장면으로 옮겼습니다.

2단계 — UGC 프롬프트 작성하기(대부분의 광고가 실패하는 지점)

Seedance 광고 프롬프트는 설명문이 아니라 촬영 브리프입니다. 모델이 이미지와 사운드를 한 번에 생성하기 때문입니다. 네 가지 레이어로 구성하세요. 주제와 장면(크리에이터나 제품을 최소 세 가지 구체적인 시각적 디테일로 설명), 첫 0–3초의 훅, 4–10초의 제품 등장 장면, 깔끔한 클로징 프레임입니다. 대사는 큰따옴표로 묶고 짧게 유지하세요 — 긴 독백은 립싱크에서 어긋나기 쉽습니다.

거의 모든 사람이 빠지는 함정은 지나치게 세련되게 만드는 것입니다. 영화 같은 조명과 극적인 카메라 움직임을 프롬프트하고 싶은 마음이 들지만, UGC 피드에서는 가짜처럼 보입니다. 믿을 만한 클립은 실제 사람이 휴대전화로 욕실에서 촬영할 수 있었을 법해야 합니다 — 약간의 핸드헬드 느낌, 자연스러운 창문 빛, 스튜디오 같은 광택은 제외하세요. 한 프롬프트에 두 가지 아이디어를 억지로 넣지도 마세요. 생성 하나당 형식 하나만 사용하세요.


모든 Seedance 2.0 UGC 프롬프트에 필요한 네 가지 레이어.

3단계 — Seedance 2.0으로 대표 이미지 애니메이션화하기

플레이그라운드 가이드가 건너뛰는 단계입니다. reference-to-video를 사용하고 Seedream URL을 images에 전달하세요 — 이것이 화면에 정확한 제품을 유지하는 방법입니다. 프롬프트에 작성한 타이밍에 맞춰 duration을 설정하고, TikTok과 Reels에는 9:16을 사용하세요. 대사가 네이티브로 렌더링되도록 generate_audio는 켜 둡니다.

video_prompt = (
    "UGC-style phone video, vertical, a woman in her late twenties in a bright bathroom "
    "holding the serum bottle to camera with easy creator energy, slightly handheld, "
    "natural window light. She says: \"Okay this one actually cleared my skin in a week.\" "
    "Cut to a macro close-up of the dropper. Ends on the bottle held up, label facing camera."
)

vid_id = submit(
    "bytedance/dreamina-seedance-2-0-260128/reference-to-video",
    {
        "prompt": video_prompt,
        "images": [hero_image_url],   # product consistency comes from here
        "aspect_ratio": "9:16",
        "duration": 15,
        "resolution": "720p",
        "generate_audio": True,
        "seed": -1,
    },
)
print(wait(vid_id, every=10)["url"])   # video takes longer -- poll less often
curl --location 'https://gptproto.com/api/v3/bytedance/dreamina-seedance-2-0-260128/reference-to-video' \
  --header 'Authorization: sk-xxxxx' \
  --header 'Content-Type: application/json' \
  --data '{"prompt":"UGC-style phone video...","images":["HERO_IMAGE_URL"],"aspect_ratio":"9:16","duration":15,"resolution":"720p","generate_audio":true}'

전체 참조 시스템 없이 단일 시작 프레임만 애니메이션화하고 싶다면 image-to-video를 사용할 수 있습니다. image 필드 하나를 사용하며, images 배열 대신 전달한다는 점 외에는 동일하게 작동합니다.

4단계 — 변형 10개 일괄 생성하기

이 작업을 코드로 수행하는 보람이 바로 여기에 있습니다. 각도 10개를 만드는 데 드는 노력은 하나를 만들 때와 같습니다. 같은 대표 이미지에 대해 서로 다른 프롬프트 10개로 영상 호출을 반복하고, 모두 제출한 다음 URL을 수집하면 됩니다.

angles = [
    "...opens on a splash of water, energetic hook, 'wait for it'...",
    "...opens mid-sentence, skeptical creator tone, 'I did not expect this'...",
    "...opens on the product already in hand, calm morning-routine demo...",
    "...street-style, walking and talking, quick to-camera line...",
    "...close friend recommendation, sitting on the bathroom floor...",
    # ...ten total, one format each
]

jobs = [
    submit("bytedance/dreamina-seedance-2-0-260128/reference-to-video",
           {"prompt": p, "images": [hero_image_url], "aspect_ratio": "9:16",
            "duration": 15, "resolution": "720p", "generate_audio": True})
    for p in angles
]
clips = [wait(j, every=10)["url"] for j in jobs]
for i, url in enumerate(clips, 1):
    print(f"ad {i}: {url}")

 


대표 이미지 하나, 광고 각도 10개 — 4단계에서 만든 결과입니다.

Seedance 2.0 출력 사양 및 가격

해상도 화면 비율 길이 실행당 가격
480p 16:9 4초 $0.3094
720p 16:9 15초 $2.4948
1080p 16:9 15초 $6.1746
4K 16:9 15초 $12.83

해상도는 480p/720p/1080p/4K, 길이는 4–15초이며, 6가지 화면 비율(9:16, 1:1, 16:9, 4:3, 3:4, 21:9)을 지원합니다. 720p에서 16:9는 1280×720으로 렌더링되고, 1080p는 1920×1088로 렌더링됩니다. 유료 소셜 광고라면 720p 9:16을 권장합니다 — 비용 측면에서 가장 적절하고, 피드 압축으로 인해 1080p의 차이 대부분이 사라지기 때문입니다. 전체 표는 Seedance 2.0 모델 페이지모델 페이지에서 확인할 수 있습니다.

실제로 문제가 되는 오류

길이 불일치는 조용히 발생하는 문제입니다. 프롬프트는 15초에 맞춰 작성했는데 duration을 기본값 5로 두면 모델이 장면을 서두르거나 잘라냅니다. 둘을 일치시키세요. API의 503은 콘텐츠 정책 거부를 의미하며(400으로 반환됨), 무작정 재시도하지 말고 문구를 수정해 다시 제출하세요. 403은 대개 잘못된 키가 아니라 잔액 부족을 의미합니다. 클립이 고급 광고처럼 보인다면 UGC 배치에는 좋은 결과가 아닙니다 — 프롬프트를 "휴대전화로 촬영한 영상"에 가깝게 완화하세요.

게시하기 전에

모든 결과물을 완성된 광고가 아닌 광고 초안으로 취급하세요. 비용을 투입하기 전에 제품 주장, 업로드한 사진의 이미지 권리, 플랫폼 광고 정책, 해당 시장에 적용되는 AI 공개 규정을 확인하세요. AI는 제작 비용을 줄여 주지만, 광고가 전달하는 내용에 대한 책임까지 없애 주지는 않습니다.

 


이 게시물의 모든 이미지, 즉 표지와 네 개의 일러스트는 Seedream 5.0 Pro로 총 약 $0.24에 생성했습니다. 같은 워크플로, 같은 키를 사용했습니다.

크리에이티브 스튜디오

프로덕션 API로 이미지, 영상 등을 생성해 보세요.

만들기 시작하기
크리에이티브 스튜디오
관련 모델
모든 모델
Bytedance
10% OFF
Bytedance
10% UP
Claude
20% OFF
Google
40% OFF

자주 묻는 질문

AI UGC 광고 하나를 만드는 데 얼마가 드나요?

완성된 15초 클립 하나당 약 $2.58입니다. 2K 대표 이미지($0.081, 전체 배치에서 재사용)와 720p 15초 영상(약 $2.49)을 합친 비용입니다. 광고 10개는 약 $25로, 중간급 사람 크리에이터 영상 10개의 $1,500–3,000와 비교됩니다.

무료 요금제가 있나요?

아니요. 사용량 기반 과금이지만, 1K 콘셉트 이미지는 $0.0405이고 480p 4초 테스트 클립은 $0.31이므로 반복 작업 비용이 저렴합니다.

제가 가진 제품 사진을 사용할 수 있나요?

네. 이 워크플로의 출발점이 바로 그것입니다. Seedream의 image-edit images 배열에 제품 사진을 전달해 정확한 대표 이미지를 만든 다음, Seedance의 images(reference-to-video)에 해당 이미지를 전달하면 모든 변형에서 실제 제품을 화면에 유지할 수 있습니다.

두 API의 차이점은 무엇인가요?

Seedream 5.0 Pro는 이미지를 생성하고 편집하며, Seedance 2.0은 네이티브 오디오가 포함된 영상으로 변환합니다. GPTProto 키 하나로 두 모델을 모두 호출할 수 있습니다. 전체 요금표는 가격 페이지를 확인하세요.
Seedream 5.0 Pro 프롬프트 가이드: 새 이미지처럼 편집을 프롬프트하지 마세요

Seedream 5.0 Pro 프롬프트 가이드: 새 이미지처럼 편집을 프롬프트하지 마세요

Seedream 5.0 Pro 프롬프트는 두 가지 역할 중 하나를 수행해야 합니다. 생성하려는 전체 이미지를 설명하거나, 기존 이미지에 적용하려는 정확한 변경 사항을 지정해야 합니다. 이 두 역할을 섞으면 단순한 배경 편집만으로도 얼굴, 조명 또는 제품 형태가 예상치 않게 바뀔 수 있습니다. 실용적인 규칙은 간단합니다. 생성할 때는 전체 프레임을 설명하고, 편집할 때는 대상, 변경 사항, 유지해야 할 세부 정보를 설명하세요. 아래의 복사해 바로 사용할 수 있는 17개 프롬프트는 사실적인 인물 사진, 제품 사진, 리터칭, 배경 교체, 다국어 포스터, 다중 참조 작업에 이 규칙을 적용합니다.

Tiffany Layne | 2026-07-24

Seedance 2.5는 아직 출시되지 않았나요? 출시일과 현재까지 실제로 알려진 내용 (2026)

Seedance 2.5는 아직 출시되지 않았나요? 출시일과 현재까지 실제로 알려진 내용 (2026)

이번 주에 ByteDance의 Seed 페이지를 보고 또 보면서 Seedance 2.5가 올라오기를 기다렸습니다. 지금까지는 아무것도 없습니다. 모델 페이지도, 사양표도, 날짜도 없습니다. 바로 이 공백 때문에 이 글을 작성했습니다. 현재 Seedance 2.5에 관해 확신에 찬 글이 많이 떠돌고 있는데, 대부분 추측을 사실처럼 제시하고 있습니다. 여기서는 둘을 명확히 구분한 다음, 오늘 실제로 사용할 수 있는 것을 안내하겠습니다.

Tiffany Layne | 2026-06-23

Kling 3.0 Motion Control 사용법: 개발자 가이드 (웹 + API)

Kling 3.0 Motion Control 사용법: 개발자 가이드 (웹 + API)

Kling 3.0 Motion Control은 정적인 캐릭터 이미지에 참조 영상의 움직임을 적용합니다. 캐릭터 이미지와 사람이 움직이는 영상, 두 가지 입력을 제공하면 캐릭터가 자신의 얼굴, 의상, 외형은 유지하면서 동일한 안무를 수행하는 새로운 클립을 반환합니다. 이는 텍스트-모션 변환이 아니라 모션 전이입니다. 프롬프트로 동작을 설명하고 모델이 해석하기를 기대하는 대신, 동작을 프레임 단위로 직접 보여줍니다. 따라서 반복 가능한 캐릭터 애니메이션, 댄스, 제스처 작업에서 훨씬 안정적입니다. 이 가이드에서는 두 가지 방법을 모두 다룹니다. 일회성 클립을 위한 Kling 웹 앱과 Motion Control을 파이프라인에 연결하기 위한 GPTProto API입니다. 입력 및 제한 사항, `pro`와 `std` 등급, 프롬프트 작성법, 실행 가능한 전체 코드, 가격, 크레딧을 사용하기 전에 알아두어야 할 주요 실패 사례를 살펴봅니다.

Michael Johnson | 2026-06-30

API로 AI 인플루언서 만들기 (실제 운영 비용은 얼마일까)

API로 AI 인플루언서 만들기 (실제 운영 비용은 얼마일까)

대부분의 사람들이 처음 만든 AI 인플루언서는 두 번째 이미지에서 실패합니다. 첫 번째 렌더링은 멋져 보입니다 — 믿을 만한 얼굴과 괜찮은 조명 말이죠. 그런데 두 번째 게시물을 생성하면 광대뼈가 움직이고, 코가 더 넓어지고, 눈 색깔이 달라집니다. 전혀 다른 사람입니다. 세 번째 게시물은 또 다른 사람이고요. 결국 인플루언서가 아니라, 머리카락 색깔만 우연히 같은 낯선 사람들의 폴더를 갖게 됩니다. 이 검색 결과 상위에 표시되는 노코드 도구들은 버튼 하나 뒤에 이 문제를 숨깁니다. 사진을 업로드하고, 생성을 클릭하고, 결과를 받습니다. 이미지 5개를 만들든 500개를 만들든 월 $19에서 $99 정도의 구독료를 내면서 하나의 모델과 스타일에 묶여 있는 동안에는 괜찮습니다. 하지만 규모를 키우거나, 분위기를 바꾸거나, 일정에 맞춰 게시물 100개를 실행하려는 순간 문제가 됩니다. 이 가이드는 다른 길인 API를 선택합니다. SaaS 버튼을 클릭하는 것보다 설정할 일이 많습니다 — 몇 줄의 코드를 작성하고 API 키를 관리해야 하죠. 그 대신 각 장면을 어떤 모델로 렌더링할지 직접 제어하고, 월정액이 아닌 이미지 단위로 비용을 지불하며, 전체 파이프라인을 자동화할 수 있습니다. 마지막에는 하나의 고정된 정체성, 일관성 있는 게시물 묶음, 선택 사항인 세로형 릴, 그리고 — 다른 가이드들이 모두 건너뛰는 부분인 — 실제 게시물당 비용까지 갖추게 됩니다. 왜 이런 일을 하는지 맥락을 살펴보면, 바르셀로나 에이전시 The Clueless가 만든 AI 모델 Aitana L&oacute;pez는 월 최대 &euro;10,000, 평균 약 &euro;3,000을 벌어들입니다. 제작자들에 따르면 , Euronews가 보도한 내용입니다. 이 숫자를 기억해 두세요. 실제 제작 비용을 파악한 뒤 다시 돌아오겠습니다. 이 두 수치 사이의 차이가 바로 이 비즈니스의 핵심이기 때문입니다.

Schuyler Stacy | 2026-06-17