AnimateAnyone模型,可基于通过AnimateAnyone-detect模型检测的人物图像和预设动作模板生成视频。本文档介绍了该模型提供的视频生成能力的API调用方法。
模型概览
模型名 | 模型简介 |
animate-anyone | animate-anyone是一个人物动作视频生成模型,可基于人物图片生成人物全身动作视频。 |
HTTP调用接口
功能描述
用于生成人物动作视频。因该算法调用耗时较长,故采用异步调用的方式提交任务。任务提交之后,系统会返回对应的作业 ID,后续可通过对应的异步作业查询接口获取任务状态以及在作业结束后取回对应结果。
前提条件
已开通服务并获得API-KEY:获取API-KEY。
输入图像已通过AnimateAnyone 图像检测 API检测,并结合所需生成的画幅进行适当裁剪。
作业提交接口调用
POST https://dashscope.aliyuncs.com/api/v1/services/aigc/image2video/video-synthesis/
入参描述
字段 | 类型 | 传参方式 | 必选 | 描述 | 示例值 |
Content-Type | String | Header | 是 | 请求类型:application/json。 | application/json |
Authorization | String | Header | 是 | API-Key,例如:Bearer d1**2a。 | Bearer d1**2a |
X-DashScope-Async | String | Header | 是 | 使用 enable,表明使用异步方式提交作业。 | enable |
model | String | Body | 是 | 指明需要调用的模型。填入在百炼平台部署成功的模型名称。 | animate-anyone-xxx |
input.image_url | String | Body | 是 | 用户上传的图片 URL,该图应先通过AnimateAnyone图像检测API,并结合所需生成的画幅进行适当裁剪。 图像文件<5M,长宽比≤2,最大边长≤4096,格式支持jpg、png、jpeg、bmp。 | http://aaa/bbb.jpg |
input.pose_sequence_id | String | Body | 否 | 预设动作序列ID: 目前仅仅支持dance,最终的动作序列会有更新。 | 提供有权限的动作id,详见文档中的“预设动作模板”。例如:m_01_kemusan_v2_9s |
parameters.video_ratio | String | Body | 否 | 画幅可选 "9:16"或"3:4",默认为"9:16"。应确保输入图像的画幅与所选画幅一致,以避免生成视频的画面变形。 | "9:16" |
出参描述
字段 | 类型 | 描述 | 示例值 |
output.task_id | String | 提交异步任务的作业 id,实际作业结果需要通过异步任务查询接口获取。 | a8532587-fa8c-4ef8-82be-0c46b17950d1 |
output.task_status | String | 提交异步任务后的作业状态。 | “PENDING” |
request_id | String | 本次请求的系统唯一码。 | 7574ee8f-38a3-4b1e-9280-11c33ab46e51 |
请求示例
以下示例展示通过CURL命令来调用本模型的脚本。
需要使用您的API-KEY替换示例中的 your-dashscope-api-key ,代码才能正常运行。
curl --location 'https://dashscope.aliyuncs.com/api/v1/services/aigc/image2video/video-synthesis/' \
--header 'X-DashScope-Async: enable' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--data '{
"model": "<YOUR_MODEL>",
"input": {
"image_url": "http://xxx/1.jpg",
"pose_sequence_id": "m_01_kemusan_v2_9s"
},
"parameters": {
"video_ratio": "9:16"
}
}'
响应示例
{
"output": {
"task_id": "a8532587-fa8c-4ef8-82be-0c46b17950d1",
"task_status": "PENDING"
}
"request_id": "7574ee8f-38a3-4b1e-9280-11c33ab46e51"
}
预设动作模板(pose_sequence_id)
以下为预设可供AnimateAnyone 视频生成API调取的pose_sequence_id:
动作类型 | pose_sequence_id | 备注(舞蹈名称) |
舞蹈 | m_01_kemusan_v2_9s | 科目三 |
舞蹈 | m_02_jilejingtu_9s | 极乐净土 |
舞蹈 | m_04_aini_v2_8s | 爱你 |
舞蹈 | m_09_tuziwu_12s | 兔子舞 |
舞蹈 | m_11_niuyangge_6s | 扭秧歌 |
舞蹈 | m_13_liuliangmima_8s | 流量密码 |
舞蹈 | m_16_mengguwu_5s | 蒙古舞 |
舞蹈 | m_18_shexiangfuren_9s | 奢香夫人 |
舞蹈 | m_19_yebuwu_6s | 曳步舞 |
舞蹈 | m_25_tianmeiwu_8s | 甜妹舞 |
舞蹈 | m_27_huajiangbu_v2_8s | 划桨步 |
舞蹈 | m_28_xingganyao_8s | 性感扭扭 |
作业任务状态查询和结果获取接口
GET https://dashscope.aliyuncs.com/api/v1/tasks/{task_id}
入参描述
字段 | 类型 | 传参方式 | 必选 | 描述 | 示例值 |
Authorization | String | Header | 是 | API-Key,例如:Bearer d1**2a | Bearer d1**2a |
task_id | String | Url Path | 是 | 需要查询作业的task_id | a8532587-fa8c-4ef8-82be-0c46b17950d1 |
出参描述
字段 | 类型 | 描述 | 示例值 |
output.task_id | String | 查询作业的task_id | a8532587-fa8c-4ef8-82be-0c46b17950d1 |
output.task_status | String | 被查询作业的作业状态 | 任务状态: PENDING 排队中 RUNNING 处理中 SUCCEEDED 成功 FAILED 失败 UNKNOWN 作业不存在或状态未知 |
output.results | Array | 如果作业成功,包含模型生成的结果object,然后每个object中包含按照要求生成的结果地址 | {"video_url":"https://xxx/1.mp4"} |
usage.video_duration | Float | 本次请求生成视频时长计量,单位:秒 | "video_duration": 2 |
request_id | String | 本次请求的系统唯一码 | 7574ee8f-38a3-4b1e-9280-11c33ab46e51 |
请求示例
以下示例展示通过CURL命令来调用本模型的脚本。
需要使用您的API-KEY替换示例中的 your-dashscope-api-key ,代码才能正常运行。
curl -X GET \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
https://dashscope.aliyuncs.com/api/v1/tasks/<YOUR_TASK_ID>
响应示例(作业成功执行完毕)
{
"output":{
"task_id":"a8532587-fa8c-4ef8-82be-0c46b17950d1",
"task_status":"SUCCEEDED",
"results":
{
"video_url":"https://xxx/1.mp4"
}
},
"usage":{
"video_duration": 2
},
"request_id":"7574ee8f-38a3-4b1e-9280-11c33ab46e51"
}
响应示例(作业失败)
{
"request_id": "7574ee8f-38a3-4b1e-9280-11c33ab46e51"
"output": {
"task_id": "a8532587-fa8c-4ef8-82be-0c46b17950d1",
"task_status": "FAILED",
"code": "xxx",
"message": "xxxxxx",
}
}
状态码说明
大模型服务平台通用状态码请查阅:状态码说明。