모델

Alibaba: HappyHorse 1.0

Markdown · JSON

Alibaba: HappyHorse 1.0

Alibaba HappyHorse 1.0은 텍스트, 첫 이미지 또는 최대 9개 참조 이미지에서 소리 있는 짧은 영상을 만듭니다. 생성 모드는 720p 또는 1080p, 24fps의 3–15초 MP4를 출력합니다. 별도 이름의 1.0 영상 편집 프로파일은 자체 제한 내에서 선택적 시각 참조를 사용해 제공 영상을 수정합니다.

모델 소개

이 설명은 모델의 기능을 다룹니다. Ailoot에서 사용할 수 있는 입력, 출력 및 옵션은 아래에 선택한 메서드별로 표시됩니다.

Alibaba HappyHorse 1.0은 텍스트-비디오, 첫 프레임 이미지-비디오와 참조-비디오 프로파일을 명시한 영상 제작 버전입니다. 제작사는 물리적으로 설득력 있는 움직임, 의미 이해와 시청각 동기화를 창작의 핵심으로 설명합니다. 참조 프로파일은 최대 9개 이미지로 피사체와 장면을 안내합니다. 유용한 에셋은 소리 있는 짧은 클립으로, 새 장면, 준비된 시작 정지 이미지의 애니메이션 또는 참조 기반 캐릭터·제품 숏입니다.

텍스트 장면에서는 의도한 소리와 함께 피사체, 배경, 동작과 카메라를 정의하세요. 탁상 장면이라면 얕은 물 트레이에서 작은 모형 돛단배가 움직이고 카메라가 탁자 높이에서 따라가도록 합니다. 검토에서는 배 형태, 장면의 규모, 물 움직임과 동작·소리의 관계를 확인할 수 있습니다. 핵심 순간이 불명확한 빽빽한 시퀀스보다 하나의 동작에 집중하면 평가하기 쉽습니다.

첫 프레임 생성에는 피사체와 구도가 원하는 시작에 이미 맞는 정지 이미지를 쓰세요. 이어질 움직임과 카메라 경로를 설명합니다. 제작사의 정확한 1.0 이미지 프로파일은 텍스트와 이미지 입력을 받으며 생성 매트릭스는 이를 첫 프레임 이미지-비디오로 식별합니다. 숏 생성 전에 크롭과 보이는 제품·캐릭터 디테일을 준비하세요. 첫 프레임만 판단하지 말고 움직임 내내 그 디테일을 알아볼 수 있는지 확인합니다.

참조-비디오는 시각 자료의 인물, 제품, 스타일이나 배경을 새로 설명한 장면에 결합합니다. 정확한 1.0 참조 모델 페이지는 이미지 최대 9개를 문서화합니다. 기획에서 역할을 배정하고 장면 안에서 피사체가 어떻게 행동할지 설명하세요. 제품 소개에서는 물품 참조와 주변 장소·시각 스타일을 구별할 수 있습니다. 제작사가 강조한 안정성은 검토 목표입니다. 클립 전체에서 피사체, 표식과 위치를 실제 참조와 비교하세요.

1.0 제품군에는 기존 영상의 스타일 변경과 국소적·광범위한 수정을 위한 별도 이름의 영상 편집 프로파일도 있습니다. 이 프로파일은 참조 생성의 9개 이미지 구성과 달리 원본 영상 정확히 1개와 참조 이미지 0–5개를 받습니다. 인물, 움직임과 배경을 유지하며 옷을 바꾸는 것처럼 변경할 것과 유지할 것을 명시하세요. 편집 결과는 원하는 교체를 보여 주는 프레임 하나뿐 아니라 원본 클립 전체와 비교해야 합니다.

정확한 1.0 편집 가이드는 MP4 또는 MOV 원본을 받고 H.264를 권장하며 원본 길이 3–60초를 허용합니다. 최대 100MB, 짧은 변 최소 360픽셀, 긴 변 최대 4,096픽셀, 1:2.5–2.5:1 비율과 8–60fps 입력 속도를 명시합니다. 편집 출력은 3–15초입니다. 15초 이하 원본은 길이를 유지하고 더 긴 원본은 첫 15초만 사용합니다. 중요한 동작이 뒤쪽에 있으면 편집 준비 전에 원하는 구간을 자르세요.

편집 프로파일의 선택적 참조 이미지는 별도의 20MB 한도와 JPEG/JPG, PNG 또는 WEBP 형식 요건이 있으며 두 변 모두 최소 300픽셀, 비율은 문서상 같은 범위입니다. 가이드는 자동 오디오 처리와 원본 오디오 유지도 구별합니다. 원하는 변경을 식별하는 참조를 준비하고 원본 소리가 어떻게 관련되어야 할지 선택하세요. 이는 새 장면 생성 모드와 별개인 1.0 편집 프로파일 전용 제어입니다.

1.0 생성 모드에 대해 제작사의 정확한 매트릭스는 720p 또는 1080p, 3–15초, 24fps MP4와 오디오를 명시합니다. 편집 프로파일도 15초 제한 내에서 720p 또는 1080p를 출력합니다. 문서상 작업 흐름은 처리 식별자를 먼저 반환하고 성공 후 완성 영상 위치를 제공하며 결과 위치는 24시간 유효합니다. 제작 편집을 준비할 때 실제 클립, 프롬프트와 참조를 보관하고 반환 구도, 길이와 소리를 함께 확인하세요.

HappyHorse 1.1은 480p 생성 옵션과 시각 디테일, 움직임, 클립 간 일관성의 명시된 개선을 추가합니다. 이후 버전의 생성 설명은 1.0 프로파일의 고정 수정 보장이 아닙니다. 유용한 1.0 준비는 선택 모드와 실제 원본 자료를 따릅니다. 정체성, 접촉, 물체 기하, 글자와 소리를 검토한 뒤 다음 수정을 구체화하세요. 편집 클립은 요청 변경 밖의 중요한 원본 디테일도 의도한 장면에 적합한지 확인합니다.

Ailoot Ultra · 동영상 POST /v1/videos alibaba/happyhorse-1.0

alibaba/happyhorse-1.0

Alibaba /alibaba/happyhorse-1.0

시작하기

Alibaba HappyHorse 1.0은 텍스트, 첫 이미지 또는 최대 9개 참조 이미지에서 소리 있는 짧은 영상을 만듭니다. 생성 모드는 720p 또는 1080p, 24fps의 3–15초 MP4를 출력합니다. 별도 이름의 1.0 영상 편집 프로파일은 자체 제한 내에서 선택적 시각 참조를 사용해 제공 영상을 수정합니다.

허용 입력
텍스트 · 이미지
결과
동영상

Ailoot에서 사용 가능 · 입력 및 메서드

Ailoot Ultra · 동영상 POST /v1/videos
입력
text, image
출력
video
출력 형식
원본 MP4 바이트(정규화·트랜스코딩 없음)
필드유형요건값과 한도기본값
필드model유형string요건필수값과 한도
alibaba/happyhorse-1.0
기본값—
필드prompt유형string요건필수값과 한도기본값—
필드duration유형integer요건필수값과 한도
3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15
최솟값: 1
최댓값: 600
기본값—
필드resolution유형string요건선택 사항값과 한도
720p, 1080p
기본값—
필드aspect_ratio유형string요건선택 사항값과 한도
16:9, 9:16, 1:1, 4:3, 3:4, 21:9, 9:21
기본값—
필드generate_audio유형boolean요건선택 사항값과 한도
false
기본값—
필드frame_images유형array요건선택 사항값과 한도
최소 항목 수: 1
최대 항목 수: 1
입력 콘텐츠: 프레임 객체 배열입니다. 각 객체에는 type=image_url, url을 포함하는 image_url 및 frame_type이 있습니다. HTTPS 이미지 URL을 사용하고 frame_type을 first_frame으로 설정하세요. 각 프레임 역할은 최대 한 번만 나타날 수 있습니다.
정확한 키: type, image_url, frame_type
조건: 이 키는 각 프레임 객체를 설명합니다. image_url에는 url만 포함됩니다. 텍스트만 사용하는 요청에서는 frame_images를 생략하세요.
기본값—
필드input_references유형array요건선택 사항값과 한도기본값—
필드size유형string요건선택 사항값과 한도
1280x720, 720x1280, 720x720, 960x720, 720x960, 1680x720, 720x1680, 1920x1080, 1080x1920, 1080x1080, 1440x1080, 1080x1440, 2520x1080, 1080x2520
패턴: ^[1-9][0-9]*x[1-9][0-9]*$
기본값—
필드seed유형integer요건선택 사항값과 한도
최솟값: -9,223,372,036,854,775,808
최댓값: 9,223,372,036,854,775,807
기본값—
필드callback_url유형string요건선택 사항값과 한도
패턴: ^https://
기본값—
필드session_id유형string요건선택 사항값과 한도기본값—
필드trace유형object요건선택 사항값과 한도기본값—
필드user유형string요건선택 사항값과 한도기본값—
입력 자료 조합

텍스트로 동영상 생성 · 작성한 프롬프트입니다. · 필수: model, prompt, duration

prompt는 텍스트로, duration은 정수 단위 초로 제공하세요. 지원되는 해상도를 선택하고 화면 비율을 추가하거나 나열된 크기를 사용하세요.

model: 유형: string · alibaba/happyhorse-1.0

prompt: 유형: string · 최대 UTF-8 바이트 수: 10,000 · 공백이 아닌 문자 필수: 예

이미지로 동영상 생성 · 작성한 프롬프트와 첫 프레임 이미지입니다. · 필수: model, prompt, duration, frame_images

frame_images는 배열입니다. 각 프레임 객체에는 type, image_url, frame_type이 있으며, image_url에는 url이 포함됩니다. type을 image_url로 설정하세요. first_frame을 사용하세요. 각 프레임 역할은 최대 한 번만 나타날 수 있습니다. 각 프레임에 공개 HTTPS 이미지 URL을 제공하세요. 지원되는 해상도를 선택하고 화면 비율을 추가하거나 나열된 크기를 사용하세요.

정확한 키: type, image_url, frame_type

model: 유형: string · alibaba/happyhorse-1.0

prompt: 유형: string · 최대 UTF-8 바이트 수: 10,000 · 공백이 아닌 문자 필수: 예

Reference to video · 작성한 프롬프트와 지원되는 이미지 참조 자료입니다. · 필수: model, prompt, duration, input_references

input_references는 객체 배열입니다. type을 image_url로 설정하고 url을 포함하는 해당 필드를 사용하세요. 공개 HTTPS URL을 사용하세요. 참조 모드를 선택하려면 frame_images를 생략하세요. 지원되는 해상도를 선택하고 화면 비율을 추가하거나 나열된 크기를 사용하세요.

model: 유형: string · alibaba/happyhorse-1.0

prompt: 유형: string · 최대 UTF-8 바이트 수: 10,000 · 공백이 아닌 문자 필수: 예

메서드 매개변수와 수명 주기
매개변수명세
매개변수content_type명세application/json
매개변수required명세model, prompt, duration
매개변수material_types명세text, image
매개변수additional_properties명세false
매개변수optional_controls명세resolution, aspect_ratio, generate_audio, frame_images, input_references, size, seed, callback_url, session_id, trace, user

수명 주기: submit_once_poll_original

GET /v1/videos/{public_id}

GET /v1/videos/{public_id}/content

요금

최종 요금 계산 방식

표시된 요율은 생성 전 비용을 예상하는 데 사용됩니다. 최종 청구액은 최초 생성에 기록된 비용으로 계산됩니다. 측정된 출력 길이와 예상 수량은 최종 청구 수량이 아닙니다.

요금 정보는 요청 옵션을 추가하지 않습니다. 지원되는 매개변수는 선택한 메서드에 표시됩니다.

빠른 모드
미지정 빠른 모드를 선택한 경우
Flex 모드
미지정 flex 모드를 선택한 경우
최대 추론 수준
미지정 최대 추론 수준에 default 조정값을 적용하는 경우

비교용 예상 요금

설정별 가격

각 요금을 표시된 조건과 대조하세요. 서로 대체되는 설정 묶음마다 하나의 요금만 적용하세요.

설정요금표예측 수량과금 단위과금 조건요금
설정기본 토큰 요금요금표기본 요금예측 수량—과금 단위—과금 조건—요금
입력 · 입력 토큰 · 비교 전용 추정치 — / 1K 토큰
출력 · 출력 토큰 · 비교 전용 추정치 — / 1K 토큰
입력 · 캐시 읽기 · 비교 전용 추정치 — / 1K 토큰
입력 · 캐시 쓰기 · 비교 전용 추정치 — / 1K 토큰
입력 · 캐시 쓰기, 1시간 · 비교 전용 추정치 — / 1K 토큰
설정동영상 요금요금표—예측 수량—과금 단위동영상 초당과금 조건resolution: 1080p요금
출력 · 동영상 가격 · 비교 전용 추정치 $0.3388 동영상 초당
설정동영상 요금요금표—예측 수량—과금 단위동영상 초당과금 조건resolution: 720p요금
출력 · 동영상 가격 · 비교 전용 추정치 $0.1976 동영상 초당
설정예상 생성 비용요금표—예측 수량1회 생성 예상치과금 단위—과금 조건—요금
출력 · 예상 생성 비용 · 비교 전용 추정치 $0.5928 생성 전 추정치

이 예상 금액은 추가 요금이나 생성 완료 시 적용되는 고정 요금이 아닙니다.

Ailoot는 요청 전에 예상 금액을 미리 확보합니다. 결과를 받은 뒤 측정된 사용량을 기준으로 최종 요금을 정산합니다. 스트리밍 정산에는 최종 사용량 기록을 사용합니다. 금액 확보와 정산 방식 →

참조 요금 상세 정보

모델 수준의 참조 요금표는 메서드 선택, 견적 또는 요금을 변경하지 않습니다. 실제 과금에는 선택한 Ailoot 메서드 요금이 적용됩니다.

동영상 설정별 요금 참조

설정별 가격

각 요금을 표시된 조건과 대조하세요. 서로 대체되는 설정 묶음마다 하나의 요금만 적용하세요.

설정과금 조건요금
설정동영상 요금과금 조건resolution: 720p요금
출력 · 동영상 가격 $0.1976 동영상 초당

표시된 구성의 공개 가격 참고값입니다. 최종 요금은 실제 청구된 구성을 따릅니다.

설정동영상 요금과금 조건resolution: 1080p요금
출력 · 동영상 가격 $0.3388 동영상 초당

표시된 구성의 공개 가격 참고값입니다. 최종 요금은 실제 청구된 구성을 따릅니다.

요청 예제

Ailoot Ultra · 동영상

curl · 동영상 생성
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
from pathlib import Path
Path('request.json').write_text('{"aspect_ratio":"16:9","duration":3,"model":"alibaba/happyhorse-1.0","prompt":"A serene mountain landscape at sunset","resolution":"720p"}', encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path('result.json').read_text())
print(json.dumps(r,ensure_ascii=False,indent=2))
print('Keep the complete JSON and response headers; do not resubmit an unknown creation.')
PY_RESULT

결과 수신 및 저장

Ailoot Ultra · 동영상

소유한 콘텐츠의 서명된 URL

  • GET /v1/videos/{public_id}
  • GET /v1/videos/{public_id}/content
작업 상태 확인
GET · 원래 작업의 상태 조회
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_STATUS_URL'
import json
from pathlib import Path
from urllib.parse import quote
r=json.loads(Path('result.json').read_text())
if not isinstance(r.get('id'),str) or not r['id']:raise SystemExit('Keep the original response and headers for reconciliation; no returned ID')
Path('status-url.txt').write_text('https://api.ailoot.ai/v1/videos/'+quote(r['id'],safe=''))
PY_STATUS_URL
curl --fail-with-body --silent --show-error "$(cat status-url.txt)" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -D status-headers.txt -o status.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path('status.json').read_text())
print(json.dumps(r,ensure_ascii=False,indent=2))
print('Keep the complete JSON and response headers; do not resubmit an unknown creation.')
PY_RESULT
기타 콘텐츠 조회
완료된 내 소유 출력 모두 저장
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_ASSETS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path('status.json').read_text())
if r.get('status')!='completed':raise SystemExit('Keep the original ID and read its status; never recreate an unknown job')
if not isinstance(r.get('data'),list) or not r['data']:raise SystemExit('Keep the complete original status; no completed outputs supplied')
urls=[]
for i,u in enumerate(r.get('data',[])):
    if not isinstance(u,str):raise SystemExit('Keep the original response; unexpected asset shape')
    urls.append((str(i),u))
for label,path in urls:
    u=urljoin('https://api.ailoot.ai',path);z=urlsplit(u)
    if z.scheme!='https' or z.netloc!='api.ailoot.ai' or z.username or z.password:raise SystemExit('Use the actual returned Ailoot owned content URL')
    target=Path('owned-'+label+'.bin')
    subprocess.run(['curl','--fail-with-body','--silent','--show-error',u,'-H','Authorization: Bearer '+os.environ['AILOOT_API_KEY'],'-D',str(target)+'.headers','-o',str(target)],check=True)
print('All returned owned URLs saved; complete metadata, timing and usage remain in the JSON.')
PY_ASSETS
완료된 결과 모두 보관

완료된 모든 동영상과 반환된 파일을 저장하고, 실제로 반환된 모든 자산 URL에서 가져오세요.

실제로 소유한 모든 출력과 함께 반환된 측정 메타데이터를 보존하세요.

원래 응답을 확인해야 할 경우

503 result_pending_check + 원래 id + X-Should-Retry:false; 원래 요청을 절대로 재전송하지 마세요.

응답 필드
필드유형의미
필드index유형integer의미출력 목록에서 이 동영상의 영부터 시작하는 위치입니다.
필드content_url유형string의미완료된 이 동영상의 서명된 HTTPS 다운로드 URL입니다.
필드sha256유형string | null의미원본 동영상 바이트의 SHA-256 다이제스트입니다. 확인할 수 없으면 null입니다.
필드size_bytes유형integer | null의미바이트 단위 원본 동영상 파일 크기입니다. 확인할 수 없으면 null입니다.
필드duration_ms유형integer | null의미밀리초 단위로 측정한 동영상 길이입니다. 확인할 수 없으면 null입니다.
필드width유형integer | null의미픽셀 단위 동영상 너비입니다. 확인할 수 없으면 null입니다.
필드height유형integer | null의미픽셀 단위 동영상 높이입니다. 확인할 수 없으면 null입니다.
필드video_codec유형string | null의미동영상 코덱 식별자입니다. 기록되지 않았으면 null입니다.
필드has_audio유형boolean | null의미동영상에 오디오 트랙이 포함되어 있는지 나타냅니다. 측정하지 않았으면 null입니다.
필드audio_codec유형string | null의미오디오 코덱 식별자입니다. 식별자가 기록되지 않았으면 null입니다.
오류와 다음 단계
응답조건다음 단계
응답404 · not_found_error조건동영상에 접근할 수 없거나 해당 동영상 ID를 찾지 못했습니다.다음 단계동영상 접근 권한을 확인하세요. 기존 동영상에는 원래 공개 ID와 동일한 API 키를 사용하세요.
응답401 · authentication_error조건API 키가 인증된 계정과 일치하지 않습니다.다음 단계제출 전에 API 키와 계정 접근 권한을 확인하세요.
응답400 · invalid_request_error조건요청을 읽을 수 없거나 다운로드 인덱스가 유효하지 않습니다.다음 단계요청 본문을 수정하세요. 다운로드할 때는 원래 작업에서 반환된 출력 인덱스를 선택하세요.
응답422 · price_unavailable조건선택한 동영상 설정의 요금을 계산할 수 없습니다.다음 단계지원되는 동영상 설정을 선택하고 필수 옵션을 모두 지정한 뒤 수정된 요청을 제출하세요.
응답422 · invalid_request_error조건동영상 입력 또는 원래 이어 만들기 작업이 유효하지 않습니다.다음 단계유효한 HTTPS 입력을 사용하세요. 이어 만들기에는 동일한 API 키로 완료된 원본의 공개 동영상 ID를 사용하세요.
응답402 · billing_error조건사용 가능한 잔액 또는 한도로는 예약할 수 없습니다.다음 단계새 요청을 전송하기 전에 사용 가능한 잔액과 한도를 확인하세요.
응답503 · server_error조건동영상 검증, 저장소 또는 서비스 접근을 일시적으로 사용할 수 없습니다.다음 단계서비스를 사용할 수 있을 때까지 기다리세요. 이미 동영상 ID가 있으면 새로 생성하지 말고 해당 원래 작업을 확인하세요.
응답503 · result_pending_check조건원래 동영상 결과와 청구액을 확인해야 합니다.다음 단계반환된 동영상 ID를 보존하고 해당 작업을 확인하세요. 확인 중에는 대체 생성 요청을 전송하지 마세요.
응답503 · owned_result_unavailable조건기존 동영상 다운로드를 일시적으로 사용할 수 없습니다.다음 단계나중에 동일한 동영상 작업을 확인하고 기존 출력을 다운로드하세요. 새로 생성하면 별도의 작업이 만들어집니다.
응답409 · video_not_ready조건동영상 콘텐츠가 게시되지 않았습니다.다음 단계원래 작업 상태를 확인하세요. completed를 보고하면 다운로드하고, failed를 보고하면 청구 확인 안내를 따르세요.

별칭

모델 별칭

Ailoot Ultra alibaba/happyhorse-1.0

메서드 경로 별칭

위에 표시된 메서드 경로를 사용하세요.

관련 호출용 ID

alibaba/happyhorse-1.0

FAQ · Alibaba: HappyHorse 1.0
어떤 입력과 결과를 사용할 수 있나요?

POST /v1/videos · alibaba/happyhorse-1.0: text, image → video

요청은 어떤 필드를 사용하나요?

POST /v1/videos · alibaba/happyhorse-1.0: model, prompt, duration, resolution, aspect_ratio, generate_audio, frame_images, input_references, size, seed, callback_url, session_id, trace, user

어떤 제한이 적용되나요?

POST /v1/videos · alibaba/happyhorse-1.0: duration.minimum: 1; duration.maximum: 600; frame_images.max_items: 1; frame_images.min_items: 1; seed.minimum: -9223372036854775808; seed.maximum: 9223372036854775807

자세히 보기

Claude Code, OpenCode, Hermes, 자체 앱에 Ailoot를 연결하세요.

회사와 그 프로젝트 포트폴리오

회사와 그 프로젝트 포트폴리오: 수백만 고객, 매월 수십억 규모의 매출.

할인받아 토큰을 구매하세요.

정기 작업에는 구독 할인, 토큰 구매에는 최대 50% 프로모션 코드.

구독
정기 요청에 맞는 할인 요금제를 선택하세요.
최대 50% 프로모션 코드
구매할 때 코드를 넣으면 진행 중 행사에 따라 가격을 다시 계산합니다.
이력의 지출
요청마다 모델, 토큰, 금액을 저장합니다.

구독 선택 · 모델 가격 보기

판매하는 제품에 API를 연결하세요.

Ailoot 공식 이용 조건과 라이선스 계약으로 SaaS, 앱, 봇에 사용하세요. 재판매에는 리셀러 라이선스를 요청하세요.

상업용 앱
서비스의 유료 기능에 텍스트, 이미지, 영상, 소리 생성을 넣으세요.
리셀러 라이선스
프로젝트 설명과 접근 구조를 보내 사용·재판매의 서면 조건을 요청하세요.
사이트의 문서
연결 전에 공식 이용 조건, 라이선스 계약, 데이터 처리 정책을 읽을 수 있습니다.

리셀러 라이선스 요청 · 공식 이용 조건과 라이선스 계약