实现视频问答需要完成记忆构建(Memorization)和问答控制(Control)两个阶段:
- Video Preprocessing:
- 使用FFmpeg将长视频切成30秒片段
- 创建data.jsonl配置文件描述视频元数据
- 记忆生成:
- 可选生成中间输出(人脸/声纹特征)
- 运行memorization_memory_graphs.py生成.pkl记忆图谱
- 问答实施:
- 准备包含问题的JSON文件(如robot.json)
- 执行control.py加载记忆图谱进行推理
- 可通过visualization.py可视化特定片段的记忆节点
典型工作流示例:当处理家庭监控视频时,系统会先识别出”老人”、”沙发”、”跌倒”等实体和事件,构建关联图谱。当用户询问”昨天下午奶奶是否在客厅活动”时,智能体会:1) 定位时间节点;2) 检索”客厅”子图谱;3) 分析”奶奶”实体的活动轨迹;4) 生成包含时间戳的详细回答。
This answer comes from the articleM3-Agent:一个拥有长期记忆并能处理音视频的多模态智能体The