Alibaba: Wan 3.0 Prime
Alibaba Wan 3.0 Prime은 속도에 최적화한 Wan 3.0 영상 모델입니다. 제작사 프로파일은 통합 소리와 함께 텍스트, 첫 프레임, 시작·끝 프레임 생성 및 멀티모달 참조를 지원합니다. 적응형 구도와 편집 워크플로를 갖추고 480p·720p·1080p에서 30fps의 2–30초 MP4 클립을 제작합니다.
모델 소개
이 설명은 모델의 기능을 다룹니다. Ailoot에서 사용할 수 있는 입력, 출력 및 옵션은 아래에 선택한 메서드별로 표시됩니다.
Alibaba Wan 3.0 Prime은 Wan 3.0 동영상 계열의 가속 버전입니다. 제조사는 이를 wan3.0-video-prime으로 명명하고, 표준 Wan 3.0과 같은 올인원 작업 범주를 문서화하면서 속도를 이 버전의 차별점으로 강조합니다. 글로 된 제작 지시, 시작 이미지, 시각적 또는 음성 참조, 원본 동영상으로 소리를 포함한 클립을 유도할 수 있습니다. 상품 장면, 짧은 이야기, 정지 이미지의 애니메이션, 기존 숏의 구체적인 수정 등이 유용한 산출물입니다.
텍스트로 동영상을 만들 때는 피사체, 장면, 동작, 카메라, 시각적 표현, 소리를 설명하세요. 3.0 가이드는 단일 숏 또는 숏 레이블과 시간 구간이 있는 스토리보드를 지원하며, 숏당 약 4~6초를 권장합니다. 상품 클립에서는 탁자 위 가방을 안정적인 와이드 숏으로 보여 준 뒤 소재의 세부 모습으로 가까이 이동하고, 짧은 대사가 나오는 동안 마무리 구도를 유지할 수 있습니다. 시퀀스에 하나의 명확한 목적을 부여하고 카메라, 속도감, 상품 정체성이 일관되는지 확인하세요.
첫 프레임 생성에서는 제공한 이미지가 시작 모습을 정하고 프롬프트가 움직임과 카메라 작업을 설명합니다. 첫·마지막 프레임 생성에서는 두 끝점을 모두 제공하고 그 사이의 전환을 요청합니다. 같은 장면에 속하는 끝점 이미지와 의도한 출력에 맞는 화면 형태를 준비하세요. 제조사는 이미지 기반 작업에 적응형 프레이밍을 권장합니다. 끝점 모드와 별도의 참조 모드는 자료 조합 규칙이 다릅니다. 한 요청에서 첫 프레임이나 마지막 프레임을 참조 이미지, 참조 동영상, 참조 오디오 입력과 섞지 않습니다.
참조 모드는 이미지 최대 열 장, 동영상 다섯 개, 오디오 다섯 개를 받으며, 멀티모달 참조 자료의 합계는 스무 개 이내입니다. 문서화된 파일별 한도는 참조 이미지 20 MB, 동영상 100 MB, 오디오 15 MB입니다. 참조 동영상은 합계 최대 15초이고, 참조 오디오에는 별도로 합계 15초가 허용됩니다. 각 자료의 역할을 지정하고 Image 1, Video 1, Audio 1처럼 유형별 번호를 사용하세요. 사람, 상품, 카메라 움직임, 목소리를 서로 구별되지 않는 참조로 남겨 두지 마세요.
제조사는 문서 하나 또는 공개 웹페이지 하나의 참조도 지원하며, 다른 참조 자료와 함께 사용할 수 있습니다. 파일과 웹 링크는 상호 배타적이고, 원본은 로그인 없이 접근할 수 있어야 합니다. 문서 기반 장면은 관련 상품이나 이야기 내용을 맥락으로 사용하고 시각적 참조로 외형을 정할 수 있습니다. 클립에 실제로 반영할 자료를 준비하고 중요한 요소를 명시하세요. 보기 좋지만 내용이 달라진 표현을 받아들이기보다 생성 장면의 사실적 시각 세부 사항과 글자를 원본과 대조하세요.
대사, 환경음, 효과음, 배경 음악이 영상과 함께 생성됩니다. 발화 내용, 화자의 정체성, 말하는 방식, 장면에서 소리가 차지하는 위치를 설명하세요. 가이드는 기본적으로 활성화되는 오디오와 무음 동영상 제어를 문서화합니다. 대화에서는 화자마다 고유한 시각적·음성 단서를 주고 대화할 시간을 충분히 남기세요. 실제 발화 내용, 화자 배정, 효과음과 눈에 보이는 행동의 관계를 들어 보세요. 통합 오디오도 장면의 일부이므로 영상과 같은 수준의 검토가 필요합니다.
제조사의 올인원 가이드는 참조 동영상의 편집과 연장도 문서화합니다. 편집 지시에는 추가, 제거, 교체할 요소와 보존할 특징을 명시해야 합니다. 연장 지시에는 기존 클립의 앞, 뒤 또는 주변에 들어갈 내용을 설명해야 합니다. 이러한 워크플로에서는 적응형 프레이밍과 스마트 길이를 사용하세요. 동영상 입력이 제공되면 문서상 입력 및 출력 동영상의 합계 길이가 30초를 넘으면 안 됩니다. 원본 구간과 의도한 변경을 명확히 준비하고, 매력적인 프레임 하나만 판단하기보다 전환, 유지된 피사체, 소리를 검토하세요.
문서화된 출력은 30fps의 MP4이며, 해상도는 480p, 720p, 1080p이고 새로 생성하는 길이는 2~30초입니다. 스마트 길이를 사용하면 모델이 적합한 길이를 선택합니다. 정사각형, 가로형, 세로형 프레이밍을 사용할 수 있고, 적응형 프레이밍은 제공된 자료를 따릅니다. 제조사는 생성을 작업으로 처리한 뒤 완성된 동영상 위치를 반환합니다. 가이드에 따르면 결과 위치는 24시간 유효합니다. 편집이나 시퀀스를 준비할 때 실제 클립과 제작 지시를 보관하고 사용 전에 산출물 전체를 확인하세요.
Prime과 표준 Wan 3.0은 문서화된 모드와 준비 구조를 공유합니다. Prime은 속도에 최적화된 선택지이며 고정된 완료 시간을 보장하지 않습니다. 이전 Wan 2.7과 2.6 모드에는 각각 길이, 참조, 출력 규칙이 있으므로 그 한도가 이 3.0 버전을 정의하지 않습니다. 유용한 검토에서는 물체와 인물의 연속성, 끝점 프레이밍, 요청한 편집, 대사, 원본에 의존하는 세부 사항을 확인하세요. 다음 수정은 구체적으로 정해, 발견한 문제를 고치는 동안 장면의 성공적인 요소를 안정적으로 유지하세요.
Ailoot Ultra · 동영상 POST /v1/videos alibaba/wan-3.0-prime
alibaba/wan-3.0-prime시작하기
Alibaba Wan 3.0 Prime은 속도에 최적화한 Wan 3.0 영상 모델입니다. 제작사 프로파일은 통합 소리와 함께 텍스트, 첫 프레임, 시작·끝 프레임 생성 및 멀티모달 참조를 지원합니다. 적응형 구도와 편집 워크플로를 갖추고 480p·720p·1080p에서 30fps의 2–30초 MP4 클립을 제작합니다.
- 허용 입력
- 텍스트 · 이미지
- 결과
- 동영상
Ailoot에서 사용 가능 · 입력 및 메서드
Ailoot Ultra · 동영상 POST /v1/videos
- 입력
text,image- 출력
video- 출력 형식
- 원본 MP4 바이트(정규화·트랜스코딩 없음)
| 필드 | 유형 | 요건 | 값과 한도 | 기본값 |
|---|---|---|---|---|
필드model | 유형string | 요건필수 | 값과 한도 alibaba/wan-3.0-prime | 기본값— |
필드prompt | 유형string | 요건필수 | 값과 한도 | 기본값— |
필드duration | 유형integer | 요건필수 | 값과 한도 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30 최솟값: 1 최댓값: 600 | 기본값— |
필드resolution | 유형string | 요건선택 사항 | 값과 한도 480p, 720p, 1080p | 기본값— |
필드aspect_ratio | 유형string | 요건선택 사항 | 값과 한도 16:9, 4:3, 1:1, 3:4, 9:16 | 기본값— |
필드generate_audio | 유형boolean | 요건선택 사항 | 값과 한도 false, true | 기본값— |
필드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 | 요건선택 사항 | 값과 한도 | 기본값— |
필드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/wan-3.0-prime
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/wan-3.0-prime
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, 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.56 동영상 초당 |
| 설정동영상 요금 | 요금표— | 예측 수량— | 과금 단위동영상 초당 | 과금 조건resolution: 480p | 요금 출력 · 동영상 가격 · 비교 전용 추정치 $0.136 동영상 초당 |
| 설정동영상 요금 | 요금표— | 예측 수량— | 과금 단위동영상 초당 | 과금 조건resolution: 720p | 요금 출력 · 동영상 가격 · 비교 전용 추정치 $0.28 동영상 초당 |
| 설정예상 생성 비용 | 요금표— | 예측 수량1회 생성 예상치 | 과금 단위— | 과금 조건— | 요금 출력 · 예상 생성 비용 · 비교 전용 추정치 $0.272 생성 전 추정치 이 예상 금액은 추가 요금이나 생성 완료 시 적용되는 고정 요금이 아닙니다. |
Ailoot는 요청 전에 예상 금액을 미리 확보합니다. 결과를 받은 뒤 측정된 사용량을 기준으로 최종 요금을 정산합니다. 스트리밍 정산에는 최종 사용량 기록을 사용합니다. 금액 확보와 정산 방식 →
참조 요금 상세 정보
모델 수준의 참조 요금표는 메서드 선택, 견적 또는 요금을 변경하지 않습니다. 실제 과금에는 선택한 Ailoot 메서드 요금이 적용됩니다.
동영상 설정별 요금 참조
설정별 가격
각 요금을 표시된 조건과 대조하세요. 서로 대체되는 설정 묶음마다 하나의 요금만 적용하세요.
| 설정 | 과금 조건 | 요금 |
|---|---|---|
| 설정동영상 요금 | 과금 조건resolution: 480p | 요금 출력 · 동영상 가격 $0.136 동영상 초당 표시된 구성의 공개 가격 참고값입니다. 최종 요금은 실제 청구된 구성을 따릅니다. |
| 설정동영상 요금 | 과금 조건resolution: 720p | 요금 출력 · 동영상 가격 $0.28 동영상 초당 표시된 구성의 공개 가격 참고값입니다. 최종 요금은 실제 청구된 구성을 따릅니다. |
| 설정동영상 요금 | 과금 조건resolution: 1080p | 요금 출력 · 동영상 가격 $0.56 동영상 초당 표시된 구성의 공개 가격 참고값입니다. 최종 요금은 실제 청구된 구성을 따릅니다. |
요청 예제
Ailoot Ultra · 동영상
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":8,"model":"alibaba/wan-3.0-prime","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
작업 상태 확인
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/wan-3.0-prime
메서드 경로 별칭
위에 표시된 메서드 경로를 사용하세요.
관련 호출용 ID
FAQ · Alibaba: Wan 3.0 Prime
- 어떤 입력과 결과를 사용할 수 있나요?
POST /v1/videos·alibaba/wan-3.0-prime:text,image→video- 요청은 어떤 필드를 사용하나요?
POST /v1/videos·alibaba/wan-3.0-prime:model,prompt,duration,resolution,aspect_ratio,generate_audio,frame_images,input_references,seed,callback_url,session_id,trace,user- 어떤 제한이 적용되나요?
POST /v1/videos·alibaba/wan-3.0-prime:duration.minimum:1;duration.maximum:600;frame_images.max_items:1;frame_images.min_items:1;seed.minimum:-9223372036854775808;seed.maximum:9223372036854775807