一张图理清LLM、Agent、Skills与MCP的关系

作者:菠萝爱吃肉2026.11.04 12:35浏览量:0

简介:本文从定义出发,系统讲解大语言模型、智能体、技能与模型上下文协议四个易混淆概念。读者将理解它们各自解决什么问题、如何协同工作、典型应用场景及选型注意事项,不再停留在死记术语层面。

一、概念定义:四个术语分别是什么

在人工智能应用开发中,LLM、Agent、Skills、MCP 这四个词频繁出现,但它们并不处于同一个层级。要真正理解它们,需要先明确各自的技术定位。

LLM(大语言模型) 是一种基于大规模语料训练得到的神经网络模型,核心能力是根据输入文本预测并生成合理的后续文本。它可以完成摘要、翻译、问答、代码生成等任务,但本身不具备主动调用外部工具、访问实时数据或执行复杂多步骤任务的能力。可以把 LLM 理解为“大脑”或“语言引擎”,它负责理解与生成,但不负责行动。

Agent(智能体) 是建立在 LLM 之上的应用层概念。它把 LLM 的推理能力与外部工具、环境反馈、任务规划结合起来,使系统能够自主地完成一个目标。Agent 通常包含感知、规划、执行、记忆等模块。一个完整的 Agent 会根据用户目标进行任务拆解,决定何时调用什么工具,观察结果并继续推理,直到任务完成或判定失败。

Skills(技能) 是 Agent 可调用的能力单元。一个技能通常封装了特定领域的操作逻辑,例如“查询天气”“发送邮件”“读取数据库”“生成周报”等。技能可以是函数、API 调用、脚本或一组提示词。Skill 的价值在于把通用模型与具体业务能力解耦,让 Agent 不必理解每个业务细节,只需知道“什么时候调用哪个技能”。

MCP(模型上下文协议) 是一种用于连接模型与外部工具、数据源的标准化通信协议。它的目标是解决“模型如何高效、统一地获取上下文和调用工具”的问题。通过 MCP,不同的 Skills 和工具可以以一致的方式注册、发现、描述和调用,从而降低 Agent 与外部系统集成的复杂度。MCP 并不替代 Agent 或 Skills,而是为它们之间的交互提供规范。

从层级上看:LLM 提供语言理解与推理基础;Agent 负责任务规划与执行控制;Skills 提供具体可执行能力;MCP 则是连接这些能力的通信规范。四者配合,才能构建出真正可用的智能应用系统。

二、背景与价值:为什么需要这套体系

早期使用 LLM 的方式是直接对话。用户输入一段提示词,模型返回一段文本。这种方式在信息查询、文案生成等场景中有效,但面对“帮我查一下昨天生产环境的错误日志并整理成报告”这类需求时,单纯对话式 LLM 无法完成。原因有三点:

第一,LLM 无法访问实时数据。它的知识来自训练语料,无法直接读取数据库、调用接口或查询日志系统。

第二,LLM 不擅长精确执行。它生成的是概率性文本,对于需要精确参数、严格流程的操作容易出错。

第三,任务往往涉及多步骤。完整业务流程需要拆解、判断、调用、验证等多个环节,单一模型推理无法可靠完成。

Agent 的出现正是为了弥补这些不足。Agent 通过连接工具和外部环境,使模型具备“行动能力”。然而,Agent 在实践中又面临新问题:每个工具接口格式不同、认证方式不同、返回结构不同。为了接入一个新工具,开发者往往需要编写大量适配代码。

Skills 的抽象解决了“能力复用”问题。把常用操作封装为标准化技能后,Agent 只需关心技能的名称、描述和输入输出,不必关心内部实现。这显著提升了开发效率和可维护性。

MCP 则进一步解决“连接标准化”问题。在没有统一协议时,不同 Agent 框架与不同工具之间的对接是点对点的。每增加一个工具,都要做一次定制集成。有了标准协议后,工具可以按协议暴露能力,Agent 按协议发现和调用,集成成本大幅降低。

因此,这套体系的本质价值在于:把“语言能力”“任务规划”“具体能力”“通信规范”四个关注点分离,让每一层都可以独立演进和替换,最终降低智能应用的开发复杂度。

三、核心组成:每个概念的关键模块

理解四个概念,还需要拆解它们各自的内部结构。

LLM 的核心组成:

  • 模型本体:经过预训练和微调的神经网络;
  • 提示词接口:接收输入并生成输出的文本通道;
  • 上下文窗口:模型一次能处理的最大 token 数量;
  • 推理能力:理解指令、进行逻辑推导和生成回答。

Agent 的核心组成:

  • 规划器:负责将大目标拆解为子任务;
  • 记忆模块:保存对话历史、中间结果和长期知识;
  • 工具调用器:根据任务需求选择并调用技能;
  • 执行循环:不断执行“观察—思考—行动”直到任务完成;
  • 安全策略:限制不当操作,防止越权调用。

Skills 的核心组成:

  • 名称与描述:供 Agent 理解何时使用该技能;
  • 输入参数定义:声明所需参数及类型;
  • 执行逻辑:具体的业务实现;
  • 输出格式:返回结果的结构说明;
  • 权限声明:该技能需要哪些访问权限。

MCP 的核心组成:

  • 工具注册机制:让外部能力可以被发现;
  • 工具描述规范:统一描述工具的功能、参数和返回;
  • 调用协议:定义请求和响应的标准格式;
  • 上下文传递机制:支持在调用过程中传递必要上下文;
  • 安全认证层:处理访问令牌和权限控制。

这些模块协同工作,形成一个从“语言理解”到“行动执行”的完整链条。

四、工作原理:一次任务是如何完成的

下面通过一个通用示例说明整个体系的工作流程。假设用户向一个智能运维 Agent 发出指令:“查一下今天数据库备份是否成功,如果失败就重新触发一次。”

第一步,LLM 接收用户输入,理解意图:查询备份状态,失败时触发重试。

第二步,Agent 的规划器将任务拆解为两个子任务:查询备份状态;根据状态决定是否执行重试。

第三步,Agent 查看可用 Skills 列表。它发现存在“查询备份状态”和“触发备份重试”两个技能。这些技能通过 MCP 注册,带有标准化的描述和参数定义。

第四步,Agent 通过 MCP 调用“查询备份状态”技能。该技能内部连接数据库管理接口,返回备份结果。

第五步,LLM 分析返回结果。假设结果显示“失败”。Agent 根据预先定义的策略判断需要执行重试。

第六步,Agent 再次通过 MCP 调用“触发备份重试”技能,并返回执行结果。

第七步,LLM 将整个执行过程整理为自然语言报告,输出给用户。

整个过程中,LLM 负责理解与总结,Agent 负责决策与控制,Skills 负责具体执行,MCP 负责标准化通信。四者各司其职,又紧密配合。

五、典型场景:分别适合用在哪里

直接使用 LLM 的场景:

  • 文案撰写、内容摘要、翻译;
  • 代码片段生成与解释;
  • 知识问答和概念梳理;
  • 需要语言理解和生成的轻量应用。

使用 Agent 的场景:

  • 智能运维助手:自动巡检、故障排查、报告生成;
  • 数据分析助手:根据业务问题自动查询数据、生成图表和结论;
  • 办公自动化:跨系统处理审批、邮件、日程等;
  • 客服机器人:多轮对话中查询订单、执行退款等操作。

使用 Skills 的场景:

  • 企业内部能力沉淀:将常用的 API 调用、脚本操作封装为技能供多个 Agent 复用;
  • 第三方能力集成:将外部服务包装为统一技能接口;
  • 业务流程自动化:把固定流程的每一步封装为独立技能,由 Agent 按需组合。

使用 MCP 的场景:

  • 多工具环境:当一个 Agent 需要接入大量异构工具时,MCP 可以降低适配成本;
  • 团队协作开发:不同团队开发的工具通过统一协议共享;
  • 跨平台互操作:不同框架和平台之间通过标准协议实现工具互用。

六、相关概念区别:如何避免混淆

LLM 与 Agent 的区别:
LLM 是被动的语言引擎,Agent 是主动的任务执行系统。Agent 使用 LLM,但 LLM 不等于 Agent。一个 LLM 输出“建议查询数据库”的文本不是行动,而 Agent 真正调用了数据库接口才是行动。

Agent 与 Skills 的区别:
Agent 是决策者,Skills 是执行者。Agent 决定做什么,Skills 负责怎么做。一个 Agent 可以调用多个 Skills,一个 Skill 也可以被多个 Agent 复用。

Skills 与普通 API 的区别:
普通 API 只是技术接口,Skills 包含了对能力的语义描述、参数声明和使用约束。Skills 是面向模型的能力封装,让模型能够理解“何时用、怎么用”。

MCP 与 API 网关的区别:
API 网关解决的是流量路由和治理问题,MCP 解决的是模型与工具之间的语义通信问题。MCP 不仅定义调用格式,还定义工具如何向模型描述自己。

七、使用注意事项

在实际开发中,需要注意以下几个问题:

安全边界。 Agent 调用外部工具时可能产生不可逆操作。必须对技能设置权限边界,对高风险操作引入人工确认机制。不要给 Agent 授予超出业务需要的权限。

上下文管理。 LLM 的上下文窗口有限。Skills 返回的数据可能很大,需要进行摘要或过滤后再送入模型,避免窗口溢出。

错误处理。 工具调用可能失败、超时或返回异常结构。Agent 需要具备重试、降级和异常上报机制。

工具描述质量。 Skills 的名称和描述直接影响模型选择工具的准确性。描述不清晰时,模型可能调用错误的技能。

协议兼容性。 如果采用 MCP 进行标准化,需要关注协议的版本演进和兼容策略,避免因协议升级导致已有技能失效。

性能与成本。 多步骤 Agent 任务会消耗大量 token。需要在规划器层面控制步骤数量,避免不必要的反复调用。

八、总结

LLM、Agent、Skills、MCP 是智能应用开发中四个不同层面的概念。LLM 提供语言理解和生成能力,Agent 负责任务规划与执行控制,Skills 封装可复用的具体能力,MCP 则提供标准化的连接与通信方式。它们之间的关系不是替代,而是分层协作。理解这四者的区别与联系,是从“会用模型”走向“会构建智能系统”的关键一步。