高级自定义主体(advanced custom elements,又称主体管理)用一组参考图或一段参考视频定义一个可复用主体(一个角色 / 一个物体 / 一个 IP 形象)。创建并查询成功后拿到的 element_id,可直接在 Omni 多模态生成与动作控制中通过 element 素材引用,让同一主体在多次生成里保持一致。 与 Omni 里 refer_image 传图后由网关临时创建主体不同,这里创建的是显式、可复用、可命名的主体:一次创建,多次引用。
主体管理与视频任务在三处不同,接入时请注意:
  1. task_id 是网关签名的不透明令牌:创建 / 预置列表返回的 data.task_id 恒以 ace_ 开头,不是上游原始 ID。后续查询必须原样使用该令牌——它无状态地把查询路由回创建时的同一渠道(创建与查询是两次独立请求,令牌自带渠道信息才能命中同一上游账号)。请勿自行拼接或改写。
  2. 渠道级能力、不计费:主体的创建 / 查询 / 预置列表不扣费,也不是任务提交,不走计费管线。
  3. 路径可选 /v1 前缀:三个端点均可写成 /v1/general/advanced-custom-elements...,带与不带行为一致。

创建自定义主体

POST /general/advanced-custom-elements 用参考图(image_refer)或参考视频(video_refer)创建一个主体。
cURL
element_image_list(image_refer):
图片要求:.jpg / .jpeg / .png 或 Base64URL;单张 ≤ 10MB,短边 ≥ 300px,宽高比 1:2.5 ~ 2.5:1。
element_video_list(video_refer):
视频要求:MP4 / MOV,时长 3~8 秒,宽高比 16:9 或 9:16,≤ 200MB。
提交成功返回创建 ack,data.task_id 为网关签名令牌(创建 ack 无 task_result,用该令牌查询才拿到 element_id):

查询自定义主体

GET /general/advanced-custom-elements/{task_id} 用创建返回的 task_id 令牌查询主体。任务状态机:submitted → processing → succeed / failed。
cURL
响应 data 字段: task_result.elements[] 元素(关键字段): 成功响应示例:

查询官方预置主体

GET /general/advanced-presets-elements 分页查询可灵官方预置主体列表,可直接引用其 element_id,无需自己创建。
cURL
data 恒为数组,每项结构同「查询自定义主体」的 data(含 task_result.elements[]),每条的 task_id 同样是网关签名令牌。

用 element_id 生成视频

拿到 element_id 后,在 Omni(POST /omni-video/{model})或动作控制(POST /motion-control/{model})的 contents 里用 element 素材引用它:
element 素材传数字 element_id(查询响应里的数字,而非 ace_ 令牌)。ace_ 令牌只用于主体查询端点;生成端点引用主体用的是 element_id。

计费

主体管理(创建 / 查询 / 预置列表)是渠道级能力,不计费:这些调用不扣费、不产生消费日志。实际产生费用的是随后用 element_id 发起的视频生成(Omni / 动作控制按分辨率 × 时长计费)。

在线调试(试一试)

创建自定义主体

POST /general/advanced-custom-elements

查询自定义主体

GET /general/advanced-custom-elements/

查询官方预置主体

GET /general/advanced-presets-elements

相关文档

视频生成 API

Omni / 动作控制里如何用 element 引用主体

能力总览与定价

模型清单、技术规格、计费规则