Wan 동영상 생성 API
LMU AI를 통해 네이티브 비동기 프로토콜로 Wan(Alibaba DashScope) 동영상 생성을 호출합니다. 작업 생성, 결과 폴링, 기본값, 전체 폴링 예제를 다룹니다.
Wan(Alibaba Cloud Model Studio, DashScope) 동영상 생성은 공식 DashScope 프로토콜과 동일한 벤더의 네이티브 비동기 프로토콜을 사용합니다. 공식 SDK나 curl 명령의 주소를 LMU AI 주소로, 키를 LMU AI API 키로 바꾸기만 하면 되며 요청 본문은 그대로 유지됩니다. 인증, 과금 및 워터마크, 동시 실행 제한, 오류 코드에 관한 공통 규칙은 동영상 생성 API 개요를 참조하세요.
Base URL
https://api.lmuai.ai| 작업 | 엔드포인트 |
|---|---|
| 작업 생성 | POST /api/v1/services/aigc/video-generation/video-synthesis |
| 작업 조회 | GET /api/v1/tasks/{task_id} |
그룹에 동영상 생성이 활성화되어 있어야 합니다
API 키가 속한 그룹에 "동영상 생성"이 활성화되어 있어야 하며, 그렇지 않으면 호출 시 403이 반환됩니다. 모델 이름은 그룹에 활성화된 이름과 정확히 일치해야 합니다(대소문자 구분). 사용 가능한 모델은 GET /v1/models로 확인하세요.
1. 작업 생성
POST /api/v1/services/aigc/video-generation/video-synthesis
비동기 헤더 X-DashScope-Async: enable은 선택 사항이며, 플랫폼이 자동으로 추가합니다.
| 매개변수 | 타입 | 필수 | 설명 |
|---|---|---|---|
model | string | 예 | 예: wan3.0-video |
input.prompt | string | 예 | 프롬프트 |
input.media | array | 아니요 | 참조 미디어. 예: [{"type":"first_frame","url":"…"}]. type은 first_frame 또는 reference_image일 수 있습니다 |
parameters.resolution | string | 아니요 | 해상도 등급: 480P / 720P / 1080P, 기본값 1080P |
parameters.duration | integer | 아니요 | 길이(초), 기본값 5 |
parameters.watermark | boolean | 아니요 | 그룹 정책에 따라 플랫폼이 일괄 설정하며, 클라이언트가 지정한 값은 무시될 수 있습니다 |
curl https://api.lmuai.ai/api/v1/services/aigc/video-generation/video-synthesis \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "wan3.0-video",
"input": {"prompt": "A Shiba Inu running across a sunny meadow"},
"parameters": {"resolution": "720P", "duration": 5}
}'import requests
BASE = "https://api.lmuai.ai"
HEADERS = {"Authorization": "Bearer YOUR_API_KEY"}
resp = requests.post(f"{BASE}/api/v1/services/aigc/video-generation/video-synthesis", headers=HEADERS, json={
"model": "wan3.0-video",
"input": {"prompt": "A Shiba Inu running across a sunny meadow"},
"parameters": {"resolution": "720P", "duration": 5},
})
resp.raise_for_status()
task_id = resp.json()["output"]["task_id"]
print(task_id)const BASE = "https://api.lmuai.ai";
const headers = {
Authorization: "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
};
const resp = await fetch(`${BASE}/api/v1/services/aigc/video-generation/video-synthesis`, {
method: "POST",
headers,
body: JSON.stringify({
model: "wan3.0-video",
input: { prompt: "A Shiba Inu running across a sunny meadow" },
parameters: { resolution: "720P", duration: 5 },
}),
});
const data = await resp.json();
console.log(data.output.task_id);응답:
{
"request_id": "4909100c-…",
"output": {
"task_id": "c65c77fe-323b-4140-8de6-5a7241d9ec44",
"task_status": "PENDING"
}
}2. 작업 조회
GET /api/v1/tasks/{task_id}
output.task_status 값: PENDING → RUNNING → SUCCEEDED / FAILED / CANCELED. 성공 시 동영상 URL은 output.video_url에, 과금된 초는 usage.duration에 있습니다.
curl https://api.lmuai.ai/api/v1/tasks/TASK_ID \
-H "Authorization: Bearer YOUR_API_KEY"응답(성공):
{
"request_id": "…",
"output": {
"task_id": "c65c77fe-323b-4140-8de6-5a7241d9ec44",
"task_status": "SUCCEEDED",
"video_url": "https://…/output.mp4"
},
"usage": {
"duration": 2.0,
"video_count": 1
}
}취소 엔드포인트 없음
Wan에는 취소 엔드포인트가 없습니다. 제출된 작업은 항상 끝까지 실행됩니다. 실패한 작업은 과금되지 않습니다.
3. 전체 예제: 생성 및 폴링
import time, requests
BASE = "https://api.lmuai.ai"
HEADERS = {"Authorization": "Bearer YOUR_API_KEY"}
# 1. Create the task
resp = requests.post(f"{BASE}/api/v1/services/aigc/video-generation/video-synthesis", headers=HEADERS, json={
"model": "wan3.0-video",
"input": {"prompt": "A Shiba Inu running across a sunny meadow"},
"parameters": {"resolution": "720P", "duration": 5},
})
resp.raise_for_status()
task_id = resp.json()["output"]["task_id"]
# 2. Poll until a final state (every 10 seconds)
while True:
task = requests.get(f"{BASE}/api/v1/tasks/{task_id}", headers=HEADERS).json()
status = task["output"]["task_status"]
if status in ("SUCCEEDED", "FAILED", "CANCELED", "CANCELLED", "UNKNOWN"):
break
time.sleep(10)
# 3. Download (the link is valid for 24 hours)
if status == "SUCCEEDED":
url = task["output"]["video_url"]
with open(f"{task_id}.mp4", "wb") as f:
f.write(requests.get(url).content)
else:
print("Generation failed:", task)4. 과금 및 오류 코드
Wan은 "실제 초 × 해상도 등급 단가"로 과금되며, 과금된 초는 조회 결과의 usage.duration에 있습니다. 작업 생성 시 예상 금액이 동결되며, 잔액이 부족하면 402가 반환됩니다. 성공 시 실제 사용량으로 정산되고, 실패한 작업은 전액 환불됩니다. 각 사용자와 각 API 키는 동시에 최대 5개의 작업을 생성할 수 있으며, 이를 초과하면 요청 시 429가 반환됩니다.
전체 규칙은 개요의 과금 및 워터마크, 동시 실행 제한, 오류 코드를 참조하세요. 다른 제공업체는 Seedance 동영상 생성 API를 참조하세요.
마지막 업데이트:
아직 궁금한 점이 있다면 LMU AI 커뮤니티(중국어)에 질문하세요. 콘솔 계정으로 바로 로그인할 수 있습니다.
LMU AI API 키를 발급받고 Claude와 Codex를 바로 사용하세요
무료 가입, 유연한 요금제. 하나의 API 키로 Claude Code, Codex CLI, Cursor, VS Code 확장, OpenCode, Cherry Studio 등 AI 도구에 연결됩니다.
가입하기