- Add complete skill set including feishu, github, ci-gen, etc. - Add workspace documentation (AGENTS.md, SOUL.md, etc.) - Add memory system and project context
4.0 KiB
长视频分段分析功能 - 实现计划
Goal: 实现动态混合策略处理超长视频(30分钟以上),解决上下文溢出问题 Approach: 方案C - 根据视频时长动态选择处理策略(<30min直接分析,30-60min分2段,60min+分多段) Estimated Total Time: 45-60 minutes
Checkpoint 1: 基础结构搭建
目标:创建字幕分割工具和配置更新
-
Task 1.1: 创建
src/content_chunker.py模块 (~10 min)- Action: 新建文件,实现
ContentChunker类,包含按时间戳分割字幕的功能 - Verify: 文件存在,包含
chunk_by_duration()方法,能将SRT字幕按指定时长分割
- Action: 新建文件,实现
-
Task 1.2: 更新
config/config.yaml添加分段配置 (~5 min)- Action: 添加
chunking配置项:阈值(30分钟)、分段策略、每段最大字符数 - Verify: 配置文件包含
chunking节点,有long_video_threshold: 1800等配置
- Action: 添加
-
Task 1.3: 更新
src/config.py读取新配置 (~5 min)- Action: 在 Config 类中添加 chunking 相关属性
- Verify: 配置类能正确读取 chunking 配置,有默认值保护
Checkpoint 2: MultiAIClient 改造
目标:实现动态分段分析逻辑
-
Task 2.1: 修改
_deep_analyze()方法,添加时长判断逻辑 (~10 min)- Action: 根据 duration 决定处理策略:<30min直接分析,>=30min进入分段流程
- Verify: 代码逻辑清晰,有注释说明各分支
-
Task 2.2: 实现
_analyze_in_chunks()分段分析主方法 (~15 min)- Action:
- 调用
ContentChunker分割字幕 - 循环处理每段,调用AI生成摘要(限制500字)
- 收集所有段摘要
- 调用
- Verify: 方法能正确处理多段字幕,每段返回结构化摘要
- Action:
-
Task 2.3: 实现
_merge_chunk_summaries()合并摘要方法 (~10 min)- Action: 将所有段摘要合并,生成最终的完整分析报告
- Verify: 合并后的结果包含:完整摘要、要点、大纲、时间轴等字段
Checkpoint 3: 测试验证
目标:确保功能正确运行
-
Task 3.1: 创建测试用例
tests/test_chunking.py(~10 min)- Action: 编写单元测试,测试 ContentChunker 的分割逻辑
- Verify: 测试覆盖:正常分割、边界情况(空字幕、短字幕)
-
Task 3.2: 运行测试验证 (~5 min)
- Action: 执行
python -m pytest tests/test_chunking.py -v - Verify: 所有测试通过
- Action: 执行
-
Task 3.3: 集成测试 (~10 min)
- Action: 运行
analyze_video.py测试一个真实长视频(或模拟数据) - Verify: 30分钟以上视频能正常处理,不报错,输出完整
- Action: 运行
Checkpoint 4: 文档和清理
目标:更新文档,标记完成
-
Task 4.1: 更新
memory/tasks/ongoing-tasks.md标记完成 (~2 min)- Action: 更新任务状态,记录完成时间
- Verify: 文件已更新
-
Task 4.2: 创建
memory/YYYY-MM-DD.md记录变更 (~3 min)- Action: 记录本次修改:修复了长视频上下文溢出问题,实现了动态分段分析
- Verify: 文件已创建,内容完整
Verification Criteria
- 所有4个检查点完成
- 30分钟以下视频:直接分析(1次API调用)
- 30-60分钟视频:分2段分析(3次API调用)
- 60分钟以上视频:每15-20分钟一段(N+1次API调用)
- 不抛出 "Context overflow" 错误
- 输出质量与之前相当(摘要完整、结构清晰)
Execution Options
计划已保存到 memory/plans/video-chunking-implementation.md
两种执行方式:
-
单代理顺序执行 - 我在当前会话依次完成任务,每个检查点汇报进度
-
多代理并行执行 - 使用
dispatch-multiple-agents技能,同时启动多个子代理并行开发- Checkpoint 1 和 2 可以并行(结构独立)
- Checkpoint 3 依赖 1 和 2 完成
- Checkpoint 4 最后执行
请选择执行方式?