Skill 知识库和 RAG 知识库,根本不是一回事
如果你用过腾讯 ima.copilot、扣子、Get 笔记这些平台的知识库功能,可能会觉得挺方便的。只要上传几个文档,AI 就能根据里面的内容回答问题。
如果你用过腾讯 ima.copilot、扣子、Get 笔记这些平台的知识库功能,可能会觉得挺方便的。只要上传几个文档,AI 就能根据里面的内容回答问题。
既然这么简单,为什么我们还要费劲去给 Skill 建 references 目录呢?
其实吧,传统的 AI 知识库和 Skill 的 references,虽然都是让 AI 能用到你提供的资料,但它们的工作方式截然不同。打个比方:RAG 知识库像是在图书馆的电脑上搜索,系统帮你自动匹配。而 Skill 则像是请一个懂行的专家帮你翻书,AI 自己思考着找。
这个区别,决定了它们各自适合什么场景,也决定了怎么把它们结合起来发挥最大威力。
RAG 知识库:系统自动帮你检索
先来看看 RAG 知识库是怎么工作的。
当你把文档上传到豆包、Coze 这类平台的知识库时,系统会在后台做一件事,就是把你的文档切成一小段一小段。一份 50 页的 PDF,可能被切成几百个小片段,每个片段只有几百字。
然后,当你向 AI 提问时,系统会把你的问题和所有这些小片段进行匹配,找出「看起来最相关」的几段,拼接后交给 AI。AI 只能看到这些被塞过来的片段,然后基于这些内容回答你的问题。
这种方式有个正式的名字,叫做 RAG,也就是检索增强生成。它的好处是简单直接,上传文档,马上就能用。
但它也有几个明显的问题。
第一个问题是理解有限,不够聪明。现在的 RAG 系统虽然能识别近义词,比如「客户投诉」和「客诉」这种简单的同义表述,但它理解不了更深层的意图。比如你问「退货政策」,系统可能同时找来了亚马逊、淘宝、京东三个平台的退货规则,但其实你只是想问亚马逊的。可惜系统不知道你之前聊的是亚马逊的订单,它无法结合对话的上下文来判断该找哪份资料。
第二个问题是丢失结构。文档被切成小片段后,原来的章节关系、前后逻辑全没了。一份法律文件可能分为总则、分则、附则,它们之间有明确的从属和引用关系。但切片之后,这些关系就丢失了。AI 只能看到一段一段孤立的文字,无法理解整体的逻辑结构。
第三个问题是该找的没找到,不该找的找来了。有时候你明明知道某个信息就在文档里,但系统就是没找到。有时候系统又会塞给 AI 一堆不相关的内容,反而干扰了回答的质量。你没法控制系统找什么、找多少,只能被动接受它给你的结果。
这些问题不是说 RAG 知识库不好用,而是说它有它的局限性。对于简单的问答场景,比如「我们公司的年假有几天」这种能直接从文档中找到答案的问题,RAG 知识库完全够用。但对于需要深入理解、综合分析的复杂场景,它就显得力不从心了。
Skill 知识库:让 AI 自己决定读什么
Skill 的 references 采用了一种完全不同的思路:不是系统帮你找,而是让 AI 自己找。
我们在 2 月 5 日的日课里详细讲过 references 目录的用法,你可以在 SKILL.md 中告诉 AI:「如果用户问的是亚马逊的问题,就去查 references/平台规则/亚马逊/ 目录」。你想想看,AI 是带着脑子去找资料的,它先理解用户的问题,然后根据 SKILL.md 的指引,自己决定应该看什么文件。
这个差别看起来很小,但影响很大。
第一,AI 能理解上下文,找得更准。同样是问「退货政策」,如果你们之前一直在聊亚马逊的订单问题,AI 自然知道该去查亚马逊的退货规则,而不会把淘宝、京东的内容也塞进来。AI 还能理解各种复杂的语义关联,因为它是在理解你的意图,而不是机械匹配文本片段。这种基于理解的查找,比自动检索精准得多。
第二,AI 能按逻辑顺序查阅。在 SKILL.md 中,你可以设计查阅的优先级和顺序。比如审核一份合同,你可以引导 AI:先查相关法律法规了解大原则,再查公司内部政策看具体要求,最后查历史案例做参考。这种有逻辑的查阅顺序,RAG 知识库是做不到的。
第三,知识的结构完整保留。你精心设计的文件夹层级就是知识的逻辑结构,AI 能完整地看到和理解。它知道「平台规则/亚马逊/」下面放的都是亚马逊相关的文件,「产品知识/蓝牙耳机/」下面是蓝牙耳机的资料。这种结构信息对 AI 理解和使用知识非常重要。