소개
Seedance 2.0 Fast 텍스트→영상은 피사체, 세트, 카메라, 조명까지 화면 전체를 프롬프트로 구성하고 사운드트랙도 같은 패스에서 만듭니다. 화면을 고정하는 소재가 없으므로 아직 존재하지 않는 샷을 위한 엔드포인트입니다.
Seedance 2.0 Fast는 ByteDance Seedance 2.0 라인의 고속 등급입니다. 엔드포인트 모두 480p 또는 720p의 4~15초 클립을 돌려주며, 오디오도 화면과 함께 생성합니다.
시작 자료로 Seedance 2.0 Fast 모드 고르기
| 시작 자료 | 모드 |
|---|---|
| 대본이나 장면 설명 | Seedance 2.0 Fast 텍스트→영상 |
| 확정된 시작 이미지 | Seedance 2.0 Fast 이미지→영상 |
| 외형, 움직임, 오디오를 나눈 레퍼런스 | Seedance 2.0 Fast 레퍼런스→영상 |
핵심 기능 및 하이라이트
같은 필드, 세 가지 소스
세 엔드포인트는 모두 같은 기본 필드를 받습니다. prompt, 4~15초의 duration_seconds(-1이면 모델이 길이를 정합니다), 480p 또는 720p의 resolution, aspect_ratio, generate_audio, seed입니다. 달라지는 것은 화면을 고정하는 소스뿐이며, 없음, 시작 프레임, 레퍼런스 묶음 중 하나입니다. 그 소스를 더하거나 빼기만 하면 요청을 다른 모드로 옮길 수 있습니다.
화면과 소리를 한 번에
generate_audio는 기본으로 켜져 있으며 앰비언스, 움직임 효과음, 목소리를 프레임에 맞춰 생성합니다. 이 등급에서는 꺼도 요금이 내려가지 않으므로 무음 루프나 후반 작업에서 음악을 입힐 소재일 때만 끄면 됩니다.
기본은 적응형 화면비
aspect_ratio의 기본값은 adaptive입니다. 이미지→영상은 시작 프레임의 비율을 유지하고, 레퍼런스→영상은 주 레퍼런스를 따르며, 텍스트→영상은 프롬프트가 암시하는 형태를 모델이 고릅니다. 게재 위치가 형태를 정해 두었다면 16:9, 9:16, 4:3, 3:4, 1:1, 21:9 여섯 가지 고정 비율을 쓰면 됩니다.
요청 파라미터
| 파라미터 | 필수 | 설명 |
|---|---|---|
prompt | 예 | 화면에 나오는 것의 유일한 출처입니다. 피사체, 동작, 카메라, 빛, 소리 순서로 한 문장에 하나씩 놓으세요. 1자 이상 |
aspect_ratio | 아니요 | 출력 구도입니다. 기본은 adaptive이며, 21:9부터 9:16까지 여섯 가지 고정 비율 중에서 고를 수도 있습니다. |
resolution | 아니요 | 출력 해상도입니다. 480p와 기본인 720p 중에서 고릅니다. |
duration_seconds | 아니요 | 완성 클립의 길이를 정수 초로 지정합니다. 4~15초, 기본 5초이며 그대로 과금 수량이 됩니다. |
generate_audio | 아니요 | 자체 사운드트랙을 화면과 싱크 맞춰 만들지 여부입니다. 기본으로 켜져 있으며, 이 버전에서는 꺼도 요금이 내려가지 않습니다. 기본값: |
enable_web_search | 아니요 | 기본값은 꺼짐입니다. 켜면 모델이 렌더링 전에 프롬프트와 관련된 정보를 웹에서 검색할 수 있습니다. 기본값: |
seed | 아니요 | 정수 seed입니다. 빼면 실행마다 알아서 뽑습니다. |
return_last_frame | 아니요 | 영상과 함께 클립의 마지막 프레임을 별도 이미지로 돌려줍니다. 다음 첫 프레임으로 image-to-video에 넘기면 정지 화면을 직접 뽑지 않고도 샷을 이어 붙일 수 있습니다. 기본값: |
bitrate_mode | 아니요 | 전달되는 파일의 비트레이트입니다. |
watermark | 아니요 | 모델 자체의 ‘AI generated’ 표시 워터마크를 영상에 넣습니다. 기본값은 꺼짐입니다. 기본값: |
요금
| 사양 | 요금 |
|---|---|
| $0.04499712 / 초 |
| $0.096768 / 초 |
| $0.0702 / 초 |
| $0.1488 / 초 |
활용 사례
소셜 피드용 세로 컷
9:16을 직접 지정하고 휴대폰이 본 것처럼 샷을 쓰십시오. 손에 든 카메라, 창으로 드는 낮의 빛, 주변 소음은 그대로 둡니다. 아래 예시가 바로 그런 컷으로, 촬영 소스 없이 프롬프트만으로 버스 창가 자리 5초를 만들었습니다.
아무도 찍으러 가지 않을 컷
따라갈 이미지가 없으므로 피사체, 세트, 카메라, 조명의 출처는 프롬프트뿐입니다. 그래서 로케이션과 스태프가 필요했을 설정 샷, 인서트, B롤에 맞는 엔드포인트입니다.
긴 시퀀스의 첫 샷
이 라인에는 연장 엔드포인트가 없습니다. 여기서 첫 샷을 만들고 마지막 프레임을 내보낸 뒤 이미지→영상에 다음 샷의 시작 프레임으로 보내십시오. 의상, 세트, 조명이 그 프레임에 담겨 있어 그대로 이어집니다.
프롬프트 가이드 및 실전 팁
프롬프트를 샷 리스트 순서로
피사체, 동작, 카메라, 조명, 소리 순으로 한 문장에 한 가지만 씁니다. duration_seconds를 늘려 생긴 초는 한 동작을 끝까지 보여 주기 위한 여유이지 두 번째 아이디어를 넣을 자리가 아닙니다. 긴 작품은 샷을 이어 붙여 만듭니다.
Seedance 자체 필터의 위치를 알아 두기
저희 쪽에서는 아무것도 심사하지 않지만, Seedance 자체 안전 레이어가 일부 표현을 프레임 생성 전에 거절합니다. 키스는 거의 항상 거절되고, 귓가의 속삭임이나 이마를 맞대는 장면은 통과합니다. 문자 그대로의 결과가 필요하면 이미지→영상에서 시작 프레임으로 장면을 끌고 가십시오.
포함된 예시 응용하기
공개된 예시는 aspect_ratio 9:16, duration_seconds 5, generate_audio true, resolution 720p를 씁니다.
Vertical selfie video: an adult woman on a city bus by the window, pale blue mohair cardigan slipping off one shoulder, hair in a lace headband, she tilts the phone, winks and flashes a peace sign, then laughs and looks away. Bright overcast daylight through the window, street sliding past, authentic handheld phone-camera look, ambient bus noise.
영화 같은 화면이 아니라 휴대폰 카메라의 사실감을 요청한 것이 셀카로서 설득력을 만듭니다. 그 톤은 유지하고 인물, 장소, 제스처를 바꾸십시오.
480p로 시험하고 seed를 고정해 비교하기
문구가 아직 바뀌는 동안에는 480p로 반복하고, 남길 테이크에서만 resolution을 720p로 올립니다. 프롬프트 수정이 실제로 무엇을 바꿨는지 보려면 seed를 고정하고 나머지 필드를 모두 그대로 두십시오. 비교를 위한 도구일 뿐 프레임 단위로 같은 결과를 보장하지는 않습니다. duration_seconds를 -1로 두면 견적은 15초로 계산되고 과금은 실제로 전달된 길이를 따릅니다.
API 빠른 시작
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "bytedance/seedance-2.0-fast/text-to-video",
"input": {
"prompt": "A slow aerial shot drifting over a misty pine forest at sunrise",
"resolution": "720p",
"aspect_ratio": "adaptive",
"bitrate_mode": "standard",
"generate_audio": true,
"duration_seconds": 5
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
인증, 전체 스키마, 폴링과 오류 처리는 API 레퍼런스에서 확인하세요.
















