TL;DR
- RAG 数据新鲜度是源文档、嵌入和索引记录的更新策略,而不仅仅是爬虫调度。
- 在花钱重新分块和嵌入页面之前,比较标准化的主要内容,而不是原始 HTML。
- 每个块都应有一个稳定的源 URL 和版本,以便已更改和删除的页面可以干净地替换旧向量。
- Nstdata Crawl 可以以 Markdown 格式检索公共页面;你的应用程序负责变更检测、嵌入、向量存储和答案评估。
- 将收集失败记录与真正的删除分开,以便一个超时不至于抹去有效的知识来源。
为什么 RAG 知识库会过时
对于一个实用的集合层,请查看与下面工作流程搭配的 Nstdata Crawl。
原始 RAG 论文 描述了与外部检索记忆的生成。当其索引描述页面的早期版本时,增强检索生成可能会引用过时的材料。当旧块仍然可搜索时,定价页面可能已经改变;当其向量继续回答问题时,帮助文章可能已经消失。模型可能与它所给的数据一致,因此修正应该放在摄取管道中。
新鲜度目标需要两个时钟。集合年龄 是自上次成功检查页面以来的时间。索引年龄 是自对应块写入检索存储以来的时间。当提取成功但嵌入或索引失败时,它们可能会分歧。跟踪两者。有关将页面转换为可读文本的背景,请参见 URL 到 Markdown 转换 和 从网站提取结构化数据。
RAG 管道中网络数据新鲜度的工作原理
管道是源发现 → 页面检索 → 主要内容 Markdown → 标准化 → 变更检测 → 分块 → 嵌入 → 向量更新 → 检索评估。源发现可能来自网站地图、批准的 URL 列表或受限站点爬取。每个阶段都需要自己的错误状态和重试策略。
公共源 URL -> Nstdata Crawl -> Markdown -> 内容哈希 | 不变:保留索引 | 更改:分块 -> 嵌入 -> 更新 | 删除:验证 -> 删除向量 向量存储 -> 检索器 -> 带引用的答案
Nstdata Crawl 涵盖检索和提取。其当前 通过其 Python SDK 显示 Markdown 输出。它不创建嵌入,也不操作向量数据库,不能决定页面是否更改,也不判断答案是否是最新的。这些阶段属于你的应用程序或其他服务。有关单独 AI 工作流程模式,请参见 。





