Omni ReferenceAlibaba
Wan 3.0 全能参考
alibaba/wan-3.0/video
支持图片、视频、音频、文档、网页多模态参考输入,单次生成最长 30 秒、原生带音轨的视频。像素级还原参考素材中的角色、道具与空间关系,并支持首尾帧模式进行精确控制。
示例
参数
| 名称 | 类型 | 默认 | 约束 | 说明 |
|---|---|---|---|---|
| prompt提示词 | textarea | — | ≤ 5000 chars | 最多 5000 字符,中英文各算一个字符。与参考素材必填其一。 |
| images参考图片 | image_upload_group | — | image/jpeg,image/png,image/bmp,image/webp · 0–10 items | 最多 10 张,单张 ≤20MB,单边 240–8000 像素,长宽比不超过 8:1。PNG 不支持透明通道。与首尾帧互斥。 |
| audios参考音频 | audio_upload_group | — | audio/wav,audio/mpeg · 0–5 items | 最多 5 段,单段 1–15 秒,总时长 ≤15 秒,单个 <15MB。支持 WAV、MP3。与首尾帧互斥。 |
| first_frame首帧 | image_upload | — | image/jpeg,image/png,image/bmp,image/webp | 严格指定视频第一帧。与参考图片/视频/音频互斥。 |
| last_frame尾帧 | image_upload | — | image/jpeg,image/png,image/bmp,image/webp | 严格指定视频最后一帧。与参考图片/视频/音频互斥。 |
| resolution分辨率 | select | 1080P | 480P | 720P | 1080P | |
| aspect_ratio长宽比 | select | adaptive | adaptive | 16:9 | 4:3 | 1:1 | 3:4 | 9:16 | 自适应会根据意图和输入媒体比例自动选择。 |
| duration生成时长(秒) | number | 5 | -1 ~ 30 · step 1 | 2–30 秒;填 -1 为智能时长,由模型自动决定。有视频输入时,输入与输出总时长不超过 30 秒。智能时长按 30 秒预扣费。 |
| generate_audio生成音轨 | boolean | true | — | 关闭后输出视频不含音轨。开关音轨价格相同。 |
| enable_thinking深度思考模式 | boolean | false | — | 解析文档、网页、复杂图像内容时需要开启。不输入文档或链接时不建议开启。 |
| file参考文档 | file_upload | — | .docx,.doc,.xlsx,.xls,.pptx,.ppt,.pdf,.txt,.key,.pages,.numbers,.md | 最多 1 个,≤100MB,≤50 页。需开启深度思考模式,且与网页链接互斥。 |
| link参考网页 | text | — | — | 仅支持无需登录的公开网页。国内不解析海外 URL。需开启深度思考模式,且与参考文档互斥。 |
| seed随机种子 | number | — | 0 ~ 2147483647 · step 1 |
API
通过统一 REST API 调用本模型;在 API Keys 页获取密钥。
cURL
# 1) Submit — returns { "task_uuid": "..." }
curl -X POST "https://www.namifusion.com/api/v1/marketplace/run/alibaba/wan-3.0/video" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"input": {
"resolution": "1080P",
"aspect_ratio": "adaptive",
"duration": 5,
"generate_audio": true,
"enable_thinking": false
}
}'
# 2) Poll until status is "completed", then read the output URLs
curl "https://www.namifusion.com/api/v1/marketplace/run/tasks/TASK_UUID" \
-H "Authorization: Bearer YOUR_API_KEY"Python
import time, requests
API_KEY = "YOUR_API_KEY"
HEADERS = {"Authorization": f"Bearer {API_KEY}"}
# 1) Submit
resp = requests.post(
"https://www.namifusion.com/api/v1/marketplace/run/alibaba/wan-3.0/video",
headers=HEADERS,
json={
"input": {
"resolution": "1080P",
"aspect_ratio": "adaptive",
"duration": 5,
"generate_audio": True,
"enable_thinking": False
}
},
)
resp.raise_for_status() # 401/402/429/5xx stop here instead of polling a bad task
task = resp.json()
# 2) Poll until a terminal state (completed / failed / cancelled).
# This model is allowed up to 300s server-side.
deadline = time.time() + 360
while task.get("status") not in ("completed", "failed", "cancelled"):
if time.time() > deadline:
raise TimeoutError(f"still {task.get('status')} — keep the task_uuid and poll later")
time.sleep(3)
poll = requests.get(f"https://www.namifusion.com/api/v1/marketplace/run/tasks/{task['task_uuid']}", headers=HEADERS)
poll.raise_for_status()
task = poll.json()
print(task["status"], task.get("output"))JavaScript
const API_KEY = "YOUR_API_KEY";
const HEADERS = { Authorization: `Bearer ${API_KEY}` };
// 1) Submit
const resp = await fetch("https://www.namifusion.com/api/v1/marketplace/run/alibaba/wan-3.0/video", {
method: "POST",
headers: { ...HEADERS, "Content-Type": "application/json" },
body: JSON.stringify({
"input": {
"resolution": "1080P",
"aspect_ratio": "adaptive",
"duration": 5,
"generate_audio": true,
"enable_thinking": false
}
}),
});
if (!resp.ok) throw new Error(`submit failed: ${resp.status} ${await resp.text()}`);
let task = await resp.json();
// 2) Poll until a terminal state (completed / failed / cancelled).
// This model is allowed up to 300s server-side.
const deadline = Date.now() + 360 * 1000;
while (!["completed", "failed", "cancelled"].includes(task.status)) {
if (Date.now() > deadline) throw new Error(`still ${task.status} — keep the task_uuid and poll later`);
await new Promise((r) => setTimeout(r, 3000));
const poll = await fetch(`https://www.namifusion.com/api/v1/marketplace/run/tasks/${task.task_uuid}`, { headers: HEADERS });
if (!poll.ok) throw new Error(`poll failed: ${poll.status}`);
task = await poll.json();
}
console.log(task.status, task.output);文档
Wan 3.0 全能参考
一次调用,把图片、视频、音频、文档、网页变成同一条视频
Alibaba Wan 3.0 Omni Reference 支持五类参考输入同时生效,单次生成最长 30 秒、原生带音轨的视频。它在像素级还原参考素材中的角色、道具与空间关系的同时,支持首尾帧模式做精确控制,也可以把成片长度交给模型自行决定。开箱即用的 REST 推理 API,无冷启动。
🚀 主要功能
- 五类参考输入:最多 10 张参考图、5 段参考视频、5 段参考音频,外加 1 份参考文档或 1 个网页链接,可自由组合。
- 像素级身份保持:角色、道具、服装与空间关系在新镜头中保持一致,无需额外训练。
- 原生音轨:默认直接输出带声音的视频,省掉单独的配音环节。
- 首尾帧控制:指定首帧、尾帧或两者,精确约束镜头的起止画面。
- 智能时长:把时长交给模型,由内容自行决定成片长度(最长 30 秒)。
- 深度思考模式:开启后可解析参考文档、网页与复杂图像内容,再据此生成。
🛠️ 技术规格
| 参数 | 说明 |
|---|---|
| 模型架构 | Alibaba Wan 3.0 |
| 参考图片 | 最多 10 张 |
| 参考视频 | 最多 5 段(时长计入计费) |
| 参考音频 | 最多 5 段 |
| 参考文档 / 网页 | 文档 ≤100MB、≤50 页,或 1 个公开网页;二选一,需开启深度思考模式 |
| 输出格式 | 视频(MP4,默认含音轨) |
| 分辨率 | 480P / 720P / 1080P(默认 1080P) |
| 宽高比 | adaptive / 16:9 / 4:3 / 1:1 / 3:4 / 9:16 |
| 时长 | 2–30 秒(默认 5 秒),或设为 -1 交由模型决定;有视频输入时,输入与输出总时长不超过 30 秒 |
| 超时 | 300 秒 |
💰 价格
| 分辨率 | 计费公式 |
|---|---|
| 480P | 20 积分 × total_duration |
| 720P | 40 积分 × total_duration |
| 1080P | 80 积分 × total_duration |
total_duration = 生成视频时长 + 参考视频的计费时长(多段参考视频按总时长累加)。
智能时长的计费方式:把 duration 设为 -1 时,成片长度由模型决定,下单时无法预知,因此按 30 秒上限计费。例如 1080P、智能时长、无参考视频输入,单次扣费 2400 积分。如果对时长有明确预期,直接填具体秒数会更省。
💡 最佳应用场景
- 角色一致的连续剧集:用同一组参考图贯穿多个镜头,保持人物与服装不变。
- 产品实拍转视频:以实拍图与实拍视频为参考,生成同款质感的商品短片。
- 文档 / 网页转视频:开启深度思考模式,把产品文档或落地页直接变成讲解视频。
- 带声音的社媒短片:默认输出音轨,省掉后期配音环节。
- 首尾帧过渡:指定起止画面,做精确的转场与衔接。
🔗 相关模型
- alibaba/wan-2.6/reference-to-video:参考视频驱动的镜头语言与节奏复刻。
- alibaba/wan-2.6/image-to-video:单图转视频,成本更低。
- alibaba/wan-2.6/text-to-video:纯文本生成视频。