用Vibe Coding打造AI知识工作台:让视频收藏自动生成知识卡片 我平时刷短视频看到不错的干货视频习惯性点收藏攒了几百条没再看过的内容。直到某一天整理收藏夹的时候发现大部分视频从收藏之后就再也没打开过那些当时觉得很重要的技巧、观点、工具介绍全部变成了一堆沉睡的链接。我决定用最近特别火的 Vibe Coding 方式给自己写一个 AI 知识工作台让这些收藏能自动被“看懂”、被整理、被追溯。说实话这个项目比我预想的顺利很多整个开发过程几乎不需要我手写逻辑代码全程用自然语言描述需求让 AI 帮我生成和修改代码。最后做出的工作台能自动解析收藏数据、转录视频里的语音、识别画面文字、生成结构化知识卡片还能按标签检索、一键跳转回原始视频链接。这篇文章我把完整思路、架构、踩坑记录都写出来给想用 Vibe Coding 做自动化工具的朋友一个参考。1. 先拆需求不是“保存视频”而是“让收藏会思考”1.1 收藏吃灰的三个典型痛点短视频收藏这个功能产品层面的设计逻辑就是“先用收藏代替行动”它天然会累积很多内容。我翻了翻自己的收藏夹归纳出三个典型痛点。第一内容完全靠标题记忆根本没法搜。短视频标题常常是标题党或者搞笑梗收藏的时候觉得有用一个月后看到标题根本想不起来里面讲的是什么。我想要的是“搜一个关键词能找到相关视频”而不是靠滑动几百条收藏凭感觉找。第二有效的知识点被淹没。一个十分钟的视频里真正有用的可能就一分钟我需要的是机器帮我先看一遍把重点提炼出来。这本质上是对视频内容做结构性理解而不是简单的存链接。第三来源信息容易断。短视频平台的分享链接经常会有失效的情况作者删除、账号改名、平台过滤都会导致链接打不开。收藏如果不把关键信息作者、标题、发布时间、原始链接、画面信息抽出来存好就完全失去价值了。基于这三点我的产品需求其实非常清晰一份收藏数据进来系统做三件事——看视频、整理知识、保存来源。我后续项目的一切设计都围绕这三个动作展开。1.2 功能清单和架构选择我给自己列了一份需求清单按优先级排下来自动读取收藏数据导出文件或手动粘贴链接自动拉取视频内容提取音频和关键帧用语音识别把音频转成文字用视觉模型或者 OCR 识别画面里的文字信息用大模型生成摘要、标签、核心观点、行动建议搜索结果支持关键词、标签、日期筛选每条视频展示原始链接、作者、收藏时间可以一键跳回整体做成本地 Web 页面不用装 App浏览器里就能用架构上我选择了一个比较轻量的方案前端是一个单页 Web 界面后端用本地运行的 Python 服务数据存在本地文件里。所有 AI 能力通过调用本地模型或者 API 实现不上云、不出本地这也是为了保证隐私。整个流程可以概括成一句话收藏数据进知识卡片出。用户界面只管展示和检索背后是一条自动化的数据处理流水线。2. Vibe Coding 全程自然语言写代码具体怎么玩2.1 Vibe Coding 不是“让 AI 替你写”是“和 AI 对话式开发”很多人对 Vibe Coding 有误解以为就是扔一个需求给 AI然后 AI 直接把整个项目写出来。实际我这次的经验是真正的 Vibe Coding 是“描述意图 持续纠偏 让 AI 自己重写”。我用一个比较形象的比喻这不是让 AI 当打字员而是让 AI 当开发搭档。你负责把产品需求讲清楚AI 负责把实现细节落地然后你通过运行结果、报错信息、效果反馈不断调整需求描述AI 再迭代代码。这个项目里我有一个核心习惯每次让 AI 动手前先要求它给出实现方案而不是直接给代码。比如我第一轮说的是“我现在有一个 JSON 文件里面是短视频收藏列表字段有链接、标题、作者、收藏时间。我想做一个本地 Web 工作台能展示这些信息并且预留后续 AI 处理接口。”AI 回复的就是一个模块划分和 API 设计我看完方向没问题就说“按这个方案实现代码写到 app.py”。这样做的原因是AI 生成代码速度很快如果方向错了返工成本极高。先聊方案再写代码相当于用文字快速画了一遍架构图后面实现不会跑偏太多。2.2 我实际用到的提示词模板这里分享几个我高频使用的提示词模板基本都是大白话但每次都有效果。第一类需求描述模板“我有一个需求【一句话讲清场景】。输入是【数据格式说明】输出是【期望的结果】。我希望你给一个技术方案包括模块划分、数据流走向、用到的关键库。先不要写代码。”第二类模块实现模板“按我们刚才确认的方案实现【某个模块】。输入是【字段说明】要求【关键约束比如性能、错误处理、日志输出】。代码要完整可运行依赖写清楚。”第三类调试纠偏模板“现在运行报错了错误信息是【粘贴报错】。我先描述一下我推测的原因【我的理解】。你帮我判断原因并修改代码改的时候只动必要的部分不要顺手重构其他逻辑。”这三个模板覆盖了我 90% 的需求。核心逻辑是给 AI 足够的上下文明确约束限定改动范围。2.3 工具链怎么搭配这个项目的工具链大概分四层。第一层是 AI 编程工具我用的是 AI 编程助手类产品支持读取本地项目文件能基于对话直接改代码。这类工具现在很成熟关键是选一个能长期对话记忆上下文的不然每次切换话题它就容易忘记前面聊了什么。第二层是数据解析库。Python 里处理 JSON、HTML、URL 解析都很成熟这个不多说。第三层是视频处理能力。这里用到了两个方向的 AI 模型语音识别模型负责把视频里的说话内容转成文字视觉理解模型负责分析画面内容。语音识别我首选本地部署的方案因为视频数量一多调用外部 API 的成本会线性上涨。视觉理解模型主要负责提取关键帧里的文字和物体信息输出结构化标签。第四层是大语言模型负责汇总前面所有信息生成摘要和标签。这里的调用方式要考虑成本我的方案是只在内容生成阶段调用大模型日常检索不依赖它全部走本地关键词匹配和检索这样才能把成本压在很低的位置。3. 核心模块逐个拆开看“看视频”到底是怎么实现的3.1 收藏数据的获取和清洗这个项目的起点是导出收藏数据。短视频平台本身通常不支持批量导出收藏但一般能通过浏览器插件或者开发者工具拿到页面返回的 JSON 数据。我把这些数据保存成本地文件字段包含视频 ID、标题、作者名、收藏时间、分享链接。这里有个细节坑收藏列表 JSON 里很多字段是嵌套的比如标题可能嵌套在 extra 字段里作者信息可能在不同的对象层级里。我的做法是先写一个小脚本把 JSON 整体遍历一遍把所有可能的字段路径打印出来人工核对一遍之后再让 AI 根据字段路径写解析逻辑。数据清洗阶段做的额外工作是去重。短视频平台收藏经常出现同一个视频被重复收藏还有同一视频多个不同链接的情况需要根据视频 ID 做唯一性判断。我让 AI 额外加了一个字段content_hash用视频链接加标题算了一个哈希值后续入库都以这个哈希为准。3.2 真正让 AI“看懂”视频内容三条感知通路“会看视频”是整个项目最核心的能力我给它设计了三个感知通路。第一条通路是标题和描述文本。视频标题、作者签名、话题标签这些是最基础的内容信息零成本就能拿到直接进知识库。第二条通路是声音。视频里主讲人说的话往往包含了最有价值的信息。我用音频提取工具把视频里的音轨单独抽出来再送进语音识别模型转成逐句文字。这个过程测试下来识别准确率基本能到 90% 以上中英文混着说的情况也能接受。第三条通路是画面。很多干货视频会在画面里放思维导图、代码截图、公式这些内容在音频里可能只字不提所以还得让视觉能力上场。我用了一个非常简单有效的方案每隔几秒抽一帧关键画面然后调用视觉理解模型让模型输出画面里出现的文字和高价值信息。这三条通路的结果最终合并成一个raw_analysis文本块交给大模型做下一步处理。补充一点画面分析的帧率不需要太高。刚开始我图省事把所有帧都送进模型结果处理速度慢且费用高后面改成“每 10 秒抽一帧 场景变化检测”如果两帧之间的相似度很高就直接跳过这个优化直接把处理时间砍掉了大概一半。3.3 从原始信息到知识卡片大模型的结构化输出拿到raw_analysis之后下一步就是让大模型把它变成一张整齐的知识卡片。我用了结构化输出方案让模型严格返回 JSON字段是这样的title清洗后的视频标题summary两句话的摘要tags3 到 8 个关键词标签key_points最多 5 条核心观点每条不超过 30 字content_type内容类型比如教程、观点、案例、资讯、工具推荐actionable看完可以立刻执行的行动建议没有就返回空source_title原始视频标题用于追溯source_url原始链接author作者collected_at收藏时间这里比较重要的是content_type和actionable两个字段前者好理解后者是很多知识管理工具忽略的。如果视频讲的是工具使用方法那么行动建议可以是“下载某工具并按教程试用一次”如果视频讲的是某个观点那行动建议就写成“提炼这个观点和你的日常工作做一次对照”。有了这张结构化的卡片用户搜“Python 技巧”的时候就不只是匹配标题了还能匹配摘要、标签、核心观点甚至行动建议召回率明显提升。3.4 来源追溯为什么强调这个标题里专门强调“追溯来源”是因为我在建库过程中发现短视频内容有一个很烦的特点作者改标题、删视频、换账号、平台限流都会让旧链接失效。如果工作台里存的只有链接过三个月大概率就打不开了。所以我的设计是三条追溯链路。第一层是元信息追溯存作者名、发布时间、原始标题即使链接失效也能通过作者和标题去搜索原始内容。第二层是内容快照存了视频的关键帧截图和语音转写文本链接打不开也不影响内容查阅知识本身是完整的。第三层是页面回溯工作台里每条卡片都有原始链接入口点击能找到当时的数据出处方便用户再次核对原始信息。实际操作中发现平台的分享链接一般会带视频 ID 和作者 UID有一半以上的失效链接能通过这个 ID 找回新地址或者至少定位到作者主页。我把这个逻辑也做到工作台里手动提供一个备用链接字段。3.5 数据存储和检索设计数据存储我直接用了一个本地文件数据库没有引入重型数据库原因是这个项目本质上还是单机工具数据量也在可控范围内。数据表结构大概长这样videos表存视频基本信息ID、标题、作者、链接、收藏时间、原始 JSONanalysis表存 AI 分析结果视频 ID、摘要、标签、关键点、内容类型、行动建议frames表存关键帧路径和识别结果transcripts表存语音识别结果检索这块分两层。第一层是关键词检索对标题、摘要、标签做模糊匹配支持中文分词实现起来不复杂但效果已经很不错。第二层是语义检索我后面单独做了向量化把摘要和关键点嵌入成向量支持“找和‘时间管理’相关的视频”这种模糊语义查询准确率比纯关键词高不少。向量化这里有个经验不要对整段描述做切片切得太碎。短视频的知识本身就是碎片化的把一个视频的摘要和关键点整个作为一条向量效果反而比切成多段更好也方便管理。4. 工作台界面整理结果怎么用起来4.1 前端设计思路工作台的前端我做得尽量克制核心原则是“信息密度高 跳转路径短”。首页是收藏总览卡片式布局每条卡片包含视频缩略图、AI 生成的标题摘要、标签、内容类型。标签用不同颜色区分内容类型有“教程”“观点”“工具”“案例”四种直接在卡片上露出扫一眼就能知道这条收藏大概讲什么。列表支持三种排序按收藏时间倒序、按更新时间、按内容类型。筛选项包括日期范围、标签、内容类型。右上角是一个全局搜索框支持自然语言查询。比如输入“上周收藏的 Python 工具类视频”系统会拆成时间条件加关键词条件返回对应结果。这个能力一部分靠规则解析一部分靠向量检索兜底。4.2 卡片详情页和追溯体验点击卡片进入详情页详情页分三个区块顶部是视频关键帧截图和基本信息中段是 AI 生成的摘要和核心观点底部是来源追溯区域。来源追溯区域会展示这些内容原始链接带一键打开按钮视频 ID / 作者 ID收藏时间本地内容快照状态是否已保存字幕、关键帧手动备注框方便记录自己的任何想法这里有个小细节我觉得特别有用详情页渲染时关键点列表自动加序号且旁边放一个小按钮“复制为 Markdown”。看完一个知识型视频整理出的内容可以一键粘贴到自己的笔记软件里不需要手动排版。这个工作台真正做到“看一眼就知道视频讲了什么点一下就能回到原始出处拷一段就能进笔记”。整个流程顺畅之后我再也不焦虑收藏夹里那些没看过的内容了。5. 实战过程中踩到的坑一个一个说5.1 数据导出的格式陷阱最早我拿到的是浏览器直接复制出来的收藏数据里面包含大量 HTML 实体编码、隐藏转义字符、未闭合的标签。直接喂给 JSON 解析器会崩溃必须用清洗函数做预处理。这个坑的解决方案是写一个“宽松解析器”先把 HTML 标签整体去掉再对quot;这类实体做反转义最后再尝试解析 JSON。如果解析失败就进入手工纠错模式把异常行打印出来方便观察。另外一个没想到的坑是重复数据。同一视频被收藏多次时收藏时间会更新但视频 ID 不变。我最初没有按内容去重导致工作台里出现很多相似卡片后来引入了内容哈希去重问题才解决。5.2 ASR 转录的质量问题语音识别在短视频场景里有个特殊问题背景音乐太吵。很多视频的背景音比人声还响直接识别结果惨不忍睹。我测试了一轮发现背景音乐对识别结果的影响非常大于是让 AI 在音频预处理阶段加了一步声音分离把嘈杂伴奏去掉之后再识别准确率肉眼可见地提升。转录过程中还有长视频截断的问题。短视频平台一般视频控制在几分钟内但也存在接近十分钟的长视频。模型对超长音频会出现信息遗忘我在处理时按 30 秒分片转录最后把分片结果拼起来再送大模型。这个操作解决了截断问题代价是会增加一点调用次数但效果值得。5.3 模型成本和响应时间怎么控制成本问题在本地部署模型后基本可控但有一点需要提醒大语言模型接口调用费用虽然不高如果每条视频都反复调用很多次累计下来也不少。我的策略是分层调用。分析阶段只调用一次大模型把转录文本、关键帧识别结果、标题一次性放进上下文生成完整知识卡片。查询阶段不调用大模型用本地检索硬扛。只有语义检索失败或者用户在详情页点击“重新分析”的时候才会再触发一次模型调用。响应时间上本地语音识别是最大瓶颈一条三分钟的视频转录大概需要二十秒到一分钟取决于机器性能。我的做法是加入任务队列后台自动处理新收藏的视频进来先存在“待处理”列表转完自动出现在总览页。这个异步处理机制很重要不然用户导入一批数据之后只能干等着。5.4 一次值得记录的排查过程有一次工作台首页突然加载不出数据检查发现是数据库里某个字段的长度超限。原因是某条视频的作者名特别长AI 生成的知识卡片里把这个字段原样存了结果超过了数据库字段长度定义。排查期间我直接打印了数据入库 SQL发现确实是字符串长度问题让 AI 把字段类型改成可变长度问题就解决了。整个过程用了不到十分钟但提醒了我一个教训AI 生成的代码再完美也必须在数据层加一遍防护比如字段截断、类型校验、空值兜底不然生产环境很容易被脏数据打挂。6. 避坑速查表直接照着抄我把这次项目里所有总结的经验整理成了一张速查表方便后面再做类似项目的时候直接参考。问题模块典型现象解决办法数据导入JSON 解析崩溃 / 字段乱码先清洗再解析处理 HTML 实体打印异常行排查数据去重同一视频重复出现用视频 ID 加链接算内容哈希入库前先去重音频转录背景音乐导致识别错误先做声音分离再按 30 秒分片转录长视频转录内容截断 / 信息丢失音频切片处理转录结果分段保存再合并关键帧冗余帧过多、处理慢每隔 10 秒抽帧用相似度检测跳过重复帧大模型成本分析一次调用次数过多合并上下文单次调用查询阶段不调模型接口稳定性偶发超时或返回格式异常增加重试机制模型返回先校验 JSON 结构脏数据字段超长 / 类型错误入库前做字段校验和截断处理兜底默认值链接失效收藏视频打不开保存作者、标题、视频 ID 等多层溯源信息检索不准关键词查不到相关内容引入向量检索对摘要和关键点做嵌入这张表基本覆盖了“视频收藏 AI 整理工具”这个方向的大多数问题。如果你照抄这张表的经验能省掉不少调试时间。我个人在这几次反复折腾里的最大体会是Vibe Coding 并不神秘它就是把“写代码”这件事变成了“描述问题 修正方向”的循环。这个思路特别适合做一次性工具和私人知识库因为这类项目需求变化快、个性化强、又不需要高并发高可用正是 AI 编程工具最擅长的范围。另外建议感兴趣的朋友第一次做这类项目别贪大不要一上来就做账号体系、多人协作。就先把数据导入、内容理解、搜索追溯这三条主干打通后面再慢慢加功能。主干通了整个系统的价值就已经体现出来了。这个方向后续还有很多可以扩展的点比如定时自动抓取关注列表的新视频、跨平台聚合收藏、对知识卡片做主题聚类生成个人知识图谱。等我继续玩一段时间有新的心得再来分享。