返回博客
AI 工作流

我们如何构建一条持续更新的新闻情报流水线

我们构建了一条流水线,把持续新闻摄取转化为持久化实体档案、关系追踪以及可用于 AI 工作流的工作记忆。

AI 智能体 新闻情报 知识库 工作流

新闻监控通常被当作一个检索问题。文章被采集、排序并交付,之后的解释工作交给用户或其他下游系统完成。对于简单阅读,这已经足够。然而,对于需要保留上下文、比较时间变化并反复围绕同一实体开展推理的 AI 工作流来说,这并不理想。

目前已经很清楚,语言模型可以总结文档、识别实体,并从文本中提取结构化信号。但一个原始新闻流如何转化为可持续更新的工作记忆,这一机制仍然不够清晰。新闻 feed 可以告诉你什么是新的,却很难告诉你某个实体周围发生了什么变化、哪些关系仍然重要,以及哪些上下文应该被保留下来。

在这项工作中,我们基于 Currents 构建了一条持续更新的新闻情报流水线,用来检验持续摄取、结构化提取和持久化维护的组合,是否能够形成一种比单纯文章流更有用的状态表示。写作本文时,系统已经在追踪 547 个实体档案。

系统问题

原始新闻文章是必要的,但并不充分。

同一事件常常会在多个媒体中重复出现,叙事角度并不一致。实体命名在不同来源之间也不统一。重要进展往往是分阶段累积的,而真正关键的关系信息通常埋在正文里,而不是显式元数据中。

因此,一个仅围绕文章检索构建的系统,往往只能回答一个问题:

今天发布了什么?

长期运行的 AI 系统通常更需要回答另一个问题:

什么发生了变化,这种变化围绕谁,又与什么相关?

这个区别很重要。没有被维护的状态,同样的上下文就必须被反复从原始文章中重新推导。

流水线设计

我们把整个流程组织为六个阶段:

摄取 → 提取 → 编译 → 建联 → 索引 → 维护

摄取

我们按固定调度从 Currents 拉取最新文章。这一层负责持续提供及时、稳定的外部输入。

提取

每篇文章都会经过语言模型,以识别实体、事件、关系和上下文信号。我们不会过早强制使用刚性的 schema,而是先让重复结构浮现出来,再逐步规范化。

编译

每个实体都会获得一个持久档案。这是最关键的设计选择。系统不把每一次提及当成一次性输出,而是尽可能把新证据合并进已有记录中。

这使记忆单位从“文章”转向“实体状态”。

建联

系统不仅追踪实体本身,也追踪实体之间的关系。这样才能刻画动态交互,而不仅仅是孤立的提及频率。

索引

编译后的档案和关系会写入可查询索引,使持久化上下文能够被下游工作流访问和复用。

维护

系统定期执行剪枝、去重、冲突调和和健康检查。这一层不如提取显眼,但很可能同样重要。没有维护,重复实体、弱关系和陈旧记录会逐步降低系统质量。

为什么持久档案重要

这个系统最主要的概念变化,是从“快照”转向“记忆”。

传统文章驱动的工作流擅长回答某个主题最近被提到了什么,但不擅长回答哪些信息应当在文章处理结束后继续保留。

基于档案的工作流则可以支持另一类问题:

  • 过去 30 天里,这个实体周围发生了什么变化?
  • 哪些关系现在更突出?
  • 哪些主题在增强、衰退或保持稳定?
  • 当该主题再次出现时,智能体应当保留什么上下文?

对于长期运行的 AI 系统来说,它们需要的不是只有最新输入,而是可更新的状态。

一个简化示例

一个简化版档案可能包含:

美联储(Federal Reserve)

  • 类型: 中央银行
  • 管辖范围: 美国
  • 关键人物: Jerome Powell

近期动态

  • 最近一次会议维持利率不变
  • 持续推进资产负债表缩减
  • 表示未来降息仍将取决于数据

关联实体

  • Jerome Powell
  • 美国财政部
  • 主要股指
  • 黄金市场
  • 其他中央银行

具体表示方式可以不同,但功能相同:它是一个累积记录,而不是一次性摘要。

读完 Karpathy 的笔记之后,我们改变了什么

后续的一项改进来自 Andrej Karpathy 关于用语言模型构建和维护知识库的笔记。

更有价值的启发不是“模型能总结文本”,而是架构层的分层思路:原始材料可以保留在一层,而模型把它逐步编译成更结构化的知识层。

我们在 Hermes 中把这一思路形式化为一个 personal-wiki skill,包含三部分:

  • links/:原始资料
  • notes/:观察和工作笔记
  • wiki/:由模型维护的编译知识

这种分层减少了把每篇文章或每次研究会话都当作一次性上下文的倾向。相反,有价值的输出可以被回写到更长期的知识结构中。我们还维护了一个主 INDEX.md,并定期扫描过期页面、矛盾信息、缺失编译和断裂链接。

主要观察

在实现过程中,有几项观察很快变得明确。

第一,去重往往比模型本身有多聪明更重要。实体层一旦噪声很大,情报层也会跟着变得混乱。

第二,增量更新通常比反复全量重建更适合实际运维。一旦状态开始累积,只合并新增部分通常更便宜,也更稳定。

第三,关系提取可能承载了很大一部分长期价值,但它也是最容易漂移的层,因此必须配套清理逻辑。

最后,维护不是可选项。这个方法能否成功,预计取决于剪枝、合并、验证和覆盖检查是否被当作一等操作。

Currents 在其中扮演什么角色

在这套架构中,Currents 提供的是摄取层。

这很重要,因为它使系统能够把主要精力放在提取、组织、记忆维护和可查询性上,而不是花在来源采集和归一化上。

你可以从这里开始:

结语

最初的问题很简单:如果一个 LLM 持续接收新鲜新闻,它能否形成一种比“头条列表”更有用的世界表示?

我们的结果表明,答案可能是肯定的,但前提是摄取必须与提取、持久化编译、关系追踪和持续维护结合起来。

这里的含义是实际而有限的。单纯的新闻交付不足以形成工作记忆。然而,持续摄取加上持久档案,似乎能够为 AI 工作流提供一个更稳定、也更容易更新的知识层。