百炼轻应用-影视传媒视频理解。
接口说明
百炼轻应用-视频理解:基于这接口,可以传入一个视频,进行字幕提取、视频内容分析、视频总结、标题抽取、思维导图生成等任务,也可以通过自定义 prompt 来实现差异化的视频内容生成。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
下表是API对应的授权信息,可以在RAM权限策略语句的Action
元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:
- 操作:是指具体的权限点。
- 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
- 资源类型:是指操作中支持授权的资源类型。具体说明如下:
- 对于必选的资源类型,用背景高亮的方式表示。
- 对于不支持资源级授权的操作,用
全部资源
表示。
- 条件关键字:是指云产品自身定义的条件关键字。
- 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作 | 访问级别 | 资源类型 | 条件关键字 | 关联操作 |
---|---|---|---|---|
quanmiaolightapp:RunVideoAnalysis | none |
|
| 无 |
请求语法
POST /{workspaceId}/quanmiao/lightapp/runVideoAnalysis HTTP/1.1
请求参数
名称 | 类型 | 必填 | 描述 | 示例值 |
---|---|---|---|---|
workspaceId | string | 是 | 百炼业务空间唯一标识 | llm-xxx |
videoUrl | string | 否 | 视频链接 | http://xxxx.mp4 |
videoModelId | string | 否 | 视频 vl 任务模型唯一标识,支持的模型:
| qwen-vl-max |
videoModelCustomPromptTemplate | string | 否 | 视频 vl 任务 prompt 模版:必须包含{videoAsrText}变量,{videoAsrText}是视频的 ASR 文本信息,不传默认取页面看到的默认值。 | # 角色 你是一名视频分析师,擅长对各种视频片段进行理解。 # 任务描述 给你一个视频片段的多张关键帧图片,请你完成以下任务。 - 输出每张图片的画面信息,包括人物、物体、动作、文字、字幕、镜头语言等。 - 把每张图片的信息串联起来,生成视频的详细概述,还原该片段的剧情。 # 限制 - 分析范围严格限定于提供的视频子片段,不涉及视频之外的任何推测或背景信息。 - 总结时需严格依据视频内容,不可添加个人臆测或创意性内容。 - 保持对所有视频元素(尤其是文字和字幕)的高保真还原,避免信息遗漏或误解。 # 输入数据 ## 视频片段ASR信息 (如果输入为空则忽略ASR信息) {videoAsrText} # 输出格式 直接按照任务目标里即可,先输出每张图片的描述,再串联起来输出整个视频片段的剧情。 |
modelId | string | 否 | 视频总结依赖的大模型唯一标识,支持的模型
| qwen-max |
modelCustomPromptTemplateId | string | 否 | 视频总结依赖的大模型 prompt 模版唯一标识:
如果 modelCustomPromptTemplate 未传,则会取模版唯一标识对应的默认 prompt,modelCustomPromptTemplate 优先级高于 modelCustomPromptTemplateId。 | PlotDetail |
modelCustomPromptTemplate | string | 否 | 视频总结依赖的大模型 prompt 模版:必须同时包含{videoAsrText} 和 {videoAnalysisText}变量,{videoAsrText}是视频的 ASR 文本信息,{videoAnalysisText}是视频的各个子镜头的 VL 视觉信息,不传默认取页面看到的默认值。 | # 角色 你是一个专业的视频标注专员,擅长结合视频镜头信息来分析处理各种视频任务。 # 任务目标 请你结合输入数据串联、还原出整个视频的详细剧情。 # 限制 1.如出现语法上错误,或逻辑不通,请直接修改 2.在视频分镜中,如果包含台词,可能会出现说话者与其所说内容不匹配的情况。因此,必须根据剧情的进展,准确判断每段台词的真实说话者 3.如果视频分镜中无台词,请根据视频音频文字为其匹配台词 4.修改后的故事请适当保留视频分镜中对人物、场景的描写 5.帮忙润色一下故事,使其更具逻辑性 6.结合视频分镜中的人物外观特点,如果有外观相近的人物是同一个角色。因此,需要将不同分镜中的人物角色统一。 # 输入数据 ## 资料一:视频分镜信息 (视频各镜头的视觉描述信息) {videoAnalysisText} ## 资料二:视频ASR转录信息 (未标注出说话者,可能有错误和遗漏,如果没有输入ASR,则忽略此信息) {videoAsrText} # 输出格式 直接输出视频剧情,不要输出其他信息。 |
generateOptions | array | 否 | 视频理解生成任务选项。 | |
string | 否 | 视频理解生成任务选项:
包含的任务,会自动前置运行。 | videoGenerate | |
taskId | string | 否 | 生成任务唯一标识:不传会默认生成 | a3d1c2ac-f086-4a21-9069-f5631542f5a2 |
originalSessionId | string | 否 | 源任务唯一标识:如果要基于历史任务重跑某个子任务(generateOptions 字段指定的),可以传入历史任务 taskId+originalSessionId,后台会加载历史任务已生成数据,跳过前置步骤,提升生成效率,如果后台数据过久,比如超过 7 天,查询失败,会默认重跑前置依赖子任务。 | a3d1c2ac-f086-4a21-9069-f5631542f5ax |
videoExtraInfo | string | 否 | 自定义扩展文本素材:应用到生成中,需要手动调整 prompt 模版,增加{videoExtraInfo}变量 | |
snapshotInterval | double | 否 | 抽帧间隔:X 秒一帧,取值范围[1, 10],间隔越大模型能提取到的信息越少,耗时越长,成本越高,默认已是最佳实践,一般无需修改,如果要修改,请根据视频时长来定,建议[1~3]。 |
返回参数
示例
正常返回示例
JSON
格式
{
"header": {
"errorCode": "InvalidParam",
"errorMessage": "Pop sign mismatch, please check log.",
"event": "task-progress-start-generating",
"eventInfo": "可空",
"sessionId": "xxx",
"taskId": "xxx",
"traceId": "2150432017236011824686132ecdbc"
},
"payload": {
"output": {
"videoAnalysisResult": {
"generateFinished": true,
"text": "根据xxx",
"usage": {
"inputTokens": 1,
"outputTokens": 1,
"totalTokens": 2
},
"videoShotAnalysisResults": [
{
"endTime": 10000,
"startTime": 1000,
"text": "根据xxx"
}
]
},
"videoCaptionResult": {
"generateFinished": true,
"videoCaptions": [
{
"endTime": 1710432000000,
"endTimeFormat": "00:01",
"startTime": 0,
"startTimeFormat": "00:01",
"text": "xxx"
}
]
},
"videoGenerateResult": {
"generateFinished": true,
"text": "根据xxx",
"usage": {
"inputTokens": 1,
"outputTokens": 1,
"totalTokens": 2
}
},
"videoMindMappingGenerateResult": {
"generateFinished": true,
"text": "根据xxx",
"usage": {
"inputTokens": 1,
"outputTokens": 1,
"totalTokens": 2
},
"videoMindMappings": [
{
"childNodes": [
{
"childNodes": [
{
"name": "三级"
}
],
"name": "二级"
}
],
"name": "一级"
}
]
},
"videoTitleGenerateResult": {
"generateFinished": true,
"text": "标题",
"usage": {
"inputTokens": 1,
"outputTokens": 1,
"totalTokens": 2
}
}
},
"usage": {
"inputTokens": 1,
"outputTokens": 1,
"totalTokens": 2
}
},
"requestId": "117F5ABE-CF02-5502-9A3F-E56BC9081A64"
}
错误码
访问错误中心查看更多错误码。