요약 (TL;DR)
Seedance 2.0 API는 2026년 4월 2일 Volcengine Ark를 통해 출시되었습니다. POST 요청으로 동영상 생성 작업을 제출한 다음, 상태가 "성공"에 도달할 때까지 GET 엔드포인트를 폴링합니다. 이 API는 텍스트-투-비디오, 이미지-투-비디오, 첫/마지막 프레임 제어, 다중 모드 참조, 원본 오디오 생성을 지원합니다. 5초 길이의 1080p 동영상은 대략 $0.93의 비용이 듭니다. 동영상은 24시간 이내에 다운로드해야 하며, 이후에는 URL이 만료됩니다.
Hypereal AI

소개
2026년 4월 2일, ByteDance의 Volcengine Ark 플랫폼은 공식 Seedance 2.0 API를 출시했습니다. 이 날짜 이전에는 Seedance 2.0 동영상을 생성하는 유일한 방법은 웹 콘솔을 통하는 것이었습니다. UI 워크스루를 보여주는 튜토리얼을 보셨다면, 그것들은 콘솔을 위해 작성된 것입니다. 이 가이드는 개발자가 프로그래밍 방식으로 호출할 수 있는 실제 API를 다룹니다.
이 문서는 지원되는 모든 입력 유형, 응답 토큰 수에서 파생되는 가격 계산, 그리고 프로덕션에서 발생할 수 있는 오류에 대해 다룹니다.
Seedance 2.0이란 무엇인가요?
Seedance 2.0은 ByteDance의 동영상 생성 모델입니다. 이 모델은 Volcengine Ark에서 `doubao-seedance-2-0-260128` (표준) 및 `doubao-seedance-2-0-fast-260128` (더 빠르고 낮은 품질) 모델 ID로 실행됩니다.
이 모델은 버전 1.5보다 더 많은 입력 유형을 지원합니다. 버전 1.5는 텍스트-투-비디오 및 이미지-투-비디오를 처리했습니다. 버전 2.0은 다음을 추가합니다:
- 첫 프레임 및 마지막 프레임 제어 (두 개의 북엔드 이미지를 제공)
- 다중 모드 참조 입력: 이미지, 동영상 클립, 오디오 파일을 하나의 요청으로 결합
- 대화, 음향 효과, 주변 소리, 음악을 포함한 원본 오디오 생성
- 8개 이상의 언어로 립싱크
- 자연어 프롬프트를 통한 카메라 움직임 제어 (돌리, 트래킹, 크레인 샷)
- 최대 15초 길이, 최대 2K 해상도 출력
이 모델은 1:1에서 21:9까지의 화면 비율로 24fps 동영상을 출력합니다. 요청 시 해상도를 선택할 수 있습니다.
무엇이 바뀌었나: 가이드 vs 공식 API
Seedance 2.0에 대한 이전 기사들, 예를 들어 이 사이트의 2026년 2월 가이드를 포함하여, Volcengine의 Seedance 2.0 웹 콘솔을 설명했습니다. 당시에는 API가 존재하지 않았습니다. 이 가이드들은 웹페이지에서 프롬프트 필드를 채우고 생성 버튼을 클릭하는 과정을 안내했습니다.
2026년 4월 2일 API 출시는 이를 완전히 바꿉니다. 이제 어떤 언어로든 API를 호출하고, 동영상 생성 파이프라인을 자동화하며, Seedance를 자체 제품에 통합할 수 있습니다. 이 가이드는 개발자 사용 사례의 UI 워크스루를 대체합니다.
선행 조건
시작하려면 Volcengine 계정이 필요합니다. volcengine.com에서 계정을 생성하세요. 계정이 활성화되면 다음 Ark 콘솔로 이동하세요:
https://console.volcengine.com/ark/region:ark+cn-beijing/apikey
여기서 API 키를 생성합니다. 그런 다음 환경 변수로 내보내세요:
export ARK_API_KEY="your-api-key-here"
API에 대한 모든 요청은 이 키를 Bearer 토큰 헤더에 사용합니다:
Authorization: Bearer YOUR_ARK_API_KEY
새 계정은 무료 체험 크레딧을 받습니다. 이는 1080p로 15초 길이의 동영상 약 8개를 생성하는 데 필요한 비용을 충당합니다.
텍스트-투-비디오: 첫 번째 요청
모든 Seedance API 호출의 기본 URL은 다음과 같습니다:
https://ark.cn-beijing.volces.com/api/v3
텍스트-투-비디오 작업을 제출하려면 `/v1/contents/generations/tasks`로 POST 요청을 보냅니다.
cURL 예제
curl -X POST "https://ark.cn-beijing.volces.com/api/v3/contents/generations/tasks" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $ARK_API_KEY" \
-d '{
"model": "doubao-seedance-2-0-260128",
"content": [
{
"type": "text",
"text": "A golden retriever running through a sunlit wheat field, wide tracking shot, cinematic"
}
],
"resolution": "1080p",
"ratio": "16:9",
"duration": 5,
"watermark": false
}'
API는 즉시 작업 ID를 반환합니다:
{"id": "cgt-2025xxxxxxxx-xxxx"}
Python 예제 (공식 SDK)
먼저 SDK를 설치하세요:
pip install volcenginesdkarkruntime
그런 다음 작업을 제출하세요:
import os
from volcenginesdkarkruntime import Ark
client = Ark(api_key=os.environ.get("ARK_API_KEY"))
resp = client.content_generation.tasks.create(
model="doubao-seedance-2-0-260128",
content=[
{
"type": "text",
"text": "A golden retriever running through a sunlit wheat field, wide tracking shot, cinematic"
}
],
resolution="1080p",
ratio="16:9",
duration=5,
watermark=False,
)
print(resp.id)
작업 ID를 저장하세요. 폴링 단계에서 필요합니다.
비동기 작업 패턴: 제출, 폴링, 다운로드
Seedance 생성은 즉시 완료되지 않습니다. 5초 길이의 1080p 동영상은 일반적으로 60초에서 120초가 걸립니다. API는 이를 비동기 작업 수명 주기(Async Task Lifecycle)로 처리합니다:
queued -> running -> succeeded
-> failed
-> expired
-> cancelled
상태가 `queued` 또는 `running`에서 변경될 때까지 GET 엔드포인트를 폴링합니다.
전체 Python 폴링 루프
import os
import time
import requests
from volcenginesdkarkruntime import Ark
client = Ark(api_key=os.environ.get("ARK_API_KEY"))
# Step 1: submit
resp = client.content_generation.tasks.create(
model="doubao-seedance-2-0-260128",
content=[
{"type": "text", "text": "Aerial shot of a mountain lake at sunrise, slow dolly forward"}
],
resolution="1080p",
ratio="16:9",
duration=5,
watermark=False,
)
task_id = resp.id
print(f"Task submitted: {task_id}")
# Step 2: poll with exponential backoff
wait = 10
while True:
result = client.content_generation.tasks.get(task_id=task_id)
status = result.status
print(f"Status: {status}")
if status == "succeeded":
video_url = result.content.video_url
print(f"Video URL: {video_url}")
break
elif status in ("failed", "expired", "cancelled"):
print(f"Task ended with status: {status}")
break
time.sleep(wait)
wait = min(wait * 2, 60) # cap at 60 seconds
# Step 3: download immediately
if status == "succeeded":
response = requests.get(video_url, stream=True)
with open("output.mp4", "wb") as f:
for chunk in response.iter_content(chunk_size=8192):
f.write(chunk)
print("Downloaded: output.mp4")
지수 백오프(exponential backoff)는 API에 과도한 부하를 가하는 것을 방지합니다. 60초 제한은 실용적인 사용을 위해 충분히 빈번한 폴링을 유지합니다.
이미지-투-비디오 (I2V): 정지 이미지 애니메이션화
이미지를 애니메이션화하려면 텍스트 프롬프트와 함께 `content` 배열에 `image_url` 객체를 추가합니다. 이미지는 동영상의 첫 번째 프레임이 됩니다.
resp = client.content_generation.tasks.create(
model="doubao-seedance-2-0-260128",
content=[
{
"type": "text",
"text": "The woman slowly turns her head and smiles at the camera"
},
{
"type": "image_url",
"image_url": {"url": "https://example.com/portrait.jpg"}
}
],
ratio="adaptive",
duration=5,
watermark=False,
)
`ratio`를 `"adaptive"`로 설정하면 모델이 입력 이미지의 원본 화면 비율을 사용하도록 지시합니다. 이는 원치 않는 잘림이나 레터박스를 방지합니다.
각 이미지는 30MB 미만이어야 합니다. 단일 요청에 최대 9개의 이미지를 제공할 수 있습니다.
첫 프레임과 마지막 프레임: 시작점과 끝점 제어
Seedance 2.0은 북엔드 프레임 제어를 지원합니다. 첫 프레임 이미지, 마지막 프레임 이미지, 그리고 텍스트 프롬프트를 제공합니다. 모델은 그 중간 움직임을 생성합니다.
이는 제품 전환, 모핑 효과 또는 시작 및 종료 상태를 아는 모든 시퀀스에 유용합니다.
resp = client.content_generation.tasks.create(
model="doubao-seedance-2-0-260128",
content=[
{
"type": "text",
"text": "The flower blooms from bud to full open, macro lens, soft light"
},
{
"type": "image_url",
"image_url": {"url": "https://example.com/flower-bud.jpg"}
},
{
"type": "image_url",
"image_url": {"url": "https://example.com/flower-open.jpg"}
}
],
ratio="adaptive",
duration=8,
watermark=False,
)
텍스트 프롬프트가 있을 때 모델은 두 개의 이미지가 첫 프레임 및 마지막 프레임 모드를 의미한다고 추론합니다. 두 이미지를 순서대로 포함하세요: 첫 프레임 먼저, 마지막 프레임 나중에.
클립을 생성할 때 `return_last_frame: true`를 사용할 수도 있습니다. 이는 동영상 URL과 함께 마지막 프레임 이미지를 반환합니다. 이 이미지를 다음 요청의 첫 프레임으로 사용하여 여러 클립을 더 긴 시퀀스로 연결할 수 있습니다.
다중 모드 참조: 이미지, 동영상, 오디오 결합
Seedance 2.0의 가장 강력한 추가 기능 중 하나는 이미지 및 텍스트와 동일한 요청으로 동영상과 오디오를 참조 입력으로 허용하는 것입니다.
콘텐츠 배열은 다음을 포함할 수 있습니다:
- 프롬프트용 `{"type": "text", "text": "..."}`
- 이미지용 `{"type": "image_url", "image_url": {"url": "..."}}`
- 동영상 참조용 `{"type": "video_url", "video_url": {"url": "..."}}`
- 오디오 참조용 `{"type": "audio_url", "audio_url": {"url": "..."}}`
요청당 제한:
- 최대 9개의 이미지 (각 30MB 이하)
- 최대 3개의 동영상 클립 (각 2~15초, 각 50MB 이하)
- 최대 3개의 오디오 파일 (MP3, 각 15MB 이하)
결합된 참조 예시:
resp = client.content_generation.tasks.create(
model="doubao-seedance-2-0-260128",
content=[
{
"type": "text",
"text": "Match the visual style of the reference clip and add the provided background audio"
},
{
"type": "image_url",
"image_url": {"url": "https://example.com/style-reference.jpg"}
},
{
"type": "video_url",
"video_url": {"url": "https://example.com/motion-reference.mp4"}
},
{
"type": "audio_url",
"audio_url": {"url": "https://example.com/background-music.mp3"}
}
],
duration=10,
ratio="16:9",
watermark=False,
)
동영상 참조를 포함하면 청구 요율이 V2V 등급으로 낮아집니다: 백만 토큰당 약 $6.40 대신 약 $3.90.
원본 오디오 생성
`generate_audio: true`로 설정하면 Seedance가 동영상과 함께 오디오 트랙을 생성합니다. 모델은 오디오-비디오 공동 생성을 수행하므로, 사운드가 나중에 추가되는 것이 아니라 화면 속 동작과 일치합니다.
오디오 생성은 대화, 음향 효과, 주변 소음 및 배경 음악을 포함합니다. 립싱크는 8개 이상의 언어로 작동합니다.
resp = client.content_generation.tasks.create(
model="doubao-seedance-2-0-260128",
content=[
{
"type": "text",
"text": "A street musician plays guitar outside a cafe in Paris, crowds passing by, city sounds"
}
],
resolution="1080p",
ratio="16:9",
duration=10,
generate_audio=True,
watermark=False,
)
원본 오디오 생성은 무음 동영상에 비해 토큰 소비를 약간 증가시킵니다. 이를 비용 추정에 반영하세요.
해상도, 비율 및 길이 제어
세 가지 매개변수가 출력을 결정합니다:
resolution은 `"480p"`, `"720p"`, `"1080p"`, 또는 `"2K"`를 허용합니다. 기본값은 `"1080p"`입니다. 해상도가 높을수록 더 많은 토큰이 소비되고 비용이 더 많이 듭니다.
ratio는 `"16:9"`, `"9:16"`, `"4:3"`, `"3:4"`, `"21:9"`, `"1:1"`, 또는 `"adaptive"`를 허용합니다. 입력 이미지의 화면 비율이 특이한 경우 `"adaptive"`를 사용하세요. 모델은 이미지 크기를 읽고 그에 따라 비율을 설정합니다.
duration은 4에서 15까지의 정수를 허용합니다. 단위는 초입니다. 기본값은 5입니다. 동영상이 길수록 비례적으로 비용이 더 많이 듭니다.
빠른 모델 (`doubao-seedance-2-0-fast-260128`)은 낮은 품질로 생성되지만 더 빠르게 완료됩니다. 프로토타이핑 또는 프롬프트 반복 시 사용하세요. 최종 출력에는 표준 모델로 전환하세요.
다른 동영상 API보다 Seedance 2.0을 선택해야 할 때: 원본 오디오-비디오 공동 생성, 북엔드 프레임 제어 또는 다중 모드 참조 입력이 필요할 때 Seedance를 선택하세요. 간단한 텍스트-투-비디오만 필요하고 비용이 최우선이라면, 480p의 빠른 모델이 이 클래스에서 가장 저렴한 옵션입니다.
응답에서 비용 확인하기
작업이 성공하면 응답에 `usage` 필드가 포함됩니다:
{
"usage": {
"completion_tokens": 246840,
"total_tokens": 246840
}
}
토큰 소비는 동영상 길이 및 해상도와 관련이 있습니다. 공식 문서의 참고 자료: 15초 길이의 1080p 동영상은 약 308,880 토큰을 소비합니다. 5초 길이의 1080p 동영상은 대략 102,960 토큰을 사용합니다.
1080p에서의 T2V 및 I2V 가격은 백만 토큰당 46위안(현재 환율로 백만 토큰당 약 $6.40)입니다.
빠른 추정치:
- 5초 1080p 동영상: 약 102,960 토큰 = 약 0.66 위안 / 약 $0.93
- 10초 1080p 동영상: 약 205,920 토큰 = 약 9.48 위안 / 약 $1.32
- 15초 1080p 동영상: 약 309,000 토큰 = 약 14.21 위안 / 약 $1.97
V2V 작업 (동영상 참조를 포함하는 요청)의 경우, 요율은 백만 토큰당 28위안 (백만 토큰당 약 $3.90)으로 떨어집니다.
모든 응답에서 정확한 토큰 수를 확인하고 애플리케이션에 비용 추적 기능을 구축할 수 있습니다. `completion_tokens`에 작업 유형에 해당하는 요율을 곱하세요.
중요: 24시간 이내에 동영상을 다운로드하세요
성공적인 응답의 `video_url`은 Volcengine 객체 스토리지(object storage)를 가리킵니다. 이 URL은 작업 성공 후 24시간이 지나면 만료됩니다. 그 후에는 URL이 403 오류를 반환하며 파일은 사라집니다.
상태가 `succeeded`로 변경된 직후 항상 파일을 자체 저장소로 다운로드하세요. 이전 섹션의 폴링 루프는 표준 흐름의 일부로 이 다운로드 단계를 포함합니다.
`execution_expires_after` 필드는 만료 기간을 초 단위로 확인합니다. 172800은 작업 기록 자체에 대해 48시간을 의미합니다. 그러나 동영상 URL은 여전히 24시간 후에 만료됩니다. 24시간 규칙을 신뢰하세요.
작업 기록도 지난 7일로 제한됩니다. 그보다 오래된 작업은 쿼리할 수 없습니다.
Apidog로 Seedance API를 테스트하는 방법
비동기 작업 패턴에는 서로 의존하는 두 개의 API 호출이 있습니다. 단일 요청 테스트를 작성할 수 없습니다. Apidog의 테스트 시나리오는 연결된 흐름으로 이를 처리합니다.

정확한 설정 방법은 다음과 같습니다:
1단계: 테스트 시나리오 생성
Apidog에서 테스트 모듈로 이동하여 "Seedance 2.0 동영상 생성"이라는 새 시나리오를 만드세요. Apidog의 환경 설정에서 환경 변수 `ARK_API_KEY`를 설정하세요. 키를 참조할 모든 곳에 `{{ARK_API_KEY}}`를 사용하세요.
2단계: 제출 요청 추가
`https://ark.cn-beijing.volces.com/api/v3/contents/generations/tasks`에 사용자 지정 POST 요청 단계를 추가하세요. Authorization 헤더를 `Bearer {{ARK_API_KEY}}`로 설정하세요. 모델 및 콘텐츠 필드가 있는 JSON 본문을 추가하세요.
이 단계 후에 변수 추출 프로세서(Extract Variable processor)를 추가하세요. JSONPath 표현식 `$.id`를 사용하여 응답 본문에서 추출하도록 설정하세요. 값을 `TASK_ID`라는 환경 변수에 저장하세요.
3단계: 대기 프로세서 추가
추출 단계 다음에 대기 프로세서(Wait processor)를 삽입하세요. 지연 시간을 30초로 설정하세요. 이는 모델이 첫 번째 폴링 시도 전에 처리를 시작할 시간을 줍니다.
4단계: For 루프에 폴링 요청 추가
최대 20회 반복하는 For 루프 제어 블록을 추가하세요. 루프 내에서:
- 동일한 Authorization 헤더를 사용하여 `https://ark.cn-beijing.volces.com/api/v3/contents/generations/tasks/{{TASK_ID}}`에 GET 요청 단계를 추가하세요.
- GET 요청 후 10초 지연을 갖는 대기 프로세서를 추가하세요.
- 루프의 Break If 조건을 `$.status == "succeeded"` 또는 `$.status == "failed"`로 설정하세요.
5단계: 어설션 추가
루프가 종료된 후 다음을 확인하는 어설션 프로세서(Assertion processor)를 추가하세요:
- `$.status`가 `"succeeded"`와 같음
- `$.content.video_url`이 비어 있지 않음
시나리오를 실행하면 Apidog는 각 단계, 추출된 작업 ID, 모든 폴링 응답, 최종 어설션 통과 여부를 보여주는 전체 테스트 보고서를 생성합니다.
또한 cURL 명령에서 Seedance 엔드포인트를 테스트 시나리오 단계로 직접 가져올 수도 있습니다. 이 접근 방식은 모든 헤더와 매개변수를 수동으로 입력하지 않고도 제출 및 폴링 요청을 빠르게 추가하려는 경우에 유용합니다.
가격 분석: 10초 동영상의 비용
Seedance API는 사용량에 따른 토큰 요금제를 사용합니다. 초기 체험 잔액 외에 관리할 월별 시트나 크레딧은 없습니다.
| 작업 유형 | 요금 (100만 토큰당) |
|---|---|
| 1080p T2V / I2V | 46 위안 (약 $6.40) |
| V2V (동영상 참조 입력) | 28 위안 (약 $3.90) |
1080p에서 일반적인 길이에 대한 대략적인 비용:
| 길이 | 대략적인 토큰 수 | 비용 (T2V/I2V) |
|---|---|---|
| 5초 | ~103,000 | ~$0.66 위안 / ~$0.93 |
| 10초 | ~206,000 | ~$9.48 위안 / ~$1.32 |
| 15초 | ~309,000 | ~$14.21 위안 / ~$1.97 |
새 계정은 약 8개의 전체 15초 생성을 충당하는 무료 체험 크레딧으로 시작합니다. 이 할당량을 사용하여 프로덕션 작업 부하를 시작하기 전에 프롬프트 및 설정을 실험해 보세요.
낮은 해상도는 토큰 소비를 크게 줄입니다. 동일한 길이의 480p 동영상은 1080p보다 훨씬 저렴합니다. 개발은 720p에서 시작하고, 최종 출력에만 해상도를 높이세요.
일반적인 오류 및 해결 방법
429 너무 많은 요청 (Too Many Requests)
이는 분당 요청 수의 속도 제한이 아니라 동시성 제한에 도달했음을 의미합니다. 너무 많은 작업이 동시에 실행되고 있습니다. 이 상태 코드를 받으면 지수 백오프(exponential backoff)를 사용하세요. 10초 대기로 시작하여 각 재시도마다 두 배로 늘리고, 60초에서 상한을 설정하세요. 앞서 보여준 폴링 루프에 이 패턴이 포함되어 있습니다.
상태: "실패함" (status: "failed")
실패한 작업은 모델이 동영상을 생성할 수 없었음을 의미합니다. 일반적인 원인: 프롬프트에 안전 필터를 위반하는 콘텐츠가 포함되었거나, 입력 이미지가 손상되었거나 너무 컸거나, 매개변수 조합이 유효하지 않았습니다. 입력 파일과 프롬프트를 확인한 다음 다시 제출하세요.
상태: "만료됨" (status: "expired")
작업이 완료되지 않고 대기열에 너무 오래 머무르면 만료됩니다. 이는 피크 로드 기간에 발생할 수 있습니다. 작업을 다시 제출하세요. 만료된 작업을 다시 시작할 방법은 없습니다.
video_url에서 403 오류
URL이 만료되었습니다. 파일을 다운로드하기 전에 24시간 창이 지났습니다. 작업 기록은 API에 최대 7일 동안 존재할 수 있지만, 동영상 파일은 사라집니다. 저장해 두었다면 동일한 매개변수와 시드 값을 사용하여 다시 생성해야 합니다.
시드 재현성 (Seed reproducibility)
이전 응답에서 `seed` 값을 저장했다면, 동일한 매개변수로 다음 요청에 다시 전달하세요. 모델은 동일한 출력을 재현하려고 시도합니다. 이는 만료된 동영상을 동일한 결과로 다시 생성하는 데 유용합니다.
결론
Seedance 2.0 API는 오늘날 사용 가능한 가장 뛰어난 동영상 생성 모델 중 하나에 대한 프로그래밍 방식의 접근을 제공합니다. 비동기 작업 패턴은 간단합니다: POST로 작업을 생성하고, 성공할 때까지 폴링한 다음, 즉시 다운로드합니다. 다중 모드 입력, 원본 오디오 생성 및 북엔드 프레임 제어를 통해 웹 콘솔에서는 불가능했던 동영상 워크플로를 구축할 수 있습니다.
프로덕션에 들어가기 전에 Apidog에서 테스트 범위를 설정하세요. 테스트 시나리오 체인은 실제 사용자에게 영향을 미치기 전에 잘못된 폴링 로직, 누락된 추출 단계 및 URL 만료 문제를 잡아냅니다.
자주 묻는 질문
Q: `doubao-seedance-2-0-260128`과 `doubao-seedance-2-0-fast-260128`의 차이점은 무엇인가요?
표준 모델은 더 높은 품질의 출력을 생성하며 프로덕션의 기본값입니다. 빠른 모델은 더 낮은 시각적 품질로 작업을 더 빠르게 완료합니다. 프롬프트 반복 시 빠른 모델을 사용하고 최종 렌더링을 위해서는 표준 모델로 전환하세요.
Q: Seedance 2.0을 중국 외 지역에서 사용할 수 있나요?
API 엔드포인트는 베이징 지역에 호스팅됩니다. 중국 외 개발자도 호출할 수 있지만, 지연 시간이 더 길어질 것입니다. 계정 유형에 대한 지리적 제한 사항은 Volcengine의 서비스 약관을 확인하세요.
Q: 여러 클립을 더 긴 동영상으로 연결하려면 어떻게 해야 하나요?
각 생성에서 `return_last_frame: true`로 설정하세요. 응답에는 동영상 URL과 함께 마지막 프레임 이미지가 포함됩니다. 이 이미지를 다음 요청의 첫 프레임으로 전달하세요. 필요한 모든 클립을 얻을 때까지 반복한 다음, 동영상 편집 라이브러리를 사용하여 연결하세요.
Q: 원본 오디오 생성 비용이 더 많이 드나요?
원본 오디오 생성은 모델이 동영상만 실행하는 대신 오디오-비디오 공동 생성을 실행하므로 토큰 소비를 약간 증가시킵니다. `generate_audio: true`가 없는 동일한 요청에 비해 `completion_tokens`가 약간 증가할 것으로 예상하세요.
Q: 폴링 대신 웹훅을 설정할 수 있나요?
네, 가능합니다. 제출 요청에 `callback_url` 매개변수를 전달하세요. 상태가 변경되면 API가 완료된 작업 결과를 해당 URL로 POST합니다. 이는 고용량 파이프라인의 경우 폴링보다 효율적입니다.
Q: 9개 이미지 제한을 초과하면 어떻게 되나요?
작업이 생성되기 전에 API가 400 유효성 검사 오류를 반환합니다. 콘텐츠 배열의 이미지 수를 9개 이하로 줄이세요.
Q: 시드 매개변수가 정확히 동일한 동영상을 재현할 것을 보장하나요?
시드 매개변수는 출력을 더 재현 가능하게 만듭니다. 매개변수가 다르거나 서버 측 모델 버전이 변경되면 정확한 재현은 보장되지 않습니다. 이는 사용 가능한 가장 근접한 근사치입니다.
Q: 여러 작업에 걸쳐 지출을 추적하려면 어떻게 해야 하나요?
각 작업 응답에서 `completion_tokens` 필드를 읽고 티어의 토큰 요율을 곱하세요. 이 값을 데이터베이스에 기록하여 비용을 추적하세요. API에는 내장된 지출 대시보드가 없으므로 처음부터 자체 추적 시스템을 구축해야 합니다.
