跳至主要內容

知识库真的对 AI 有帮助吗?

离心原创大约 4 分钟notesAI

知识库真的对 AI 有帮助吗?

看了李笑来的一篇文章,发现这个事儿还真不是这么简单。

双盲测试是用来判断某个方式是否有用的好办法,在计算机领域有个专门的词叫 AB 测试。

事情大概是这样的,李笑来之前开发了一个叫 klode 的工具。它的原则是:
Cite, don’t recall——引用,不要依靠模型回忆

klode 要求 AI 的每个观点都引用真实原文,并通过检查工具确保引用确实存在。于是,他原本准备把软件工程经典著作和研究方法论书籍做成知识库,让 AI 根据这些经典资料回答问题。

但在真正建设知识库之前,他先验证了一个关键假设:

给 AI 提供经典资料,真的能让它回答得更好吗?

他做了三组盲测

每组问题都采用三个条件:

  • 不提供资料:完全依靠模型已有知识;
  • 提供正确原文:也就是知识库正常工作;
  • 提供真实但无关的原文:用来测试错误资料是否会干扰判断。

实验结果很有意思。

1. 软件设计知识:引用没有提升效果

他用软件设计原则设计了6道判断题。

结果三个条件全部是 6/6:

  • 不提供资料:6/6
  • 提供正确资料:6/6
  • 提供无关资料:6/6

模型早已掌握这些经典知识,提供原文并没有让答案变得更好。

2. 研究方法论:还是没有提升

第二轮换成更专业、更容易掉进陷阱的问题,例如:

  • 碰撞偏差;
  • 过度调整;
  • 扎根理论;
  • 主题分析;
  • 小样本显著性;
  • 赢家诅咒。

结果三个条件全部是 7/7。

即使不给任何资料,模型也能准确说出Berkson’s bias”和“winner’s curse等概念。说明这些已经出版、传播广泛的专业知识,也可能早已被前沿模型掌握。

3. 虚构框架:知识库突然非常重要

为了排除“题目太简单、实验测不出差异”的可能,他虚构了一套模型绝对不可能提前知道的软件规则。

结果差异立刻出现:

条件得分
不提供资料2/7
提供正确资料7/7
提供错误资料3/7

这证明实验工具是有效的,也得出了文章最重要的结论:

只有当资料包含模型不知道的知识时,知识库才能显著提高回答质量。
对模型已经掌握的知识,引用可能只是装饰;对模型不知道的知识,引用则可能决定一切。

什么知识值得做成知识库

文章认为,知识库真正适合承载三类信息:

  • 私有知识:个人标准、公司内部流程、历史决策、客户未公开的系统、个人写作规则。这些内容不可能存在于模型的训练数据中。
  • 最新知识: 模型训练截止日期之后出现的论文、政策、产品文档和行业变化。
  • 冷门知识: 极少公开、传播范围有限,模型在训练阶段可能很少见到的长尾信息。

引用仍然有两个独立价值

即使引用不能让模型“变聪明”,它仍然有价值:

  • 可追溯性:别人可以检查这个观点来自哪里;
  • 约束模型:要求模型严格按照某套资料或理论回答,而不是综合训练数据中的各种观点。

但文章也强调:

引用真实,只能证明这段原文真实存在,不能证明模型围绕引用得出的判断一定正确。

换句话说,引用提供的是来源证明,不是结论证明。

我对文章的理解

这篇文章最值得借鉴的,其实不是关于 RAG 或知识库的技术判断,而是产品开发方法:

  • 不要因为一个产品故事听起来合理,就直接投入建设;
  • 把产品最核心的假设单独拿出来;
  • 设计一个可以证伪它的低成本实验;
  • 主动找另一个模型或人攻击自己的方案;
  • 让实验结果决定做什么,而不是让沉没成本保护原来的想法。

李笑来最后没有建设原计划中的“经典知识库”,但他并没有否定 klode。实验反而帮他找到了更准确的产品定位:

klode 不适合重复教授模型已经知道的经典知识,但适合管理私有、最新、冷门,以及必须可审计的知识。

不要为了“让 AI 知道更多”而盲目建设知识库;先确认资料里是否真的存在模型不知道、业务又确实需要的知识。

最重要的是:在投入开发之前,先用低成本实验验证产品最核心的假设,尤其当这个假设是你自己提出的时候。