소개
HappyHorse 1.1 참조→영상은 참조 이미지 19장으로 하나의 샷을 만듭니다. 이미지는 프롬프트가 언급하는 순서대로 15초 정수 길이이며 9가지 화면비 중에서 고를 수 있고, 생성된 사운드트랙이 붙습니다. 참조는 이미지뿐이며 영상이나 오디오 참조는 받지 않습니다.reference_image_urls에 담아 보냅니다. 720p 또는 1080p, 3
시작 자료에 따라 모드 선택하기
| 시작 자료 | 모드 |
|---|---|
| 작성한 장면이나 스크립트 | HappyHorse 1.1 텍스트→영상 |
| 승인된 시작 이미지 | HappyHorse 1.1 이미지→영상 |
| 참조 이미지 1~9장 | HappyHorse 1.1 참조→영상 |
핵심 기능 및 하이라이트
순서가 있는 슬롯 9개
이미지 최대 9장이면 한 요청으로 캐릭터, 의상 요소, 탈것, 장소, 소품을 고정할 수 있습니다. rider-jacket-bike-station 예시는 스틸 세 장으로 라이더, 풀어 헤친 재킷, 오토바이, 주유소를 테이크마다 같게 유지하며 3:4, 720p로 생성했습니다. 그래서 프롬프트는 동작과 빛만 적으면 됩니다.
얼굴·소품·장소를 한 테이크에
three-plate-corridor 예시는 이미지마다 다른 역할을 줍니다. 여성, 그녀가 든 체리레드 기타, 네온 모텔 복도입니다. 프롬프트는 어떤 이미지가 무엇인지 밝힌 뒤, 얼굴과 소품과 장소가 모두 함께 살아남아야 하는 뒤로 물러나며 따라가는 한 테이크를 요청합니다.
이 엔드포인트에서도 9가지 화면비
aspect_ratio는 16:9를 기본값으로 하는 9가지 값을 제공하며 1:1, 4:5, 5:4도 포함됩니다. product-in-place 예시는 1080p 정사각형으로, 한 이미지의 캔들 병을 다른 이미지의 대리석 선반에 올리고 선반에 드는 창문 빛에 맞춰 조명합니다.
요청 파라미터
| 파라미터 | 필수 | 설명 |
|---|---|---|
prompt | 예 | 각 레퍼런스를 올린 순서대로 대괄호까지 넣어 [Image 1], [Image 2]처럼 부르고, 무엇을 맡는지 밝힌 뒤 그들이 만들어야 할 컷을 적으세요. 1자 이상 · 2500자 이하 |
reference_image_urls | 예 | 필수이고, 프롬프트가 부르는 순서대로 이미지 1~9장입니다. 이미지 하나에 역할 하나입니다. 1개 이상 · 9개 이하 |
aspect_ratio | 아니요 | 아홉 가지 값이고 기본은 16:9입니다. 여기서는 쓸 수 있고 image-to-video에는 없습니다. |
resolution | 아니요 | 720p와 1080p 중에서 고릅니다. |
duration_seconds | 아니요 | 정수 초로 3에서 15까지입니다. |
seed | 아니요 | 무작위 출발점을 정하는 0에서 2147483647까지의 정수입니다. 빼면 실행마다 각자 값을 뽑습니다. |
요금
| 사양 | 요금 |
|---|---|
| $0.14 / 초 |
| $0.18 / 초 |
활용 사례
제품을 제자리에 두기
제품과 장소를 별도 이미지로 보내고 둘이 어떻게 어우러지는지 적습니다. product-in-place에서는 심지에 불이 붙고 연기 한 줄기가 오르는 동안 카메라가 천천히 다가가며, 불꽃의 따뜻한 빛이 대리석과 리넨 위에 두 번째 빛을 더합니다.
시리즈 전체에서 같은 출연진과 의상 유지하기
모든 샷에 같은 참조 세트를 쓰면 연기자, 의상, 탈것이 테이크마다 달라지지 않습니다. 프롬프트에서는 동작 문장만 바꾸십시오. 이미지를 매번 같은 순서로 보내야 위치로 부르는 표현이 올바른 그림을 계속 가리킵니다.
무검열 캐릭터 작업과 공들인 캐릭터 작업
image-to-video와 마찬가지로 이 경로는 받은 이미지를 따릅니다. text-to-video라면 거부될 무검열 캐릭터 작업도 출연진, 의상, 장소를 각각 전용 이미지로 고정한 참조 세트에서 시작할 수 있습니다.
프롬프트 가이드 및 실전 팁
이미지는 위치로 부르기
샷을 묘사하기 전에 각 이미지가 무엇을 맡는지 적습니다. 공개 예시는 위치로 부르는 두 가지 방식을 씁니다. ‘Use the woman from the first image exactly as she appears’와 ‘Place the candle jar from [Image 1] into the empty centre of the marble shelf in [Image 2]’입니다. 파일은 프롬프트가 이름을 부르는 순서대로 업로드하십시오.
이미지 한 장에 역할 하나
9개 슬롯은 상한이지 목표가 아닙니다. 같은 피사체를 여러 각도로 담은 이미지는 조율되지 않고 평균이 나므로, 인물, 의복, 소품, 장소처럼 이미지마다 다른 역할을 주십시오. 각 이미지는 짧은 변 400px 이상, 파일 크기 20MB 이하여야 합니다.
프롬프트는 동작과 빛에 쓰기
인물이 참조로 정해졌다면 프롬프트에는 생김새가 아니라 무엇을 하는지를 적습니다. ‘he swings a leg over the tank and settles, the overhead light pressing down from directly above, moths in the beam’이 그 예입니다. 조명 지시는 장소 이미지와 어긋나지 않게 하고, product-in-place가 선반의 빛 방향과 색온도에 맞추듯 쓰십시오.
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/happyhorse-1.1/reference-to-video",
"input": {
"aspect_ratio": "16:9",
"duration_seconds": 5,
"prompt": "A slow aerial shot drifting over a misty pine forest at sunrise",
"reference_image_urls": [
"https://example.com/reference.png"
],
"resolution": "720p"
}
}'
# 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 레퍼런스에서 확인하세요.







