RunVideoAnalysis_百炼全妙轻应用_API文档

插件下载了解更多
VS Code 插件
安装插件之前,确保已安装 VS Code安装插件之前,确保已安装 VS Code
Alibaba Cloud Developer Toolkit is a collection of extensions that can help access Alibaba Cloud services in Visual Studio Code.
JetBrains 插件
安装插件之前,确保已安装 JetBrains IDE安装插件之前,确保已安装 JetBrains IDE
The Alibaba Cloud Developer Toolkit for JetBrains makes it easier to access Alibaba Cloud services.

接口说明

百炼轻应用-视频理解:基于这接口,可以传入一个视频,进行字幕提取、视频内容分析、视频总结、标题抽取、思维导图生成等任务,也可以通过自定义 prompt 来实现差异化的视频内容生成。

欢迎前往轻应用-影视传媒视频理解直接体验。

通过 SDK 方式调用 API 可参考视频理解控制台“API”下的示例。

API-SDK 调用说明

API 接口说明

调用前必看:!!!

调用前必看:!!!

调用前必看:!!!

调用视频理解 API 有 2 种方式,对应 2 个接口

  • 调用离线异步 API推荐):最多支持 10 并发,无需等待执行结束,异步调度,sdk 支持绝大部分开发语言,openapi 门户可以直接调试和使用,也可以到轻应用-影视传媒视频理解控制台,切换到“API” 页签下查看调用 demo。

  • 调用在线同步 API不推荐):本文档对应接口,全局只有 1 并发,需保持链接等待结果,sdk 支持的语言有限(java、python),openapi 门户页面不支持调试和调用(sse)(copy 出来代码无法直接使用),一般少量体验用,调用需到轻应用-影视传媒视频理解控制台,切换到“API” 页签下查看调用 demo。

在线同步 API 调用说明

可以通过 SDK 调用当前 API,因“调试”-OpenAPI 门户对 SSE 协议支持还不够完善,建议参考调用示例,详见轻应用-影视传媒视频理解-切换 API 页签下。

推荐Java(异步 sdk)、Python语言的 SDK,其中 Java(异步 sdk)依赖如下:

<dependency>
   <groupId>com.aliyun</groupId>
   <artifactId>alibabacloud-quanmiaolightapp20240801</artifactId>
   <version>取最新版本</version>
 </dependency>

权限说明

前置条件

  • 登录下百炼控制台,确认百炼是可以访问状态
  • 主账号调用:默认有所有 API 调用权限。
  • 子账号调用:子账号默认无权限(AccessForbid)调用当前 API,需要同时在 RAM 控制台百炼控制台中做授权。

RAM 控制台授权说明

RAM 控制台授权,具体 RAM 授权操作,参考 RAM 文档,步骤如下:

1、自定义授权策略:菜单“权限管理-权限策略”下,创建权限策略,脚本编辑方式录入如下任意一个方案中 json。

  • 方案一:授权子账号访问 quanmiaolightapp 下所有接口权限,包括视频理解 --建议
{
    "Version": "1",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "quanmiaolightapp:*",
            "Resource": "*"
        }
    ]
}
  • 方案二:授权子子账号指定接口,比如视频理解“RunVideoAnalysis”
{
    "Version": "1",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "quanmiaolightapp:RunVideoAnalysis",
            "Resource": "*"
        }
    ]
}

2、给子账号授权:菜单“身份管理-用户”下,找到对应用户,新增授权,切换自定义授权,添加上面自定义的授权策略。

百炼控制台授权说明

使用主账号或有百炼管理员权限的子账号,登录百炼控制台,在权限管理-用户管理页面添加子账号,并进行授权管理员权限。

接口部分入参取值说明

抽帧配置字段(frameSampleMethod)

用于调整抽帧的参数,包括抽帧间隔、抽帧像素。抽帧方式默认为标准方式,目前共提供三种方式可供选择,标准、快速/更低成本、自定义。

  • 使用“标准”方式进行抽帧时,应用系统内置参数进行抽帧,抽帧间隔与抽帧像素无需用户自定义。标准方式抽帧间隔和抽帧像素取值规则为:
    • 根据视频时长取分不同档位,见视频理解控制台,“效果调试”tab 下 -> 高级功能 -> 抽帧方式 -> 自定义中的?提示
    • 视频时长和档位映射关系为:取视频时长和档位时长举例最近的档,如果相同,取档位时长大的
  • 使用“快速/更低成本”方式进行抽帧时,应用系统内置参数系数运算后的结果进行抽帧,抽帧间隔与抽帧像素无需用户自定义。
  • 使用“自定义”方式时,则需要用户传入抽帧间隔、抽帧像素两个参数,参数的取值范围对不同时长的视频存在不同的限制,取值范围具体计算规则如下:
    • 最小抽帧间隔 = max("标准"方式对应抽帧间隔 - 0.2,1)
    • 最大抽帧间隔 = "标准"方式对应抽帧间隔 + 5
    • 最小抽帧像素 = max("标准"方式对应抽帧像素 - 50,300)
    • 最大抽帧像素 = "标准"方式对应抽帧像素 + 50

流控信息

当前云产品API请求速率暂未透出。

授权信息

如下是此API对应的授权信息,用于RAM权限策略语句的Action元素中,为RAM用户或RAM角色授予调用此API的权限。请通过 RAM 访问控制设置,使用方法可参考访问控制帮助文档

具体说明如下:展开详情

操作访问级别资源类型条件关键字关联操作
quanmiaolightapp:RunVideoAnalysis
None
全部资源
*

请求语法

POST /{workspaceId}/quanmiao/lightapp/runVideoAnalysis HTTP/1.1

路径参数

字段名称字段详情
workspaceIdstring

百炼业务空间唯一标识:获取 workspaceId

示例值:llm-xxx

请求参数

字段名称字段详情
videoUrlstring

视频链接

示例值:http://xxxx.mp4
videoModelIdstring

视频 vl 任务模型唯一标识,支持的模型:展开详情

示例值:qwen-vl-max-latest
videoModelCustomPromptTemplatestring

视频 vl 任务 prompt 模版:必须包含{videoAsrText}变量,{videoAsrText}是视频的 ASR 文本信息,不传默认取页面看到的默认值。

示例值:# 角色 你是一名视频分析师,擅长对各种视频片段进行理解。 # 任务描述 给你一个视频片段的多张关键帧图片,请你完成以下任务。 - 输出每张图片的画面信息,包括人物、物体、动作、文字、字幕、镜头语言等。 - 把每张图片的信息串联起来,生成视频的详细概述,还原该片段的剧情。 # 限制 - 分析范围严格限定于提供的视频子片段,不涉及视频之外的任何推测或背景信息。 - 总结时需严格依据视频内容,不可添加个人臆测或创意性内容。 - 保持对所有视频元素(尤其是文字和字幕)的高保真还原,避免信息遗漏或误解。 # 输入数据 ## 视频片段ASR信息 (如果输入为空则忽略ASR信息) {videoAsrText} # 输出格式 直接按照任务目标里即可,先输出每张图片的描述,再串联起来输出整个视频片段的剧情。
modelIdstring

视频总结(文本加工)依赖的大模型唯一标识,支持的模型,如果文本加工阶段想跑多任务,可以走 textProcessTasks 字段,如果传入了 textProcessTasks,则当前字段和当前字段对应的 prompt 模版 id,prompt 模版将不再生效。展开详情

示例值:qwen-max-latest
modelCustomPromptTemplateIdstring

视频总结依赖的大模型 prompt 模版唯一标识:展开详情

示例值:PlotDetail
modelCustomPromptTemplatestring

视频总结依赖的大模型 prompt 模版:必须同时包含{videoAsrText} 和 {videoAnalysisText}变量,{videoAsrText}是视频的 ASR 文本信息,{videoAnalysisText}是视频的各个子镜头的 VL 视觉信息,不传默认取页面看到的默认值。

示例值:# 角色 你是一个专业的视频标注专员,擅长结合视频镜头信息来分析处理各种视频任务。 # 任务目标 请你结合输入数据串联、还原出整个视频的详细剧情。 # 限制 1.如出现语法上错误,或逻辑不通,请直接修改 2.在视频分镜中,如果包含台词,可能会出现说话者与其所说内容不匹配的情况。因此,必须根据剧情的进展,准确判断每段台词的真实说话者 3.如果视频分镜中无台词,请根据视频音频文字为其匹配台词 4.修改后的故事请适当保留视频分镜中对人物、场景的描写 5.帮忙润色一下故事,使其更具逻辑性 6.结合视频分镜中的人物外观特点,如果有外观相近的人物是同一个角色。因此,需要将不同分镜中的人物角色统一。 # 输入数据 ## 资料一:视频分镜信息(视频各镜头的视觉描述信息) {videoAnalysisText} ## 资料二:视频ASR转录信息(未标注出说话者,可能有错误和遗漏,如果没有输入ASR,则忽略此信息) {videoAsrText} # 输出格式 直接输出视频剧情,不要输出其他信息。
generateOptionsarray<string>

视频理解生成任务选项。

taskIdstring

生成任务唯一标识:不传会默认生成

示例值:a3d1c2ac-f086-4a21-9069-f5631542f5a2
originalSessionIdstring

源任务唯一标识:如果要基于历史任务重跑某个子任务(generateOptions 字段指定的),可以传入历史任务 taskId+originalSessionId,后台会加载历史任务已生成数据,跳过前置步骤,提升生成效率,如果后台数据过久,比如超过 7 天,查询失败,会默认重跑前置依赖子任务。

示例值:a3d1c2ac-f086-4a21-9069-f5631542f5ax
videoExtraInfostring

自定义扩展文本素材:应用到生成中,需要手动调整 prompt 模版,增加{videoExtraInfo}变量

示例值:视频描述了:xx
snapshotIntervalnumber<double>

抽帧间隔:X 秒一帧,取值范围[1, 10],间隔越大模型能提取到的信息越少,耗时越短,成本越低,分析结果的细腻度越底,默认已是最佳实践,一般无需修改,如果要修改,请根据视频时长来定,建议[1~3]。

示例值:2
languagestring

语音识别语言:展开详情

示例值:english
frameSampleMethodobject

抽帧配置

videoRolesarray<object>

人物

textProcessTasksarray<object>

视频总结(文本加工)任务列表:最多支持 3 个

faceIdentitySimilarityMinScorenumber<float>

人物识别相似度阈值:(0~1)

示例值:0.7
videoShotFaceIdentityCountinteger<int32>

人物匹配时,单镜头(分镜),参与匹配的抽帧(图片)数量:[1~5]

示例值:3

返回参数

字段名称字段详情
headerobject

流式输出 header 头,包含返回通用信息

payloadobject

生成结果数据

requestIdstring

请求唯一标识

示例值:117F5ABE-CF02-5502-9A3F-E56BC9081A64

返回示例

错误码

全局错误码
HTTP 状态码错误码错误信息操作
403
NoPermission
You are not authorized to perform this action , Please check the assignment of the workspaceId.诊断

变更历史

变更时间变更内容概要操作
2025-03-13
新增请求参数textProcessTasks
新增请求参数faceIdentitySimilarityMinScore
新增请求参数videoShotFaceIdentityCount
变更返回参数
2025-01-15
变更返回参数
2025-01-14
新增请求参数language
新增请求参数frameSampleMethod
新增请求参数videoRoles
变更返回参数
2024-12-05
新增错误码403
2024-09-26
新增请求参数videoExtraInfo
新增请求参数snapshotInterval
2024-09-05
变更返回参数

相关示例

2024年08月20日