这桌菜,是一位朋友私信我点的。他原本只问我什么是 SKILL,但这堆概念(Agent、MCP、SKILL、RAG……)彼此咬合得很紧,单拎一个出来讲容易“盲人摸象”,索性一桌端上来。

大前提:区分模型和应用

很多人把“大模型”和“AI 整体”画等号,其实日常用的 AI 是分两层的:

  • 模型层(大脑):藏在服务器里负责思考的核心引擎。
  • 应用层:你看得见的界面(chatgpt.com、ChatGPT APP)+ 围绕大脑构建的各种辅助组件(也就是下文要讲的 RAG、Agent 等)。

直接上图:

  flowchart TD
    User((用户))

    subgraph App [应用层]
        UI[界面: 看得见的输入框]
        Agent["Agent 框架: 像 OpenClaw🦞、Claude Code、LangGraph 这类调度大厨, 负责拆任务、调资源"]
        RAG[RAG: 专属知识库补充]
        SKILL[SKILL: 用到再翻的工作手册]
        MCP[MCP: 对接外部工具与数据的标准接口]
    end

    subgraph Model [模型层 - 核心引擎]
        LLM((大语言模型: 算力引擎))
    end

    User -- "1. 下达指令" --> UI
    UI --> Agent
    Agent -.调用.-> RAG
    Agent -.加载.-> SKILL
    Agent -.调用.-> MCP
    Agent <== "2. 多轮往返: 思考 → 调工具 → 看结果 → 再思考" ==> LLM
    Agent -- "3. 整合后呈现" --> User

你可以看到,标题里那些缩写全在应用层。Agent 和大模型之间也不是“问一句答一句”,而是会多轮反复往返——后面会再展开。

大脑的局限

大模型说到底是一个按概率猜下一个字的系统,它有三个先天短板:

  1. 记性差、爱瞎编:训练数据有截止日期,小众事实也记不牢。相当于让它做“闭卷考试”,不会就编。(更详细的吐槽在 怎么堵住 AI 胡说八道的嘴
  2. 够不到外部世界:被关在服务器里,没法发邮件、查实时网页、读你电脑的文件——只能“说”,不能“做”。
  3. 单次调用没循环:哪怕是会“深度思考”的推理模型,一次调用也只是在脑子里推演。要真正“做事”,得有个外部循环:想 → 调工具 → 看结果 → 再想,反复直到搞定。

各种“补充包”就是来补这些洞的。

给大脑加装备:RAG、Agent、MCP 与 SKILL

先上图:

  flowchart LR
    Model((大语言模型))

    subgraph 补充包
        RAG(补充包 1: RAG)
        Agent(补充包 2: Agent)
        MCP(补充包 3: MCP)
        SKILL(补充包 4: SKILL)
    end

    Model -->|缺陷: 记性差/爱瞎编| RAG
    Model -->|缺陷: 够不到外部世界| Agent
    Model -->|缺陷: 工具接入方式五花八门| MCP
    Model -->|缺陷: 上下文窗口塞不下所有知识| SKILL

    RAG -.->|外挂资料库| E[让 AI 开卷考试]
    Agent -.->|加上执行循环| F[让 AI 真正做事]
    MCP -.->|统一的工具接口标准| G[让所有系统都能被 AI 调用]
    SKILL -.->|用到再翻的工作手册| H[让 AI 在需要时再拿出对应工作流]

这些补充包分工不同、层级也不同,逐个拆开看:

1. RAG(检索增强生成)

RAG 解决**“瞎编”问题。做法很直接:把你的资料(公司制度、产品手册)预先建好索引;用户提问时,系统先检索出最相关的几段,连同问题一起塞给模型,让它基于这些资料回答**而不是凭记忆瞎猜——也就是把“闭卷考试”变成“开卷考试”。

常听到的“向量数据库”只是一种实现,工业界更常用的是混合检索(关键词 + 向量结合)。要提醒一句:RAG 能显著降低事实性幻觉,但不是万能药,模型仍可能曲解或忽略检索到的材料。

2. Agent(智能体)

Agent 给模型套上一个外部执行循环。你丢给它一个目标——“帮我策划上海三日游”,Agent 就反复让模型规划下一步、调工具(查天气、订奶茶)、看结果、再规划,直到目标达成。让 AI 从“只能说”变成“能动手”。

主流 Agent 大致分两类:

  • 面向普通用户的产品:开箱即用、聊天工具就能调遣。本文标题里那只“大龙虾”就是代表 OpenClaw 🦞——跑在自己电脑上的开源个人 AI 助理,可从 WhatsApp / Telegram / iMessage 派活,帮你处理邮件、查日程、操作浏览器。
  • 面向开发者的框架/产品:LangGraph、AutoGen、CrewAI、OpenAI Agents SDK,以及大家熟悉的 Claude Code、Cursor、Devin 等。

3. MCP —— 让所有工具用同一种语言对话

Agent 想查天气、订奶茶、读你电脑里的文件,靠的是各种工具。但每家服务接口风格都不一样:天气 API 一套参数、外卖平台另一套、本地文件又是一套……每个 Agent 都为每个服务单独适配,就是 M×N 的爆炸。

MCP(Model Context Protocol,模型上下文协议) 由 Anthropic 在 2024 年提出,是一套开放的客户端-服务器协议,让所有工具用统一方式把能力暴露给 AI:工具方实现一个 MCP Server(本地、远程都行),Agent 内置一个 MCP Client 自动识别调用。集成成本从 M×N 降到 M+N,生态才跑得起来。

举个直观例子:以前你的本地文件夹和公司数据库,AI 根本摸不到。现在只要这些系统提供 MCP Server,Agent 就能直接读取。

4. SKILL —— AI 的“按需查阅手册”

SKILL 是 Anthropic 在 2025 年推出的概念(Claude 里叫 Agent Skills),解决的是另一个现实问题:上下文窗口有限

想让 AI 既会查资料、又会做 PPT、又能调十几个内部系统……一股脑全塞进 system prompt,几万字下去窗口就满了,模型也抓不住重点。

SKILL 的做法叫 渐进式加载(progressive disclosure):每个 Skill 是一个文件夹(一份 SKILL.md 加若干脚本/模板)。模型平时只看到名字和一句话简介(很省 token),判断"这事儿跟某个 Skill 相关"时才把详细内容加载进上下文,用完即"合上"。

你可以把 SKILL 想成给 AI 准备的一摞分门别类的工作手册——不是一上来全摊桌上,而是用哪本翻哪本。Skill 内部可以调 MCP 工具、执行本地脚本,所以它和 MCP 不在同一层级:MCP 管"工具怎么接进来",SKILL 管"知识和工作流怎么按需注入"。

  flowchart LR
    Agent((Agent 执行框架))

    subgraph 知识与工作流层
        SKILL[SKILL: 工作手册<br/>按需加载]
    end

    subgraph 工具与数据层
        MCP[MCP: 标准化接口<br/>本地或远程的 Server]
        Builtin[内置工具<br/>联网搜索/代码执行等]
    end

    SKILL -. 在需要时进入上下文 .-> Agent
    Agent -- 通过统一协议调用 --> MCP
    Agent -- 直接调用 --> Builtin
    SKILL -. 可引用 .-> MCP

结语

剥开术语外衣,这些“新名词”的目标都一致:补大模型的缺陷,让它真正能干活

看到这种需求找它
引用私有资料RAG
自动完成连环任务Agent
接进新的工具或数据源MCP
按需调用某套专业工作流SKILL

它们不是互相替代的关系,而是会在一个真实 AI 应用里各司其职