去年这个时候,我花了两周时间,用当时最火的RAG框架给公司搭了一个“智能问答机器人”。

上线那天,我信心满满地拿着公司刚发的《员工手册》去问它:“如果我想请病假,但手上没医院假条,怎么办?”

它沉默了三秒,然后给我回了整整八百字——从病假定义讲到劳动法,从考勤制度聊到企业文化,洋洋洒洒,就是没告诉我“没假条该怎么办”。

更讽刺的是,答案的最后一行写着:“以上信息仅供参考,具体情况请咨询HR。”

那一刻我突然明白:传统RAG根本不是在“理解”我的问题,它只是在玩一场高级的“搜索+填空”游戏。 如果搜到的内容里没有现成答案,它就给你来一段漂亮的废话文学。

这个问题困扰了我整整一年,直到最近Anthropic开源的Agent Skills框架火起来,我才意识到:我们一直用错了工具。

今天这篇文章,我就想和你聊聊:用Agent Skills做知识库检索,到底能不能比传统RAG效果更好?

一、传统RAG的“死穴”:它只是个勤奋的傻子

先别急着反驳我。我知道RAG很牛——它解决了大模型“知识过时”和“幻觉”的问题,让企业私有数据终于派上了用场。

但如果你真的在生产环境里跑过RAG,你一定遇到过这些让人抓狂的瞬间:

1. 检索一错,满盘皆输

传统RAG的逻辑很简单:“检索→生成”,一条道走到黑。

这意味着什么?意味着如果第一步检索到的文档不相关,或者漏掉了关键信息,LLM没有任何补救机会。它就像流水线上的工人,不管送过来的是零件还是垃圾,都得把它装上去。

结果就是:你问“病假没假条怎么办”,它搜到的是“病假定义”,于是开始背定义。你问“马斯克收购Twitter那年美国通胀率是多少”,它搜到的是“马斯克收购Twitter”和“2022年通胀率”两个孤立的碎片,但永远没法把它们串起来——“哦,原来是要先查收购年份,再查那年的通胀率”。

这种需要两步推理的问题,对传统RAG来说就像高数对文科生——不是不能做,是压根没这个能力。

2. 上下文“中间迷失”

为了提高召回率,我们习惯把Top-10甚至Top-20的文档块全塞进Prompt里。

然后问题来了:当相关信息被淹没在长篇大论中间时,LLM的注意力机制会自动忽略它。研究早就证明过这个现象——“Lost in the Middle”。

这就陷入了一个死循环:检索得少不够用,检索得多记不住。

3. 静态策略配不上动态问题

传统RAG还有一个要命的毛病:不分轻重缓急,一律平等对待

你问“今天天气怎么样”这种简单问题,它也要走一遍检索流程,白白增加延迟;你问“请分析2024年半导体行业趋势”这种复杂问题,它还是走同样的流程,结果回答肤浅得像中学生作文。

这就像用同一把螺丝刀去修手机和拆核弹——不是不行,是压根不合适。

二、Agent Skills RAG:从“流水线”到“研究员”

说了这么多传统RAG的槽点,那Agent Skills到底强在哪?

我用一个比喻你就懂了:

  • 传统RAG 像开卷考试的学生——翻到哪页抄哪页,抄不到就瞎编

  • Agent Skills RAG 像专业研究员——先拆解问题,制定计划,用不同工具找信息,不满意就反思重试,直到收集够证据才写报告

这个区别,本质上是从 “静态流水线”到“动态认知循环” 的跃迁。

2.1 它的“大脑”长什么样?

Agent Skills RAG的核心是一个编排层(The Brain),它不是线性的代码逻辑,而是基于LLM的动态推理系统。这个“大脑”里住着三个角色:

Planner(规划器):负责谋定而后动。接到“分析A公司和B公司过去三年财报差异”这种复杂问题,它会拆解成子任务:①检索A财报 → ②检索B财报 → ③调用代码工具计算差异 → ④生成分析报告。

Router(路由器):负责专业对口。遇到“2023年销售额”这种数据问题,路由给SQL技能;遇到“产品原理”这种文本问题,路由给向量检索技能。

Reflector(反思/批评家):这是Agentic RAG的灵魂。它会检查检索到的文档到底有没有回答问题。如果发现结果相关性低,它会触发重试机制,改写关键词重新检索,而不是强行生成废话。

你发现没有?这个架构里,Agent拥有了 “拒绝回答”和“重新查找”的权利。这在传统RAG里是想都不敢想的。

2.2 Skills:它不再只有一把锤子

传统RAG只有一把锤子——向量检索。看什么都像钉子。

而Agent Skills RAG拥有一个工具箱(Skills),里面装着各种封装好的能力:

Skill类型

具体功能

适用场景

基础检索

向量检索、关键词检索

通用文档查询

高级检索

知识图谱、联网搜索

复杂关系、实时信息

逻辑计算

Python解释器、SQL执行

数学计算、数据聚合

操作类

发送邮件、调用API

触发业务流程

更重要的是,Skills之间可以相互通信、串联执行。比如你需要“搜索资料→生成PPT→发邮件给团队”,这一整套流程可以封装成一个复合Skill,下次一键调用。

三、一个实战案例:看看它到底有多聪明

理论说了这么多,我们来看一个真实场景。

假设你的知识库里有一堆产品文档,现在用户问:“我们产品的定价策略是什么?和竞品相比有什么优势?”

传统RAG的表现: 它搜索“定价策略”,召回几段相关文字;再搜索“竞品优势”,召回另外几段。然后一股脑塞给LLM,生成一个拼凑出来的答案。如果这两类信息不在同一个文档块里,它永远没法建立关联——“定价策略”和“竞品优势”明明是一个问题的两面,在它眼里却是孤立的碎片。

Agent Skills RAG的表现

  • Planner先拆解:这个问题需要“定价策略”+“竞品对比”两类信息

  • Router分别调用:一个Skill去检索定价文档,另一个Skill去检索竞品分析文档

  • 中间结果回来后,Reflector检查:信息够不够?有没有冲突?

  • 不够?那就反思重试——把“竞品优势”换成“与A公司对比”再搜一次

  • 够了?那就合成答案,而且确保逻辑自洽

这个过程的每一步,你都可以在日志里看到:Agent在想什么、在查什么、为什么决定再查一次。这种透明度和可控性,传统RAG给不了你。

四、效果对比:数据不会骗人

我知道,说到这儿你可能还是半信半疑:“听起来挺美,但实际效果到底怎么样?”

根据IRJET 2025年发表的研究成果,在处理复杂知识密集型任务时,Agentic系统相比传统RAG有质的飞跃:

  • 内容相关性提升36.8%

  • 内容深度提升33.4%

  • 用户满意度提升41.5%

当然,代价也是有的——响应延迟从1-2秒增加到3-5秒,Token消耗也更高。这就是“深度思考”的代价。

所以我的建议是:不要神话Agent Skills,也别一棍子打死传统RAG

如果你的场景是:

  • 简单的FAQ问答

  • 对延迟敏感

  • 问题类型单一固定

传统RAG完全够用,性价比更高。

但如果你的场景是:

  • 复杂知识推理(需要多步逻辑)

  • 多源信息整合(需要跨文档关联)

  • 动态变化的知识库(需要实时调整检索策略)

  • 需要可解释性(想知道答案是怎么来的)

那Agent Skills RAG就是你的菜。

五、动手试试:怎么搭建一个Agent Skills检索系统?

光说不练假把式。最后给你一个快速上手的路径。

Step 1:理解Skill的文件结构

一个标准的Skill其实就是一个文件夹,里面包含:

your-skill-name/
├── SKILL.md          # 必需:指令 + 元数据
├── scripts/          # 可选:可执行代码
├── references/       # 可选:文档
└── assets/           # 可选:模板、资源

SKILL.md是核心,它告诉Agent这个Skill什么时候该用、怎么用。举个栗子:

---
name: pdf-processing
description: Extracts text from PDF files using PyPDF2.
---

## When to use this skill
Use this skill when a user needs to extract text from a PDF file.

## How to Use this Skill
This skill provides the `extract_text()` function...

Step 2:用现成的框架

如果你不想从零造轮子,可以直接用支持Skills的框架:

  • Claude Code:Anthropic官方工具,开箱即用

  • OpenClaw:国内社区很活跃,百度还上了七款官方Skills

  • DeepLearning.AI的课程:有完整的Research Agent实战

Step 3:设计你的第一个检索Skill

以“产品知识库检索”为例,你可以设计这样一个流程:

  1. 意图解析:判断用户是想查价格、比参数,还是找案例

  2. 多路检索:根据意图选择不同的检索策略(向量、关键词、知识图谱)

  3. 结果重排:用reranker精筛Top结果

  4. 合成答案:按固定模板输出,保证格式一致

所有这些逻辑,都可以封装在一个Skill里,下次直接说“帮我查一下X产品”,Agent就知道该调用哪个流程。

写在最后:工具在进化,思维也要跟上

写这篇文章的时候,我翻出去年那个“智能问答机器人”的代码看了看。那时候的我,满脑子想的都是“怎么把检索做得更准”“怎么把Prompt写得更好”。

现在我明白了:检索再准,也解决不了“不会思考”的问题。

传统RAG像是给了AI一双好眼睛,让它能看清书上的字;而Agent Skills给了AI一个会思考的大脑,让它知道该看什么书、怎么看、看完怎么用。

Anthropic开源Skills知识库的时候,官方的描述我很喜欢:“Skills是专业知识的封装与传递机制”。通过Skills,AI可以继承团队的隐性经验、遵循行业的最佳实践。

最后,回答标题的问题:用Agent Skills做知识库检索,能比传统RAG效果更好吗?

我的答案是:如果你的问题足够简单,传统RAG够了;如果你的问题需要“思考”,那Agent Skills不止是“更好”,而是“唯一的选择”。

毕竟,我们想要的不是一个会背书的AI,而是一个真正懂行的助手。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐