跳转到主要内容

接入概览

本文定义 Wan 视频生成在 LaoZhang API 上的开发接入方式。接口采用 DashScope 兼容异步任务协议:客户端先创建任务并获取 task_id,再轮询任务状态,任务完成后从 result_url 下载 MP4 文件。
Wan 视频生成不使用 Sora / Veo 的 /v1/videos 接口。Wan 2.7 的图生视频、参考图生视频和视频编辑依赖 DashScope 原生 input.media[] 结构,请固定使用本文的 /wan/api/v1/services/aigc/video-generation/video-synthesis 创建任务路径。

认证与令牌

令牌管理 创建用于 Wan 视频生成的令牌时,按下面配置:
Wan 视频请求必须使用 Wan 分组、按量扣费的令牌。默认分组、Veo 分组、Sora 分组或其他视频分组的令牌可能返回无可用渠道、模型不匹配或计费分组错误。

计费与价格

以下为上游官方公开价格口径,用于接入前成本预估。LaoZhang API 实际扣费以控制台模型价格和调用日志为准。当前控制台中 Wan 分组显示倍率 0.15x;该数值是上游人民币价格与本站美元计价口径之间的换算系数。按固定汇率 1:7 计算,0.15 × 7 = 1.05,即当前价格约为阿里云官方人民币原价的 105%0.15x 不是需要在调用日志“实际扣除”金额上再次相乘的额外折扣。
官方参考:阿里云百炼模型价格
durationresolution 会直接影响费用。生产环境应在创建任务前完成成本预估,并在任务完成后按控制台调用日志核对实际扣费。

调用流程

1

创建任务

调用 POST /wan/api/v1/services/aigc/video-generation/video-synthesis。请求体使用 JSON,model 传 Wan 模型 ID,input.prompt 传提示词,图生视频、参考图生视频和视频编辑通过 input.media[] 传素材。
2

轮询状态

调用 GET /v1/tasks/{task_id}。客户端只需要根据顶层 status 字段判断状态,不要解析内部上游字段作为业务状态。
3

下载结果

status=completed 时,读取顶层 result_url 并直接下载。result_url 是上游对象存储签名 URL,下载请求不要携带 LaoZhang API 的 Authorization 头。

API 参考

请求约定

端点

状态机

Wan / DashScope 的 progress 是粗粒度上报,常见情况是长时间停在 30%,最后直接跳到 100%。只要 status 仍是 in_progress,通常继续等待即可。

模型与输入模式

wan2.7-image-pro 是图片模型,不属于本文的视频生成端点。请不要把它提交到 /wan/api/v1/services/aigc/video-generation/video-synthesis

请求体

顶层字段

input

input.media[]

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

parameters

环境变量

后续示例统一使用以下变量:

文生视频

创建成功返回 DashScope 兼容的任务对象。客户端应保存 output.task_id

图生视频

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

参考图生视频

视频编辑

查询和下载

查询任务

完成响应会包含 status=completedresult_url。业务侧建议只依赖顶层字段:

下载视频

下载 result_url 时不要携带 LaoZhang API 的 Authorization 头。该地址是上游签名直链,额外的鉴权头可能导致 OSS 返回 403。

Python 最小客户端

常见错误

生产接入建议设置 20 分钟任务超时,保存创建响应、request_idtask_id 和最终任务详情,方便排查上游错误与扣费记录。