视频剪辑智能体开发日志(Week 1)——从0开始搭建整个Pipeline

发布时间:2026/7/3 3:53:35
视频剪辑智能体开发日志(Week 1)——从0开始搭建整个Pipeline 开发时间2026.06.26 - 2026.07.02本周主要工作完成项目整体架构设计打通 Pipeline 主流程完成 ASR、视频分段、重复检测、脚本匹配等核心模块为后续视频渲染做好准备。一、本周开发进展这周没有继续做最终的视频渲染而是把更多时间放在了整个工程框架上。刚开始做的时候我以为重点应该放在去重算法或者字幕同步上真正写下来以后才发现真正影响开发效率的其实是整个 Pipeline 的设计。如果数据流没有统一后面每增加一个模块就意味着前面的代码可能都要跟着改。所以这周主要完成了两件事重新设计整个 Pipeline重新整理整个 Job 数据结构这也是后面所有模块能够独立开发的基础。二、项目架构设计整个视频剪辑智能体目前已经拆成了两个阶段。第一阶段负责素材处理。第二阶段负责分析、匹配以及最终生成视频。整个流程如下。从流程上来看每一个模块只负责自己的任务。例如视频信息读取不会负责 ASRASR 不负责字幕Timeline 不负责渲染所有模块之间全部通过 JSON 进行通信。这样最大的好处就是任何一个模块出现问题都可以单独重新运行而不用重新执行整个 Pipeline。三、Job 生命周期与数据组织随着模块越来越多我发现如果所有文件都放在一起后面基本没办法维护。于是重新设计了整个 Job 目录。每一次运行都会创建一个新的 Job。所有中间结果全部保存在对应目录。整个目录按照功能进行了划分。例如input 保存原始素材transcript 保存 ASR 结果segments 保存视频片段timeline 保存最终时间轴output 保存最终结果这样做最大的好处就是以后无论调试哪个模块都能直接找到对应的数据而不是重新跑完整个流程。四、Timeline 核心调度设计这是这一周改动最大的地方。刚开始的时候每个模块都在计算自己的时间。字幕有自己的时间。Render 有自己的时间。播放器又重新计算了一遍。虽然每一个模块看起来都没有问题但是最终字幕总会出现轻微偏差。后来干脆把 Timeline 独立出来。以后所有模块全部读取 timeline.json。整个系统开始变成现在字幕读取 TimelineRender 读取 TimelinePlayer 读取 Timeline整个项目只有一个时间来源。后面维护起来简单了很多。五、脚本匹配模块开发目前已经完成了脚本和视频片段的自动匹配。每一句脚本都会计算自己的匹配得分。最终选择得分最高的视频片段。例如下面就是目前所有脚本的匹配结果。可以看到目前不同脚本之间的匹配质量差异还是比较明显。有些已经可以达到比较高的匹配分。但仍然有几句脚本匹配效果一般。为了更加直观又把所有匹配结果重新划分成了三个等级。目前强匹配1 个可能匹配3 个低置信度4 个整体平均得分还存在进一步优化空间。六、系统运行效果分析为了方便后面继续调试我又增加了一套综合诊断页面。运行结束以后可以直接看到整个 Pipeline 当前的运行状态。包括平均匹配得分问题严重程度匹配等级分布当前建议相比以前只能查看日志现在基本可以一眼看到整个项目当前的问题集中在哪。调试效率提升了很多。七、关键问题定位与修复虽然整体流程已经能够正常运行但调试过程中还是发现了一些比较明显的问题。例如Semantic 匹配正常。Fuzzy 匹配几乎全部失效。部分脚本主题理解仍然不足。候选片段之间区分度不够。于是把这些问题重新整理成了一份诊断报告。其中最明显的问题就是Fuzzy 匹配基本没有发挥作用。于是又把 Semantic 和 Fuzzy 单独拆出来进行了分析。从目前的数据来看Semantic 分支已经能够正常工作。真正需要继续排查的是 Fuzzy 匹配链路。后面准备继续定位这个问题。八、匹配算法优化规划目前虽然已经能够找到对应片段。但是还有另外一个问题。有些候选片段之间得分非常接近。例如Top1 得分0.71Top2 得分0.69这种情况下很容易选错视频。于是又增加了一项新的分析。如果 Top1 和 Top2 得分差距过小就说明当前匹配还不够稳定。后面会继续优化候选区分能力。九、素材利用率分析除了匹配准确率之外我还比较关注另外一个问题。就是素材到底有没有真正利用起来。目前增加了素材利用率统计。目前来看已使用素材约 43%未使用素材约 57%这说明还有不少素材没有参与最终剪辑。后面可以继续优化片段选择策略提高素材利用率同时避免重复片段被频繁使用。十、本周开发总结这一周最大的感受就是真正花时间的并不是模型本身而是整个工程的组织方式。如果没有统一的数据结构没有统一的时间轴没有统一的 JSON 规范那么后面每增加一个功能都会不断返工。目前整个 Pipeline 已经能够稳定完成视频读取音频提取ASR视频分段重复检测脚本匹配Timeline 构建字幕映射数据诊断下一步会继续完善Script Match 精度Timeline 调度策略视频渲染模块AiPy 前端联调争取尽快实现从输入素材到最终视频输出的完整自动化流程。