Skip to content
🔗 分享本题
查看我的学习进度 →
💡 答案要点

一句话本质:

RAG 解决"模型不知道的知识"(知识供给),Skill 解决"模型做不好的流程/动作"(行为供给)。两者不是替代关系,是两种不同的能力注入方式。

RAG 管知识: 把外部文档(手册、条款、案例)切分、向量化后挂到模型上下文里,回答依赖"检索到的内容"。

Skill 管流程: 把一套可复用的 SOP/操作步骤封装成能力单元,Agent 按需调用,回答依赖"按流程执行的结果"(查 API、算价格、走审批)。

核心对比表:

维度RAG(知识)Skill(流程)
注入内容事实/文档/数据动作/步骤/规则
依赖形态向量库 + 检索代码/函数 + 参数协议
更新方式重新清洗、切分、入库、评测改代码、发版本、灰度
建设周期长:洗数据(解析→清洗→切分→评测→回流)短:封装即用
确定性低:检索可能不中、答案可能幻觉高:执行结果可预期、可断言
复用性弱:换领域要重新洗数据强:SOP 可跨业务复用
典型场景知识问答、客服答疑、合同条款查询下单、审批流、报表生成、多步操作

为什么"RAG 长线强但洗数据周期长":

RAG 上线的真实时间线:
原始文档 → 格式归一 → 解析(PDF/扫描件/表格)→ 清洗去噪
→ 切分策略调优 → Embedding 选型 → 入库 → 检索评测 → 线上回流

痛点:
- 文档质量参差,扫描件/图片表格解析失败率高
- 切分策略试错成本高,改一次切分要重跑全量评测
- 知识更新慢:文档改了,向量库里还是旧版本

Skill 的对比优势:
- 流程逻辑写死在代码里,改一行上线即生效
- 有明确的输入输出契约,可以写单测、可以 mock

选型决策树:

问题需要"事实"吗?
├─ 是,且事实来自文档/知识库 → RAG(或 RAG + 混合检索)
├─ 是,但事实是结构化数据(订单/库存/余额)→ 直接查库/SQL 工具,别硬套 RAG
└─ 否,问题需要"执行一套动作"(SOP/流程)→ Skill 封装

混合场景(最常见):
客服场景 = 意图识别(Skill 编排)→ 查知识库(RAG)→ 查订单(SQL 工具)→ 生成回复

两个面试官爱追问的坑:

  1. "RAG 和向量数据库不是一回事":RAG 是检索增强方案,向量库只是其中一种存储;结构化数据走 SQL、走 ES 倒排,都比硬塞向量库强。
  2. "别把流程写进 RAG 文档里":把 SOP 写成文档丢进 RAG,等于让模型"读文档猜流程",确定性全无;流程就该是 Skill(代码),文档只负责提供事实。

面试话术:

"RAG 和 Skill 是两种不同的能力注入:RAG 注入知识,解决'模型不知道';Skill 注入流程,解决'模型做不好'。RAG 长线价值高,知识会越积累越厚,但洗数据周期长,文档解析、切分、评测每一环都是坑;Skill 上线快、确定性强、可复用,适合把 SOP 封装成标准能力。我的选型原则是:事实靠 RAG,流程靠 Skill,结构化数据直接查库。客服这种混合场景就是 Skill 编排 + RAG 喂知识 + SQL 查数据,各司其职。"