Aliyun Wan Video — 阿里云万视视频
v1.0.0在使用 Model Studio DashScope SDK 生成视频时,适用于 Wan 视频生成模型(wan2.6-t2v、wan2.6-i2v-flash、wan2.6-i2v 及区域变体)。在实现或记录 video.generate 请求/响应、映射 prompt/negative_prompt/duration/fps/size/seed/reference_image/motion_strength 或将视频生成集成到 video-agent 流水线时使用。
运行时依赖
安装命令
点击复制技能文档
分类:提供商 Model Studio Wan 视频验证 mkdir -p output/aliyun-wan-video python -m py_compile skills/ai/video/aliyun-wan-video/scripts/generate_video.py && echo "py_compile_ok" > output/aliyun-wan-video/validate.txt 通过标准:命令退出 0 且 output/aliyun-wan-video/validate.txt 生成。 输出和证据 保存任务 ID、轮询响应和最终视频 URL 到 output/aliyun-wan-video/。 保留一个端到端运行日志以进行故障排除。 为视频代理管道提供一致的视频生成行为,通过标准化 video.generate 输入/输出并使用 DashScope SDK(Python)以及确切的模型名称。 关键模型名称 使用以下确切模型字符串之一: wan2.6-t2v wan2.6-t2v-us wan2.2-t2v-plus wan2.2-t2v-flash wan2.6-i2v-flash wan2.6-i2v wan2.6-i2v-us wanx2.1-t2v-turbo 先决条件 安装 SDK(推荐在 venv 中安装以避免 PEP 668 限制): python3 -m venv .venv . .venv/bin/activate python -m pip install dashscope 在环境中设置 DASHSCOPE_API_KEY,或在 ~/.alibabacloud/credentials 中添加 dashscope_api_key(环境变量优先)。 标准化接口(video.generate) 请求提示(字符串,必需) negative_prompt(字符串,选项) duration(数字,必需) seconds fps(数字,必需) size(字符串,必需)例如 1280720 seed(整数,选项) reference_image(字符串 | 字节,选项,用于 t2v,i2v 家族模型必需) motion_strength(数字,选项) 响应 video_url(字符串) duration(数字) fps(数字) seed(整数) 快速入门(Python + DashScope SDK) 视频生成通常是异步的。 预期任务 ID 并轮询直到完成。 注意:Wan i2v 模型需要输入图像;纯 t2v 模型(如 wan2.6-t2v)可以省略 reference_image。 导入 os 从 dashscope 导入 VideoSynthesis 首选环境变量进行身份验证:export DASHSCOPE_API_KEY=... 或者使用 ~/.alibabacloud/credentials 中的 dashscope_api_key。 def generate_video(req: dict) -> dict: payload = { "model": req.get("model", "wan2.6-i2v-flash"), "prompt": req["prompt"], "negative_prompt": req.get("negative_prompt"), "duration": req.get("duration", 4), "fps": req.get("fps", 24), "size": req.get("size", "1280720"), "seed": req.get("seed"), "motion_strength": req.get("motion_strength"), "api_key": os.getenv("DASHSCOPE_API_KEY"), } 如果 req.get("reference_image"): # DashScope 对于 i2v 模型预期 img_url;本地文件将自动上传。 payload["img_url"] = req["reference_image"] response = VideoSynthesis.call(*payload) # 一些 SDK 版本需要轮询最终结果。 # 如果返回任务 ID,则轮询直到状态为 SUCCEEDED。 result = response.output.get("results", [None])[0] 返回 { "video_url": None 如果没有结果,否则 result.get("url"), "duration": response.output.get("duration"), "fps": response.output.get("fps"), "seed": response.output.get("seed"), } 异步处理(轮询) 导入 os 从 dashscope 导入 VideoSynthesis task = VideoSynthesis.async_call( model=req.get("model", "wan2.6-i2v-flash"), prompt=req["prompt"], img_url=req["reference_image"], duration=req.get("duration", 4), fps=req.get("fps", 24), size=req.get("size", "1280720"), api_key=os.getenv("DASHSCOPE_API_KEY"), ) final = VideoSynthesis.wait(task) video_url = final.output.get("video_url") 操作指南 视频生成可能需要几分钟;显示进度并允许取消/重试。 缓存(prompt,negative_prompt,duration,fps,size,seed,reference_image 哈希,motion_strength)。 在对象存储中存储视频资产,并仅在元数据中保留 URL。 reference_image 可以是 URL 或本地路径;SDK 自动上传本地文件。 如果您得到 Field required: input.img_url,则参考图像缺失或未映射。 wan2.6-t2v 和 wan2.6-t2v-us 添加了多拍摄叙事支持和可选音频输入,按照官方文档。 大小说明 使用 WxH 格式(例如 1280*720)。 首选常见大小;不支持的大小可能会返回 400。 输出位置 默认输出:output/aliyun-wan-video/videos/ 使用 OUTPUT_DIR 覆盖基本目录。 反模式 不要发明模型名称或别名;仅使用官方 Wan i2v 模型 ID。 不要在没有进度更新的情况下阻塞 UI。 不要盲目重试 4xx;显式处理验证失败。 工作流程 确认用户意图、区域、标识符以及操作是否为只读或可变。 首先运行一个最小的只读查询以验证连接和权限。 使用显式参数和有界范围执行目标操作。 验证结果并保存输出/证据文件。 参考 请参阅 references/api_reference.md 以获取 DashScope SDK 映射和异步处理说明。 源列表:references/sources.md