内容提要
本文介绍Wan Videos Generation API的对接方法。用户需先在Ace Data Cloud控制台获取API Token,然后通过设置action(文生视频或图生视频)、model、prompt等参数调用接口生成通义万相视频。文章详细说明了参数配置、图生视频操作、异步回调机制及错误处理,并提供了CURL和Python代码示例。
延伸解读
模型与行为匹配
调用时需注意action与model的对应关系:文生视频(text2video)仅支持wan2.6-t2v,而图生视频(image2video)支持wan2.6-i2v、wan2.6-r2v和wan2.6-i2v-flash。此外,image_url仅适用于wan2.6-i2v和wan2.6-i2v-flash,reference_video_urls仅适用于wan2.6-r2v。选择不匹配的组合可能导致请求失败,建议在开发前仔细核对参数约束。
异步回调机制
视频生成耗时约1-2分钟,同步请求可能长时间占用连接。API提供异步模式:设置callback_url后,请求立即返回task_id,任务完成时结果会通过POST JSON发送到该URL,其中包含相同的task_id用于关联。若未设置callback_url,也可设置async为true,通过轮询任务查询接口获取结果。开发者可根据业务场景选择合适的方式,避免资源浪费。
参数优先级与限制
部分参数存在优先级和生效条件:shot_type仅在prompt_extend为true时生效,且优先级高于prompt;audio参数优先级高于audio_url,当audio为false时即使传入audio_url也会输出无声视频。negative_prompt长度限制为500字符,超出部分自动截断。理解这些规则有助于精确控制生成效果,避免意外结果。
Q&A
如何获取Wan Videos Generation API的API Token?
首先需要到Ace Data Cloud控制台获取API Token。如果尚未登录或注册,会自动跳转到登录页面,注册登录后会自动返回当前页面。一个API Token即可调用平台所有服务,首次申请会赠送免费额度。
Wan Videos Generation API支持哪些模型和对应的视频生成行为?
目前支持四种模型:wan2.6-i2v、wan2.6-r2v、wan2.6-i2v-flash、wan2.6-t2v。其中,文生视频(text2video)只支持wan2.6-t2v;图生视频(image2video)支持wan2.6-i2v、wan2.6-r2v、wan2.6-i2v-flash。
如何调用Wan Videos Generation API生成文生视频?
调用API时,设置action为text2video,model为wan2.6-t2v,并传入prompt(提示词)等参数。例如,使用CURL命令发送POST请求到https://api.acedata.cloud/wan/videos,在请求体中包含action、model、prompt和duration等字段。
图生视频功能如何使用?需要哪些参数?
图生视频需要将action设置为image2video,并指定model(如wan2.6-i2v)、image_url(首帧参考图片链接)和prompt(提示词)。可选参数包括reference_video_urls(参考视频链接,仅wan2.6-r2v支持)等。
Wan Videos Generation API的异步回调机制是怎样的?
客户端发起请求时额外指定callback_url字段,API会立即返回包含task_id的结果。当任务完成后,生成视频的结果会通过POST JSON形式发送到callback_url,其中包含task_id,用于关联任务。
调用Wan Videos Generation API时常见的错误码有哪些?
常见错误码包括:400 token_mismatched(参数缺失或无效)、400 api_not_implemented(参数问题)、401 invalid_token(无效或缺失授权令牌)、429 too_many_requests(请求频率超限)、500 api_error(服务器内部错误)。
Wan Videos Generation API支持哪些视频时长和分辨率设置?
视频时长支持5、10、15秒。分辨率通过size参数指定,格式为宽*高,具体默认值和可用枚举值依赖于model参数,需参考官网文档。
如何通过Python代码调用Wan Videos Generation API?
使用requests库发送POST请求到https://api.acedata.cloud/wan/videos,设置headers(accept、authorization、content-type)和payload(包含action、model、prompt等参数),然后打印响应文本。