Skip to main content
Wan 2.7 和 Wan 3.0 走阿里云 DashScope 兼容的异步任务接口。令牌必须使用 Wan 分组,费用按视频秒数计算。
Wan 视频生成不使用 /v1/videos 接口。图生视频、参考图生视频和视频编辑依赖 DashScope 原生的 input.media[] 结构,请固定使用上表中的创建任务端点。

创建令牌

在令牌管理创建用于 Wan 视频生成的令牌时,按下面配置: 请求时在 Authorization: Bearer 请求头中传入该令牌。Wan 模型只开放在 Wan 分组,必须使用这个分组的令牌;default、SeeDance2 等其他分组的令牌无法调用,会返回无可用渠道等错误。

计费与价格

Wan 视频按秒计费,以阿里云百炼官方原价为基准上浮 20%。上浮部分覆盖税费、汇率与跨境结算、平台运维和技术支持等成本。2026 年 10 月 14 日起,换算方式如下:
  • 老张API每秒美元价 = 阿里云官方每秒人民币原价 × 0.1714(Wan 分组倍率)
  • 按 1:7 固定汇率折算,0.1714 × 7 ≈ 1.2,即官方原价的 1.2 倍
调用日志里的扣费金额已经换算过,不要再乘一次倍率。各模型每秒单价: Wan 2.7 的文生、图生、参考生视频和视频编辑(wan2.7-t2v、wan2.7-i2v、wan2.7-r2v、wan2.7-videoedit)同价。阿里云官方原价取自阿里云百炼模型价格中华北2(北京)地域的价格。 计费时长按下面的规则计算:
  • 只输出视频的任务(文生、图生、只传参考图):按输出视频秒数计费。
  • 带输入视频的任务:按「输入视频秒数 + 输出视频秒数」计费,与阿里云的计费规则一致。
    • wan2.7-videoedit:源视频秒数 + 输出秒数;duration 传 2–10 秒时从开头截取源视频,输入按截取后的秒数计。
    • wan2.7-r2v 传参考视频:参考视频最多计 5 秒,再加输出秒数。
    • Wan 3.0 传 reference_video(参考、编辑或延长视频):输入视频总秒数 + 输出秒数。
  • 不传 resolution 时,Wan 2.7 和 Wan 3.0 都默认输出 1080P,按 1080P 计费。
几个单个视频的费用示例:
  • wan2.7-i2v 720P、5 秒:5 × $0.1028 ≈ $0.51
  • wan3.0-video 1080P、10 秒:10 × $0.2057 ≈ $2.06
  • wan2.7-videoedit 编辑一段 5 秒视频、输出 720P:(5 + 5) × $0.1028 ≈ $1.03
创建任务时先按请求的时长预扣,任务完成后按阿里云返回的实际秒数结算,多退少补。Wan 3.0 带输入视频时先按 30 秒预扣,完成后退回差额,提交前账户余额要够预扣。 失败的任务不计费;但重复提交同一个任务会重复计费,业务层请维护业务 ID 与 task_id 的对应关系,不要无条件自动重试。 每个任务的实际扣费以调用日志为准;如果失败的任务在日志中仍有扣费,请带上 task_id 联系支持团队(hi@laozhang.ai)。 输出时长和分辨率直接决定费用。建议在请求中显式设置 duration 和 resolution,创建任务前按上表估算成本。模型与价格总表列出了 Wan 模型及其分组。

调用流程

1

创建任务

调用 POST /wan/api/v1/services/aigc/video-generation/video-synthesis,并带上 X-DashScope-Async: enable 请求头。JSON 请求体包含:
  • model:Wan 模型 ID
  • input.prompt:提示词
  • input.media[]:图生视频、参考图生视频和视频编辑的素材
保存响应中的 output.task_id。
2

轮询状态

每 5–10 秒调用一次 GET /v1/tasks/{task_id},只根据顶层 status 判断任务状态,不要把内部上游字段当作业务状态。客户端总超时建议设为 20 分钟。
3

下载结果

status 为 completed 时,读取顶层 result_url 并在 24 小时内下载。result_url 是上游对象存储的签名链接,下载时不要携带老张API的 Authorization 请求头。
完整的请求约定、任务状态和字段说明放在示例之后的 API 参考。

准备环境

下面的 cURL 示例用 jq 从响应中提取字段(macOS 可用 brew install jq 安装)。先设置密钥和 Base URL:

文生视频

创建成功时返回 DashScope 兼容的任务对象:
从响应中取出 task_id,后面的查询都用它:
如果 TASK_ID 为空,查看 wan-create.json 中的错误信息。 下面三种任务的请求同样把响应保存到 wan-create.json,创建后用同一条 jq 命令取出 TASK_ID。

图生视频

driving_audio 属于模型能力差异项:wan2.7-i2v 支持图片加音频驱动;其他图生视频模型如果不支持音频,只传 first_frame。

参考图生视频

视频编辑

Wan 3.0 视频生成

Wan 3.0 不再按任务拆分模型 ID:同一个模型根据 input.media[] 里传入的素材,自动判断是文生、图生、参考生视频还是视频编辑。两个模型能力相同:
  • wan3.0-video:标准版。
  • wan3.0-video-prime:高速版,生成速度更快,单价更高。
两者使用同一个创建任务端点,查询和下载方式也和 Wan 2.7 相同。 参考生视频时,prompt 里可以用「图1」「视频1」「音频1」指代素材,编号按同类素材在数组里的顺序。 Wan 3.0 的 parameters 与 Wan 2.7 有几处不同: 文生视频的最小请求:
传入一段视频做风格编辑。这类任务的计费时长包含输入视频秒数,见计费与价格:
创建后同样用 jq 取出 TASK_ID,再按下一节查询和下载。参考文件(file)、网页链接(link)等其他素材写法见阿里云 Wan3.0 视频生成 API 参考。

查询和下载

查询任务

每 5–10 秒执行一次,直到 status 变为 completed 或进入其他终态。完成响应包含 status=completed 和 result_url,业务侧只依赖顶层字段:

下载视频

下载 result_url 时不要携带老张API的 Authorization 请求头。该地址是上游签名直链,额外的鉴权头可能导致 OSS 返回 403。链接 24 小时内有效,请在有效期内下载并转存到自己的存储。

Python 最小客户端

示例只使用 Python 标准库,无需安装依赖;运行前先设置 LAOZHANG_API_KEY 环境变量。它每 10 秒查询一次,总超时 20 分钟,完成后把视频保存为 wan-output.mp4。

API 参考

请求约定

完整端点如下。第一条创建视频任务,第二条查询任务状态;视频文件从任务完成后返回的 result_url 下载,task_id 与 result_url 的有效期见页首关键信息表。

任务状态

创建响应中的 output.task_status 是 DashScope 的原始状态,新建任务一般为 PENDING,只用来确认任务已提交。 之后以 GET /v1/tasks/{task_id} 返回的顶层 status 为准。查询得到上表以外的任何值(例如任务已被取消,或超过 24 小时后才查询),都按上表最后一行处理,不要继续轮询。 Wan / DashScope 的 progress 是粗粒度上报,常见情况是长时间停在 30%,最后直接跳到 100%。 只要 status 仍是 in_progress,继续等待即可,直到达到客户端总超时。

模型与输入模式

Wan 2.6 系列(wan2.6-t2v、wan2.6-i2v、wan2.6-r2v、wan2.6-r2v-flash)已于 2026 年 10 月 14 日下架。仍在调用的集成,请改用同能力的 Wan 2.7 模型或 Wan 3.0。 wan2.7-image-pro 是图片模型,不属于本页的视频生成端点,不要提交到 /wan/api/v1/services/aigc/video-generation/video-synthesis。

请求体

input.media[]

媒体素材 URL 必须是公网可访问的 HTTPS 直链。需要登录、带 Cookie、内网地址或临时不可访问的链接会导致任务失败。

parameters

其他模型的分辨率、时长与素材限制见阿里云文档:

常见错误

生产接入建议设置 20 分钟任务超时,保存创建响应、request_id、task_id 和最终任务详情,便于排查上游错误和核对扣费;任务完成后立即下载结果并转存。

常见问题

一个 5 秒视频大约多少钱?

按 2026 年 10 月 14 日单价,只输出视频、不带输入视频时:
  • wan3.0-video:720P 约 $0.51,1080P 约 $1.03
  • wan3.0-video-prime:720P 约 $0.77,1080P 约 $1.54
  • Wan 2.7:720P 约 $0.51,1080P 约 $0.86
费用按秒线性增加,10 秒约为两倍。不传 resolution 时默认按 1080P 计费;带输入视频的任务另加输入秒数,规则见计费与价格。

创建任务必须带异步请求头吗?

必须带。创建任务的 POST 请求要加 X-DashScope-Async: enable,因为 Wan 的 HTTP 接口只支持异步调用;缺少时阿里云会返回 current user api does not support synchronous calls。 查询任务的 GET /v1/tasks/{task_id} 和下载 result_url 都不需要这个请求头。

不传分辨率和时长时按什么规格计费?

默认按 1080P 计费。按阿里云 API 参考,Wan 2.7 的四个模型(wan2.7-t2v、wan2.7-i2v、wan2.7-r2v、wan2.7-videoedit)和 Wan 3.0 默认输出都是 1080P:
  • 文生、图生和参考生视频默认时长 5 秒;
  • Wan 2.7 视频编辑默认沿用源视频时长。
也就是说,一个什么参数都不传的文生视频任务会按 1080P、5 秒计费:
  • Wan 2.7:约 $0.86
  • wan3.0-video:约 $1.03
  • wan3.0-video-prime:约 $1.54
本页示例显式传了 720P。需要控制成本时,请在每个请求里写明 resolution 和 duration,再按计费与价格中的单价估算。

怎么生成竖屏或方形视频?

文生视频和参考生视频用 parameters.ratio 指定宽高比,图生视频和视频编辑跟随素材比例:
  • 文生视频、参考生视频:可选以下宽高比。
    • 16:9(默认)
    • 9:16(例如 720P 输出为 720×1280)
    • 1:1
    • 4:3
    • 3:4
  • 图生视频:不需要传 ratio,输出比例跟随首帧图片。
  • 视频编辑:不传 ratio 时沿用源视频的比例。
  • Wan 3.0:默认 adaptive,按素材自动选择比例,另外支持 21:9。
费用只按分辨率档位和输出秒数计算,同一档位下横屏、竖屏和方形价格相同。各模型的取值范围见阿里云文生视频 API 参考。

视频有声音吗?能按指定音频说话吗?

有声音,也可以按指定音频对口型。按阿里云说明,Wan 2.7 默认输出有声视频,模型会根据画面自动生成背景音乐、音效或人声。 需要口型与指定音频同步时,用 wan2.7-i2v 并在 input.media[] 中加入 driving_audio,写法见图生视频。音频支持 wav、mp3,时长 2–30 秒,超过 duration 的部分会被截掉。 Wan 3.0 同样默认输出有声视频,传 "audio": false 可输出无声视频,价格不变。 参考生视频可以沿用参考视频中的音色,视频编辑可以选择保留源视频原声,对应参数见万相 2.7 参考生视频 API 参考和万相 2.7 视频编辑 API 参考。

怎么去掉视频右下角的「AI 生成」水印?

在 parameters 中传 "watermark": false,或者不传 watermark(阿里云默认不加水印)。本页示例传的是 true,所以生成的视频会带水印;复制示例到生产环境时记得改掉。

超时或失败后可以直接重新提交吗?

先看任务状态再决定。客户端等待超时并不代表任务失败:24 小时内继续用同一个 task_id 查询即可,重新提交会创建一个新任务并再次计费。只有 status 变为 failed 或其他终态时,才需要修正请求后重新创建。 失败的任务不计费,实际扣费以调用日志为准,规则见计费与价格,状态判断见任务状态。

为什么一个任务有两条扣费记录?

创建任务时先按请求的时长预扣,任务完成后按阿里云返回的实际秒数结算:
  • 实际秒数与预扣相同:只有一条扣费记录。
  • 实际秒数不同:再多一条「Wan 任务完成,按实际时长调整」,多退少补。
常见原因是任务带了输入视频,计费时长要加上输入秒数;Wan 3.0 带输入视频时先按 30 秒预扣,完成后退回差额。两条记录合起来才是这个任务的实际费用,规则见计费与价格。

progress 一直停在 30% 是卡住了吗?

不是。停在 30% 是上游进度上报粒度粗导致的正常现象,只要顶层 status 仍是 in_progress 就继续轮询,说明见任务状态。

相关文档