소개
Wan 2.2 Spicy 이미지→영상은 시작 프레임으로 정확히 5초나 8초 영상을 만듭니다. 의상, 몸, 세트, 조명, 화면 형태는 프레임이 담고 움직임은 프롬프트가 담습니다.
Wan 2.2 Spicy는 Alibaba Wan 2.2 라인에 속한 무검열 이미지→영상 계열입니다. 480p 또는 720p로 작동하며 요청 어디에도 콘텐츠 신고가 없고, 선택 사항인 끝 프레임으로 마무리를 정하거나 루프를 닫을 수 있습니다.
핵심 기능 및 하이라이트
켜야 할 콘텐츠 플래그가 없다
설정할 플래그도, 요청마다 하는 신고도, 저희 쪽 심사도 없습니다. 클립은 시작 프레임이 보여 주는 것과 프롬프트가 요청하는 것을 그대로 이어 갑니다.
몸과 빛은 시작 프레임이 담는다
공개된 예시는 새벽에 텅 빈 체육관 벤치에서 스트레칭하는 여성의 스틸에서 시작합니다. 의상, 땀, 창으로 들어오는 빛줄기가 이미 이미지에 담겨 있어서 프롬프트는 몸을 일으키며 숨을 고르는 모습만 쓰면 됐습니다.
정확히 5초 또는 8초
duration_seconds는 5나 8만 받으며, 다른 값은 반올림되지 않고 검증 오류가 됩니다. last_image_url은 선택 사항이며 마지막 프레임을 고정해 이음새 없는 루프나 계획한 마무리를 가능하게 합니다.
요청 파라미터
| 파라미터 | 필수 | 설명 |
|---|---|---|
image_url | 예 | 첫 프레임이고 가장 큰 지렛대입니다. 의상과 몸, 세트, 빛의 방향, 클립의 화면비가 전부 여기서 나옵니다. 1자 이상 |
prompt | 예 | 필수입니다. 움직임과 카메라만 적으세요. 1자 이상 |
duration_seconds | 아니요 | 정확히 5 또는 8입니다. 그 밖의 값은 반올림된 클립이 아니라 검증 오류입니다. |
resolution | 아니요 | 480p 또는 720p이고 기본값은 480p입니다. 가격과 작업이 돌아오는 시간을 둘 다 움직입니다. |
seed | 아니요 | 0에서 2147483647까지입니다. 같은 원본 컷으로 5초와 8초를, 또는 480p와 720p를 비교하는 동안에는 고정해 두세요. |
last_image_url | 아니요 | 선택인 마지막 프레임입니다. 첫 스틸을 가리키면 루프가 닫히고, 컷이 특정 지점에 도착해야 하면 다른 구도를 가리키게 하세요. 1자 이상 |
enable_prompt_expansion | 아니요 | 기본은 꺼짐입니다. 켜면 생성 전에 프롬프트를 다시 씁니다. 기본값: |
요금
| 사양 | 요금 |
|---|---|
| $0.019 / 초 |
| $0.038 / 초 |
활용 사례
다른 영상 API가 거절하는 무검열 클립
경쟁 모델이 콘텐츠 필터에서 거절하는 프롬프트도 여기서는 쓴 그대로 실행됩니다. 소스 이미지를 보내고 움직임을 설명하면 클립을 받을 수 있으며, 필터도 채울 선언도 없습니다.
컴패니언 캐릭터를 장면별로
매 장면에 같은 캐릭터 이미지를 시작 프레임으로 쓰면 인물, 의상, 방이 클립마다 이어집니다. 각 장면을 480p에서 승인한 뒤에 720p 패스 비용을 내므로 긴 장면이 비싸고 쓸 수 없는 결과물 하나로 끝나지 않습니다.
피드와 미리보기용 루프
9:16 이미지로 480p 5초를 만들면 자동 재생에서도 깔끔하게 이어지는 가벼운 루프가 됩니다. last_image_url을 시작 스틸로 지정하면 눈에 띄는 컷 없이 루프가 처음으로 돌아갑니다.
프롬프트 가이드 및 실전 팁
시작 프레임을 납품 비율로 자르기
화면비 필드가 없으므로 클립은 스틸의 비율을 따릅니다. 인물, 의상, 세트, 빛의 방향도 이미지가 정하므로 프롬프트에 쓸 필요가 없습니다.
움직이는 것만 쓰기
동작 하나, 카메라 움직임 하나, 빛이나 소리에 대한 메모 하나를 쓰십시오. 이미 보이는 의상을 다시 설명하면 모델이 그것을 새로 그리려 합니다. enable_prompt_expansion은 기본적으로 꺼져 있으며, 생성 전에 프롬프트를 다시 쓰기 때문에 한 줄짜리 브리프일 때만 켜십시오.
포함된 예시 응용하기
공개된 예시는 duration_seconds 5, resolution 480p를 쓰며 체육관 스틸을 image_url로 보냅니다.
She lowers her leg off the bench, rolls her shoulders back and straightens up, wiping sweat from her collarbone with the back of her wrist, chest rising as she catches her breath. Dawn light shifts across the concrete, dust drifting in the beam.
프롬프트는 움직임 하나, 제스처 하나, 빛만 다룹니다. 의상과 장소는 프레임에서 왔습니다.
480p로 승인한 뒤 720p로 생성하기
image_url과 prompt는 모두 필수입니다. 먼저 480p에서 테이크를 찾고, 맞아떨어지면 seed를 고정한 채 720p로 다시 만드십시오. 더 선명한 패스에 비용을 쓰기 전에 저렴한 초안으로 승인하는 것이 작업을 이렇게 나누는 이유입니다.
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": "alibaba/wan-2.2-spicy/image-to-video",
"input": {
"duration_seconds": 5,
"enable_prompt_expansion": false,
"image_url": "https://example.com/reference.png",
"prompt": "A slow aerial shot drifting over a misty pine forest at sunrise",
"resolution": "480p"
}
}'
# 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 레퍼런스에서 확인하세요.




























