2026/9/28 15:58:36

从1136条到17条:AI日报自动化生产链路全拆解

从1136条到17条:AI日报自动化生产链路全拆解 1. 一份AI日报的诞生从信息洪流到结构化输出每天早上七点我的手机闹钟还没响桌面上那台常年不关机的迷你主机已经开始跑当天的AI日报生成流程了。这件事我坚持了快两年从最开始手动刷几十个信息源、复制粘贴到文档里到现在整套流程基本自动化中间踩过的坑、换过的方案、废弃的脚本加起来能写一本小册子。今天这篇博文我就拿2026年9月23日这一期日报作为样本把整个生产链路拆开来讲清楚——从信息采集、筛选去重、摘要生成到最终排版输出每一步为什么这么做、用什么工具、参数怎么调全部摊开来说。如果你也在做类似的信息聚合项目或者想给自己团队搭一个每日AI动态简报又或者只是好奇一份看起来简单的日报背后到底有多少工序那这篇内容应该能给你不少参考。我不会只讲“用什么工具”更会讲“为什么选这个而不是那个”以及那些只有真正跑过一段时间才会发现的细节问题。先说结论一份高质量的AI日报核心难点从来不是“抓不到信息”而是“抓得太多、太杂、太重复”。2026年的AI领域信息密度比两年前又上了一个台阶每天光是主流模型厂商的更新、开源社区的提交、行业媒体的报道、社交平台上的讨论加起来轻松过千条。如果不对信息源做分层、不对内容做去重和优先级排序最后产出的日报要么是流水账要么漏掉真正重要的东西。我目前这套流程从采集到成稿全自动跑完大约需要12到15分钟人工干预主要集中在最后的审阅和微调上大概再花10分钟。下面按环节拆解。1.1 为什么选择“日报”这种形式而不是周报或实时推送这个问题我被问过很多次。实时推送看起来更及时但对绝大多数人来说信息过载比信息滞后更可怕。我试过做实时推送结果是自己先受不了——手机每隔几分钟就响一次注意力被切得稀碎。周报的问题则相反AI领域一周的变化量太大等到周末再汇总很多热点已经凉了而且周报篇幅太长阅读完成率很低。日报是一个折中点24小时的窗口期足够让一个重要事件发酵出足够的讨论和后续信息又不至于像周报那样堆积成山。2026年9月23日这一期我统计了一下最终入选的条目是17条从采集到的原始条目里筛选比例大约是1.5%。这个比例听起来很夸张但实际跑下来大部分信息确实是噪音——重复的转发、没有实质内容的猜测、纯粹的情绪输出这些都不应该进入日报。提示如果你刚开始做类似项目建议先把采集范围收窄到5到8个核心信息源跑顺了再逐步扩展。一上来就铺几十个源去重和筛选的逻辑还没调好产出质量会非常差。2. 信息采集层的设计与实操细节采集是整个流程的入口也是最容易出问题的环节。2026年9月23日这一期我实际配置的信息源分为四个层级官方渠道、开源社区、行业媒体、社交平台。每个层级的采集频率、解析方式、可信度权重都不一样。2.1 四层信息源的配置与权重分配官方渠道包括主要模型厂商的博客、公告页面、开发者文档更新日志。这类源的特点是权威性高、噪音少但更新频率不固定有时候一天好几条有时候几天没动静。我的采集频率设为每30分钟一次解析方式用针对性的CSS选择器提取标题和正文摘要。权重给到最高因为官方发布的内容基本可以直接进入候选池。开源社区主要是代码托管平台上的趋势榜、热门仓库的提交记录、issue讨论。这类源的信息量很大但需要做更严格的过滤——比如一个仓库只是改了README的错别字这种就不应该进日报。我的做法是设置一个最低阈值提交次数、star增长量、讨论热度三个指标加权后超过阈值才进入候选。2026年9月23日这天开源社区贡献了最终17条里的5条。行业媒体包括几家我长期跟踪的AI垂直媒体和综合科技媒体的AI频道。这类源的问题是转载和洗稿严重同一件事可能被十几家媒体用不同标题报道。我的处理方式是在采集阶段就记录原文链接和核心实体后续用实体匹配做去重。权重中等因为媒体的解读有时比官方公告更有信息量但也可能带偏节奏。社交平台是最难处理的一层。信息量大、噪音多、情绪化内容占比高但有时候第一手的信息确实从这里出来。我的策略是只采集特定账号和特定话题标签下的内容并且设置较高的互动量门槛。2026年9月23日这天社交平台贡献了2条最终条目都是因为互动量异常高才被选入。信息源层级采集频率解析方式权重当日贡献条目官方渠道30分钟CSS选择器最高6条开源社区60分钟API阈值过滤高5条行业媒体45分钟RSS实体提取中4条社交平台20分钟话题标签互动门槛低2条2.2 采集频率的取舍与反爬策略的平衡采集频率的设置需要平衡两个因素及时性和对目标站点的压力。我见过有人把频率设到每分钟一次结果IP很快被限制整个流程断掉。我的经验是对于大多数站点30到60分钟一次足够覆盖日报的需求——毕竟日报是每天出一期不是实时监控。反爬方面我尽量用官方提供的API或RSS实在没有才用页面解析。页面解析时也会设置合理的请求头、控制并发数、遵守robots协议。这不是什么道德高地纯粹是实用主义被封一次修复的时间成本远高于把频率降下来。2026年9月23日这天有一个源因为临时调整了页面结构导致解析失败但因为我有失败重试和告警机制在第二次重试时就恢复了没有影响最终产出。注意采集失败一定要有告警。我早期吃过亏某个源静默失败了好几天日报里一直缺那一块的内容直到有人问我“怎么最近没有XX的消息”才发现。现在我的做法是任何源连续两次采集为空或解析异常就发通知到我的设备上。3. 筛选、去重与优先级排序的核心逻辑采集回来的原始数据是一大堆杂乱的条目2026年9月23日这天原始条目数是1136条。从1136到17这个筛选过程是日报质量的关键。我把它拆成三步硬性过滤、实体去重、优先级排序。3.1 硬性过滤把明显不合格的条目先扔掉硬性过滤的规则比较简单粗暴但能干掉大部分噪音。我的规则包括正文长度少于50个字符的扔掉纯链接无描述的扔掉标题包含明显广告词的扔掉发布时间超过48小时的扔掉日报只关注近期内容来源可信度评分低于阈值的扔掉。这一轮下来1136条大概会剩下300到400条。2026年9月23日这天剩了342条。这一步的关键是规则要明确、可执行不要试图用模糊判断。我见过有人在这一步用机器学习模型做分类效果不一定比规则好但维护成本高很多。对于日报这种场景规则足够用。3.2 实体去重同一件事只留一条实体去重是技术含量最高的一步。我的做法是提取每条内容的核心实体——公司名、产品名、模型名、人名、版本号——然后做匹配。如果两条内容的核心实体重合度超过阈值就判定为同一事件只保留信息量最大的那条。这里有个细节实体提取的准确性直接决定去重效果。我早期用简单的关键词匹配结果“GPT”和“GPT-4”被当成不同实体导致重复。后来改用基于规则和词典结合的方式维护了一个持续更新的实体词典效果稳定很多。2026年9月23日这天342条经过实体去重后剩下89条。3.3 优先级排序什么内容值得放在日报前面排序的依据是几个维度的加权分来源权重、互动量、实体重要性、内容新颖度。来源权重前面说过官方渠道最高。互动量包括转发、评论、点赞等指标但不同平台的量级不一样需要做归一化处理。实体重要性是我维护的一个评分表主要厂商和主流模型的分值高小众项目的分值低。内容新颖度看的是这条信息是否在近期出现过类似表述。加权之后按分数从高到低排取前20条左右进入摘要生成环节。2026年9月23日这天89条排序后取了前22条最终成稿时又去掉了5条剩下17条。筛选阶段输入条目数输出条目数主要操作硬性过滤1136342长度、时效、来源过滤实体去重34289核心实体匹配去重优先级排序8922多维度加权排序人工审阅2217最终取舍与微调4. 摘要生成与排版输出的实现细节到了这一步剩下的条目已经是精华了但还需要把每条内容压缩成适合阅读的摘要并且组织成日报的格式。2026年9月23日这一期我用的摘要生成方案是“模板模型润色”的混合方式而不是纯模型生成。4.1 为什么不用纯模型生成摘要纯模型生成摘要听起来很美好但实际用下来有几个问题。一是长度不可控有时候生成一大段有时候只有一句话。二是风格不统一同一期日报里有的条目像新闻稿有的像评论。三是事实性错误的风险模型有时候会把数字或名称搞错而日报对准确性要求很高。我的方案是先用模板提取关键信息——谁、做了什么、什么时候、有什么影响——生成一个结构化的草稿然后再用模型做语言润色让表达更自然。这样既保证了信息准确又避免了风格割裂。2026年9月23日这天的17条摘要平均每条修改了2到3轮才定稿。4.2 排版输出的格式选择与工具链最终输出格式我选的是Markdown因为它在各种平台上都能用而且结构清晰。排版工具链很简单Python脚本生成Markdown文件然后用一个静态站点生成器渲染成网页同时推送到几个我常用的阅读渠道。这里有个小技巧日报的标题层级和编号要固定方便读者快速定位。我的格式是二级标题作为大分类三级标题作为具体条目每条包含来源、摘要、原文链接。2026年9月23日这期的分类是“模型与产品更新”“开源与工具”“行业动态”“观点与讨论”四个板块。提示原文链接一定要保留而且要用可点击的格式。读者看到感兴趣的条目能直接跳转到原始信息源这个体验很重要。我早期为了排版简洁把链接去掉了结果收到不少反馈说“想深入了解但找不到出处”。5. 实操中遇到的典型问题与排查记录跑了快两年遇到的问题五花八门这里挑几个有代表性的讲一下排查思路和解决方法。5.1 采集源突然失效的快速定位最常见的问题是某个源突然采不到数据了。排查顺序是先手动访问源地址确认站点是否正常如果站点正常检查页面结构是否变化如果结构变了更新解析规则如果站点本身挂了临时禁用该源并记录等恢复后再启用。2026年9月23日这天遇到的情况是一个行业媒体把文章列表从服务端渲染改成了客户端渲染原来的CSS选择器抓不到内容了。解决办法是改用该媒体提供的API接口虽然需要申请一个密钥但稳定性好很多。5.2 去重逻辑误判的修正方法实体去重偶尔会误判把两件不同的事当成同一件。比如同一天有两个不同的开源项目都发布了新版本如果实体提取只抓到了“新版本发布”这个通用表述就可能误判。修正方法是提高实体匹配的粒度不仅匹配通用实体还要匹配项目名、版本号等具体信息。我现在的做法是去重结果会生成一个日志记录哪些条目被判定为重复、依据是什么。每天审阅时扫一眼日志发现误判就调整规则。这个习惯帮我避免了很多潜在问题。5.3 摘要生成中的事实性错误防范模型润色环节偶尔会引入事实性错误比如把“提升了15%”写成“提升了50%”。防范方法是润色后的摘要和原始信息做一次关键数字和名称的比对不一致就标记出来人工确认。这个比对用简单的字符串匹配就能做不需要复杂的模型。2026年9月23日这天有一条摘要里模型把某个模型的参数量写错了比对环节发现后改了过来。如果没有这个检查错误就发出去了。问题类型表现排查思路解决方法采集源失效某源连续为空手动访问确认站点状态更新解析规则或改用API去重误判不同事件被合并查看去重日志提高实体匹配粒度摘要事实错误数字或名称不对关键信息比对人工确认后修正排版错乱格式不统一检查模板和渲染固定模板并做校验6. 关于日报项目后续扩展的一些想法这套流程目前跑得比较稳但还有一些可以优化的地方。比如摘要生成环节我一直在尝试用更小的模型做本地推理减少对外部服务的依赖目前测试下来效果已经接近可用但速度和稳定性还需要再调。另外就是多语言支持现在主要处理中文和英文内容日文和韩文的源也有不少有价值的信息但解析和摘要的质量还不够好。还有一个方向是个性化。现在的日报是统一版本但不同读者关注的领域不一样。我在考虑做一个简单的偏好设置让读者可以调整不同板块的权重生成更符合自己需求的日报。这个功能技术上不难主要是产品设计上要想清楚怎么让用户用起来不觉得麻烦。如果你也在做类似的项目我的建议是先把核心流程跑通不要一开始就追求大而全。采集、筛选、摘要、排版这四个环节每个环节做到80分整体体验就已经不错了。剩下的20分等流程稳定了再慢慢打磨。