本文经原作者授权转载,版权归原作者所有。原作者:知野(@knoYee_)。查看原文 →


我相信大家在整理知识库时都有这样一个痛点:

优质的论文、好的想法被我们存入 Obsidian,资料越来越多,但可复用的结论却没有增加。久而久之,它们慢慢堆积成一个杂乱的仓库,甚至连我们自己也不愿意再去寻找。

今天我会从传统 RAG 讲起,带大家深度剖析 Agentic RAG 的工作原理,以及如何用 LLM Wiki + Obsidian 搭建第二大脑,实现数据飞轮。

一、传统 RAG 知识库

传统 RAG 的基本工作原理可以概括为:

  1. 将原始知识库切片,也就是 chunk;
  2. 将切片内容转成向量,存入向量数据库;
  3. 用户提问;
  4. 将 query,也就是用户问题,转成向量;
  5. 通过相似度检索找到相关切片;
  6. 将检索出来的切片连同用户问题一起交给 LLM;
  7. LLM 根据上下文生成回答。

简单来说,传统 RAG 的流程是:

原始知识库 → 切片 → 向量化 → 向量数据库 → 用户问题 → 相似度检索 → LLM 回答

但我们不难发现,在这个过程中存在一些明显漏洞。

1. 上下文丢失,导致检索失误

比如原文中写的是:

仅限于中国地区,某政策才会生效。

但如果切片或检索时上下文丢失,LLM 可能只看到后半部分,于是回答成:

该政策均可生效。

这就是传统 RAG 中常见的问题:切片本身可能破坏原文语境,导致 LLM 在回答时忽略重要条件。

2. 幻觉问题

当用户的提示 prompt 不够精准时,LLM 很容易自行补充不存在的信息。

比如原文只是说:

高级员工可报销大部分账单。

但 LLM 可能会回答:

高级员工可报销 80% 以上的账单。

这里的 “80%” 并没有来源,是模型自己补出来的内容。

3. 每次检索都需要从 0 开始

传统 RAG 每次回答问题时,通常都要重新从知识库中检索相关内容。

对于简单问题,这种方式还可以接受。

但对于复杂问题,比如需要跨论文、跨项目、跨时间线整合信息的问题,传统 RAG 往往处理得并不好。

它更像是一个机械检索系统,而不是一个真正会思考、会规划、会维护知识的系统。

二、为什么需要 Agentic RAG?

既然传统 RAG 只是机械地检索,那我们为什么不给它加一个“脑子”呢?

于是,Agentic RAG 应运而生。

简单来说:

Agentic RAG = Agent + RAG

Agentic RAG 不只是检索知识,它还具备:

  • 规划能力;
  • 调用工具的能力;
  • 自我评估和检查的能力;
  • 多轮任务拆解能力;
  • 必要时重新检索和修正的能力。

它不再是一个静态检索系统,而是一个动态决策系统。

三、Agentic RAG 的工作流程

Agentic RAG 的完整流程大致如下:

Article image
  1. 理解问题;
  2. 规划任务;
  3. 判断解决路径;
  4. 调用工具;
  5. 评估结果;
  6. 必要时重新检索;
  7. 生成答案;
  8. 验证答案。

也就是说,它不是简单地“搜一下然后回答”,而是会先判断:

  • 用户真正想问什么?
  • 这个问题是否需要拆解?
  • 是否需要检索知识库?
  • 是否需要联网搜索?
  • 是否需要调用 API?
  • 当前检索结果是否足够?
  • 最终答案是否有证据支持?

四、Agentic RAG 的三个关键优化

1. 智能查询处理

Agentic RAG 会对用户的 prompt 进行优化和消歧。

当用户提出问题后,它不会立刻检索,而是会先尝试理解问题。

它会结合上下文和多轮对话,对用户问题进行重写。

如果问题比较复杂,它还会拆分和重组问题,最后形成一个更明确的任务范式。

例如,用户的问题可能是:

帮我整理一下最近看的 RAG 论文。

Agentic RAG 可能会将它拆解为:

  • 最近看过哪些 RAG 论文?
  • 每篇论文的核心观点是什么?
  • 它们之间有什么相同点和差异?
  • 是否可以归纳出一个知识框架?
  • 哪些内容值得沉淀到长期知识库?

这就是智能查询处理的价值。

2. 动态决策与工具调用

Agentic RAG 拥有路由功能,可以进行多轮分支分析。

它会判断当前问题应该走哪条路径:

  • 是否需要检索本地知识库?
  • 是否需要访问外部网页?
  • 是否需要调用 API?
  • 是否需要查询数据库?
  • 是否需要使用某个特定工具?

最后,它会将不同来源的信息动态整合起来,形成完整的任务计划。

这使得 Agentic RAG 不再局限于单次检索,而是能够处理更加复杂的任务。

3. 自我反思、评估和修正

Agentic RAG 会做两件重要的事。

第一件事,是对检索结果进行评估。

它会判断:

  • 检索结果是否相关?
  • 信息是否完整?
  • 是否遗漏了关键上下文?
  • 是否需要重新检索?

第二件事,是对最终答案进行修正。

它会检查:

  • 答案是否有证据支持?
  • 是否遗漏了关键条件?
  • 是否存在无来源推断?
  • 是否需要补充引用或重新组织回答?

通过这套流程,Agentic RAG 优化了从问题理解到答案生成的完整路径。

五、Agentic RAG 仍然没有解决的问题

Agentic RAG 已经比传统 RAG 更智能。

但它仍然有一个痛点挥之不去:

它在检索时仍然主要是从 0 开始理解。

对于长期问答来说,它并没有天然做到持续总结,也没有自动形成长期知识结构。

换句话说,Agentic RAG 更擅长解决“当下如何回答”的问题,但并不天然解决“知识如何长期积累”的问题。

如果每一次提问、检索、总结都没有被沉淀下来,那么下一次遇到类似问题时,系统依旧要重新开始。

这样就无法实现知识的复利增长。

这时,LLM Wiki 就顺势而起。

六、什么是 LLM Wiki?

LLM Wiki 不是 Agentic RAG 的替代,而是长期知识底座。

它不是只为了回答某一个问题,而是为了组织和维护长期记忆。

可以把 LLM Wiki 理解为:

一个由 LLM 辅助组织、更新和维护的长期知识系统。

它的核心目标不是“临时检索”,而是“持续沉淀”。

它让每一次阅读、每一次提问、每一次总结,都能够变成下一次可复用的知识资产。

七、LLM Wiki 的三层架构

LLM Wiki 可以分为三层。

Article image

第一层:Raw Sources 原始来源层

路径示例:

~/wiki/raw

这一层用于存储原始资料。

包括:

  • 论文;
  • 数据;
  • 文章;
  • 网页资料;
  • 会议记录;
  • 项目文档;
  • 原始笔记。

访问策略是:

只读不改。

Raw Sources 的角色是事实来源。

它是所有后续总结、分析、归纳的基础。

这一层非常重要,因为它保证了所有结论都可以追溯回原始材料。

第二层:Wiki Pages 页面层

这一层是整个 LLM Wiki 中最重要的一层。

它可以理解为 Agent 的结构化知识笔记,也是长期记忆的核心。

Wiki Pages 中存储的是经过加工后的知识,包括:

  • 摘要;
  • 总结;
  • 对比;
  • 分析;
  • 结论;
  • 主题页面;
  • 项目页面;
  • 方法论页面。

这一层不是简单复制原文,而是对原始资料进行知识加工。

它真正让知识从“资料”变成“可复用的结论”。

Wiki Pages 的导航文件

这一层可以设计三类导航文件:

  1. index.md
  2. log.md
  3. hot.md

1. index.md:总目录

index.md 相当于整个 Wiki 的总入口。

它负责告诉我们:

  • 当前知识库有哪些主要主题;
  • 每个主题下面有哪些关键页面;
  • 新用户或新 Agent 应该从哪里开始阅读;
  • 整个知识库的结构是什么。

2. log.md:更新日志

log.md 用来记录知识库的变化。

包括:

  • 新增了哪些页面;
  • 修改了哪些页面;
  • 删除了哪些内容;
  • 哪些结论发生了变化;
  • 哪些来源被补充进来。

它的作用是让知识库的演化过程可追踪。

3. hot.md:重点高频页面

hot.md 用来记录高频使用或重点关注的页面。

比如:

  • 最近经常访问的页面;
  • 当前项目最重要的页面;
  • 高频问题对应的页面;
  • 值得复习和迭代的页面。

它相当于知识库中的快捷入口。

Wiki Pages 中还有两个非常重要的机制。

1. Wiki Link 双链互联

Wiki Link 用来将不同的 Wiki 页面串成一个知识网络。

比如:

  • [[Agentic RAG]]
  • [[LLM Wiki]]
  • [[Obsidian]]
  • [[知识飞轮]]
  • [[Source-first]]

通过双链,不同页面之间不再是孤立的,而是可以互相引用、互相连接。

这让知识库从普通文件夹变成了一个知识网络。

2. YAML Frontmatter 页面元数据

YAML Frontmatter 用来记录页面的元信息。

例如:

  • 来源;
  • 作者;
  • 创建时间;
  • 更新时间;
  • 标签;
  • 页面状态;
  • 可信度;
  • 关联主题。

示例:

--- title: Agentic RAG tags: - RAG - Agent - LLM status: developing source: - paper-a.pdf - article-b.md created: 2026-04-27 updated: 2026-04-27 ---

这样一来,每个页面都不只是文本,而是带有结构化信息的知识节点。

第三层:协同进化层

第三层是用户和 Agent 一起维护、迭代知识库。

这一层的核心文件是:

schema.md

schema.md 用来定义整个知识库的结构和约定。

例如:

  • 页面应该如何命名?
  • 标签应该如何使用?
  • 什么内容可以写入 Wiki Pages?
  • 什么内容必须保留在 Raw Sources?
  • 当不同来源之间出现冲突时,应该如何处理?
  • 页面状态如何定义?
  • Agent 更新页面时需要遵守什么规则?

这一层的意义在于:

它把 LLM 从自由生成的写作者,规范成一个遵守 Wiki 规则的知识维护者。

有了 schema.md,LLM 不再是随意总结,而是按照既定规则参与知识库维护。

八、LLM Wiki 如何解决传统知识库痛点?

LLM Wiki 的出现,帮助我们解决了开头提到的几个问题。

1. 资料越来越多,但结论没有增加

过去,我们只是把资料存进去。

但 LLM Wiki 会进一步把资料加工成:

  • 摘要;
  • 主题页面;
  • 对比页面;
  • 方法论页面;
  • MOC 路线图;
  • 可复用结论。

这样,资料不再只是堆积,而是会被不断提炼。

2. 知识难以复用

通过 Wiki Pages、MOC、双链和标签,知识会被组织成网络。

下次遇到类似问题时,我们不需要重新从原始资料中翻找,而是可以直接进入相关页面。

3. 知识没有长期结构

传统 RAG 更像一次性问答。

而 LLM Wiki 会把每一次阅读、检索、总结和更新,都沉淀进长期知识结构中。

这就是知识复利的来源。

九、用 Obsidian 可视化 LLM Wiki

接下来,我们可以用 LLM Wiki + Obsidian 的方式可视化知识库。

只要 Wiki 以 Markdown 文件组织,我们就可以直接在 Obsidian 中打开 Wiki 所在的文件夹。

这样,知识库就会以本地 Markdown 的形式出现在 Obsidian 中。

我们可以利用 Obsidian 的能力来浏览和维护它:

  • 双链;
  • 标签;
  • 图谱;
  • 文件夹;
  • 搜索;
  • MOC;
  • 插件系统;
  • Canvas;
  • 本地存储。

十、推荐的 Obsidian 目录结构

我建议目录可以这样设计:

wiki/ ├── index.md ├── schema.md ├── moc/ ├── pages/ ├── raw/ └── assets/

对应关系如下:

  1. index.md:总入口;
  2. moc/:主题地图;
  3. pages/:正式知识页面;
  4. raw/:原始材料;
  5. schema.md:知识库规范;
  6. assets/:图片附件。

十一、MOC:主题地图

首先,我想单独着重介绍一下 MOC。

我们对普通目录并不陌生。

普通目录通常是按照顺序罗列知识点,比如:

  • 第一章;
  • 第二章;
  • 第三章;
  • A 文件夹;
  • B 文件夹;
  • C 文件夹。

但当我们进行一个复杂项目时,所需的知识通常是交错分布在不同目录中的。

这时,MOC 的作用就体现出来了。

MOC 不是普通目录,而是一张主题地图。

它会把不同位置的知识点抽出来,围绕一个问题、一条路径或一个项目重新组织。

当我们下次再碰到类似问题时,就可以顺着 MOC 直接进入对应知识路线。

比如,一个关于 Agentic RAG 的 MOC 可以包含:

  • [[传统 RAG]]
  • [[向量数据库]]
  • [[Query Rewrite]]
  • [[Tool Calling]]
  • [[Self-Reflection]]
  • [[LLM Wiki]]
  • [[Source-first]]
  • [[知识飞轮]]

这样,MOC 就不只是目录,而是解决问题的路线图。

十二、双链交叉引用:构建知识网络

在现实中,我们经常会遇到这样的情况:

一个知识点 A,同时属于 B 类、C 类、D 类。

普通目录很难直观展现这种关系。

比如:

[[Agentic RAG]] 可能同时属于:

  • [[RAG]]
  • [[Agent]]
  • [[知识管理]]
  • [[第二大脑]]
  • [[LLM 应用架构]]

如果只用文件夹分类,就必须把它放进某一个固定目录。

但通过双链,我们可以让同一个知识点同时连接多个主题。

这样,知识库不再是树状结构,而是网络结构。

这也是 Obsidian 最适合做第二大脑的原因之一。

十三、Source-first:让每个结论都可追溯来源

LLM 有一个通病:

当页面不完整时,它可能会自行补充。

这就会带来知识污染,也会带来风险。

所以我们需要 Source-first 机制。

Source-first 的核心原则是:

先保留原始资料,再整理 Wiki 页面,关键结论必须绑定来源。

具体来说:

  1. 原始资料放在 raw/ 中;
  2. Wiki 页面只能基于原始资料进行总结;
  3. 关键结论必须能追溯到来源;
  4. 没有来源的内容不能当成事实;
  5. 如果来源之间出现冲突,要在页面中标明冲突,而不是强行合并。

通过 Source-first,我们可以在很大程度上抑制 LLM 幻觉。

十四、页面生命周期:让知识持续更新

知识不是写完就结束。

知识是会变化的。

有些页面刚刚创建,还没有完善。

有些页面已经比较成熟。

有些页面可能已经过期。

如果没有生命周期管理,知识库很快又会变成新的混乱仓库。

因此,我们需要为页面标注状态。

例如:

  • draft:刚创建;
  • developing:正在完善;
  • verified:已验证;
  • stale:可能过期;
  • deprecated:已废弃。

示例:

--- title: LLM Wiki status: developing created: 2026-04-27 updated: 2026-04-27 ---

有了页面生命周期,我们就可以知道:

  • 哪些页面可以直接引用;
  • 哪些页面还需要补充;
  • 哪些页面需要复查;
  • 哪些页面不应该再使用。

这会显著提高知识库维护的科学性。

十五、三层架构 + 四个高级用法

总结一下。

LLM Wiki 的三层架构是:

  1. Raw Sources 原始来源层;
  2. Wiki Pages 页面层;
  3. 用户与 Agent 协同进化层。

它的四个高级用法是:

  1. MOC 主题地图;
  2. 双链交叉引用;
  3. Source-first 来源优先;
  4. 页面生命周期管理。

这三层架构和四个高级用法组合起来,就形成了一套人机共同协作的知识库系统。

十六、数据飞轮如何形成?

真正的价值不只是存资料,而是形成数据飞轮。

这个飞轮大致是这样的:

  1. 阅读论文、文章和资料;
  2. 将原始内容放入 Raw Sources;
  3. Agent 辅助总结成 Wiki Pages;
  4. 用户审阅、补充和修正;
  5. 页面通过双链和 MOC 进入知识网络;
  6. 下次提问时,Agent 优先复用已有结构;
  7. 新问题继续产生新页面或更新旧页面;
  8. 知识库越用越清晰,越清晰越好用。

这就是知识复利的过程。

使用越多,结构越清晰。

结构越清晰,下一次复用成本越低。

十七、结语

在 AI 浪潮下,每一个想法都弥足珍贵。

真正重要的,不只是把信息保存下来,而是让信息变成可以复用、可以追溯、可以持续演化的知识结构。

LLM Wiki + Obsidian 的价值就在于:

它把零散资料变成长期知识,把一次性问答变成持续积累,把个人笔记变成可演化的第二大脑。

我今天的分享就到这里。

愿这篇推文可以给你带来收获。

下一期,我们手把手实操:如何搭建一个真正可用的知识库。