首页 / 全部技能 / 内容创作 / volcengine-video-understanding
内容创作 · freestylefly/canghe-skills

volcengine-video-understanding

火山视频理解 - 使用火山方舟视频理解 API 分析视频内容。通过 Files API 上传视频(推荐),支持大文件(最大512MB),可用于视频内容分析、物体识别、动作理解等。当用户需要分析视频、理解视频内容、提取视频信息时激活此技能。

L4 高权限 · 分级授权与审计V1 已固定执行命令联网读写文件Dual-pass Audit
Author freestyleflyGitHub freestylefly/canghe-skills ↗License MIT(仓库根 LICENSE)Commit dd0bf35595
管控等级描述 skill 的能力与建议配套的管控措施,不代表质量或安全认证,也不表示可用或不可用。是否使用由用户和管理者决定。不同 agent 宿主对权限的约束各不相同,请勿假定宿主一定会提供安全兜底。第三方 skill 版权归原作者,使用风险由使用者自行承担。

1实现原理 · 为什么它能做到

它把本地视频送到字节跳动火山方舟的视频理解 API,用 Seed 系列模型做深度理解与分析。

skills/canghe-volcengine-video-understanding/SKILL.md
使用字节跳动火山方舟视频理解 API(doubao-seed-2-0-pro-260215 等模型)对视频进行深度理解和分析。
这里在做什么:声明核心是『视频→外部多模态模型』的调用,本地只做编排与结果解析。

推荐流程为两步:Files API 上传 + Responses API 分析。

skills/canghe-volcengine-video-understanding/SKILL.md
**推荐方式**:Files API 上传 + Responses API 分析
这里在做什么:先把视频当文件上传(支持大文件、可复用),再以 file_id 发起理解任务。

上传是 multipart,并携带预处理 FPS 配置。

skills/canghe-volcengine-video-understanding/scripts/video_understand.py
"preprocess_configs[video][fps]": str(fps)
这里在做什么:让服务端按采样帧率预处理视频,平衡 token 成本与细节保留。

上传后轮询文件状态,直到 active/processed 才继续。

skills/canghe-volcengine-video-understanding/scripts/video_understand.py
if status in ["active", "processed"]:
这里在做什么:等待视频预处理完成,避免在未就绪时发起分析。

理解任务用 Responses API,把 input_video(file_id) 与 input_text(指令) 一起提交。

skills/canghe-volcengine-video-understanding/scripts/video_understand.py
"type": "input_video",
这里在做什么:把视频引用与用户问题组装成一次多模态请求。

鉴权靠环境变量 ARK_API_KEY(系统环境→当前目录 .env→用户主目录 .env)。

skills/canghe-volcengine-video-understanding/scripts/video_understand.py
return require_env_key("ARK_API_KEY")
这里在做什么:从宿主 common/env_utils 读取密钥,再以 Bearer 头调用火山方舟端点。

结果可解析为文本并可 --output 落盘成 JSON。

skills/canghe-volcengine-video-understanding/scripts/video_understand.py
with open(args.output, 'w', encoding='utf-8') as f:
这里在做什么:把 API 原始响应保存或提取 output_text,便于后处理。

默认模型与采样帧率可调(默认 doubao-seed-2-0-pro-260215 / fps=1)。

skills/canghe-volcengine-video-understanding/SKILL.md
| `--fps` | 1 | 视频采样帧率(预处理) |
这里在做什么:慢节奏视频可降 FPS 省 token,快动作可升 FPS 保留细节。

2核心能力

01视频内容理解(场景/人物/动作/情感)
02基于视频内容的问答
03自动生成视频描述与摘要
04Files API 上传大文件(最大 512MB)
05可指定模型与采样帧率
06等待预处理完成的轮询
07结果落盘为 JSON / 提供 Python API(analyze_video)

3外部依赖

KindDependency / Endpoint
api火山方舟视频理解 API(Files / Responses),模型 doubao-seed-2-0-pro-260215 等
packagerequests(HTTP 客户端)
clipython3(运行 video_understand.py)

4管控建议与判定依据

建议配套管控措施
面向 Agent
分级或逐次授权,建议在沙箱运行
面向管理者
审批流程、可回滚、全程审计
判定依据(文件路径与关键语句摘要)
  • scripts/: 执行本地脚本或命令: python3 scripts/video_understand.py <video> "<指令>" [--model ...] [--fps N]
  • 网络端点: 声明外部网络访问: POST https://ark.cn-beijing.volces.com/api/v3/files(multipart 上传视频,带 prepro
  • 本地工作目录: 文件读写与工件输出: --output 指定的 JSON 结果文件(with open(args.output, 'w', encoding='utf-8'))
审计说明: 。两条独立理由:①【读环境变量凭证】脚本 get_api_key() → require_env_key("ARK_API_KEY") 读取 ARK_API_KEY,并以 Bearer 头发送给火山方舟端点;②【用户素材送外部服务后端】视频经 Files API 上传、再以 Responses API 分析,即把本地视频与分析指令送到第三方多模态模型并消耗账号额度。按判级范式『读凭据/环境变量,或把用户素材送外部生成/服务后端』=橙。不升红:无逆向、无冒充、无绕过防护、无安全降级(未见关闭 TLS 校验/沙箱)、无任意代码执行面;脚本结构清晰、无混淆、无硬编码密钥。

5第二遍独立确认

  • [ok] 读取 ARK_API_KEY 并外发 — 脚本 get_api_key() 用 require_env_key("ARK_API_KEY");三处请求均带 "Authorization": f"Bearer {api_key}"。
  • [ok] 端点定位 — BASE_URL = "https://ark.cn-beijing.volces.com/api/v3";风险扫描『URL/端點』与『網路請求』命中 files/responses 与脚本 requests.post/get。
  • [ok] 素材上传到外部服务 — upload_video_file() 以 requests.post 到 {BASE_URL}/files 上传视频;analyze_video() 以 file_id 调 /responses。
  • [ok] 无本地危险执行面 — 风险扫描『危險旗標/防護繞過』『沙箱/未受控執行』均无命中;脚本无 eval/exec、无 shell。
  • [ok] 唯一写盘为 --output — 风险扫描『寫盤/產生檔案』仅命中 open(args.output, 'w', encoding='utf-8')。
  • [ok] env_utils 为跨目录依赖 — 脚本 sys.path 插入 COMMON_DIR = Path(__file__).parent.parent.parent / "common",导入 load_env/require_env_key;该模块位于 skill 目录之外,本报告仅作推测定位。
  • [ok] 档位复核 — 读 env 密钥 + 用户视频出网至生成型服务 → orange;无 red 触发项。
  • [ok] 元数据与 commit — commit=dd0bf355955b4c82b764740b4183c86a72ba0e0c,license=MIT(仓库根),installs=null。

6结论

  • 接口封装完整:上传→轮询预处理→发起理解→解析结果,一条 CLI 走完,支持大文件(≤512MB)。
  • 既提供 CLI 也提供 Python API(analyze_video),易于嵌入其他流程。
  • FPS 预处理可调,可在成本与细节间取舍;支持多款 Seed 视频理解模型。
  • 错误处理与限制说明较清晰(格式/大小/存储 7 天/超时)。
  • 适合: 适合已有火山方舟 Ark 账号、需要把本地视频做内容理解/问答/摘要的开发者与内容团队,尤其是要处理较大视频文件(≤512MB)的场景。
    不适合: 不适合禁止视频/素材出网或对数据合规要求严格的环境;不适合无 ARK_API_KEY 或无额度者;也不适合期望离线本地推理的用户。
    Install Agent-Ready
    ① Verified Mirror 2026-10-10
    Option A · Direct DownloadDownload volcengine-video-understanding.tar.gz
    sha256: 5f1ee27839a37239…
    Option B · Copy Guide for Agent
    install.json
    agent 读 JSON 指南后会自动从本站下载安装,无需更多说明。
    ② Upstream GitHub
    GitHub Repo ↗
    Pinned to commit dd0bf35595.