从用户提问到智能回复,LLM、RAG、Agent与MCP的工程化串联逻辑
本文以电商客服场景为线索,系统梳理大语言模型(LLM)落地中关键组件的协作关系:RAG 提供外部知识检索,Agent 负责任务拆解与工具调用,MCP 实现工具协议统一。重点解析五层架构分工及 Java...
当一名用户在电商平台提问“我的订单为什么还没发货”,背后可能触发一套由 LLM、RAG、Agent 和 MCP 共同支撑的智能响应流程。这不是单点技术的堆砌,而是一套层层递进、职责清晰的工程体系。理解这套体系,已成为后端工程师参与 AI 应用落地的基本能力。
五层架构:从模型到治理的完整链条
根据实际项目经验,一个可落地的 AI 应用通常可划分为五层结构(见图1),自下而上依次为:
① 模型层:包括 LLM 基座模型、多模态模型、微调蒸馏后的轻量化模型以及推理服务。这是系统的“大脑”,但对工程侧而言,更多是作为黑盒 API 调用对象。
② 上下文层:负责将原始请求转化为模型可理解的输入。核心环节包括 Token 处理与 Prompt 构建、向量库/ANN 索引检索、Embedding 向量化及余弦相似度计算。此处的向量检索质量直接决定 RAG 效果上限。
③ 能力层:集成多种增强能力模块,如 RAG 检索、MCP 协议接入、Memory 记忆管理、Tool/Function Calling。该层是连接模型与业务逻辑的关键枢纽。
④ 编排层:定义 Agent 的行为逻辑,典型实现为 ReAct 循环(Reason-Act)、任务规划或状态机驱动的多智能体协同。Skills(技能集)在此层以“岗位手册”形式存在,按需加载而非硬编码进 System Prompt。
⑤ 工程治理层:涵盖鉴权、限流熔断、多租户隔离、灰度发布、可观测性与成本计量。这是保障系统稳定运行的“安全网”,也是 Java 工程师最擅长的领域。
这一分层设计明确了各角色的边界:算法团队聚焦模型与 Embedding,而工程团队负责构建可靠、可维护、可扩展的服务框架。这也是为何企业更倾向招聘有后端背景的工程师来推进 AI 产品落地——他们擅长把不确定的模型能力封装进确定的工程系统。
RAG 与 Agent:谁才是瓶颈?
在多数场景中,RAG 的性能瓶颈往往不在 LLM 生成环节,而在检索阶段。例如,在电商客服系统中,若分块策略不当(如将整页商品详情切为一块),或 Embedding 模型未针对领域语料微调,会导致召回结果偏离用户意图。实测表明,优化检索质量带来的效果提升远高于更换更强的 LLM。
与此同时,Agent 并非简单地“让模型调用工具”,而是需要一套闭环决策机制。典型的 ReAct 模式包含四道防护:
- 输入合法性校验(防注入)
- 工具参数格式校验
- 执行结果可信度评估
- 循环终止条件判断(避免无限重试)
实践中发现,工具集数量并非越多越好。初期常集成 20+ 个工具接口,但最终收敛至 5~8 个高频、高确定性工具,反而显著提升成功率与响应稳定性。
MCP:统一工具接入的“USB-C 插座”
MCP(Model Communication Protocol)是近年兴起的标准化工具接入协议,其核心价值在于解耦模型与工具实现。类比为“USB-C 插座”,任何符合 MCP 规范的服务均可即插即用。
在 Java 生态中,可通过 spring-ai-starter-mcp-server-* 快速搭建 MCP Server。但需注意一个致命细节:MCP 的 HTTP 端点默认无鉴权机制,若直接暴露在公网,等同于将内部服务裸奔。生产环境必须叠加 OAuth2 或 JWT 鉴权层。
图2展示了一个典型请求链路:用户输入经 NLP 预处理后,进入 Embedding 服务生成向量;通过 ANN 索引在向量库中召回 TopK 文档;结合原始问题构造 Prompt,交由 LLM 生成初步响应;若需外部数据(如查订单状态),则触发 Tool Calling,经 MCP 协议路由至对应服务;最终整合结果流式返回给用户。
该流程看似线性,实则隐含大量工程细节:
- 向量存储建议使用 float 类型,累加时用 double 防精度损失;
- 零向量需短路处理,避免余弦相似度计算产生 NaN;
- 余弦相似度归一化后等价于内积,但排序等价不等于阈值通用——不同场景需独立调参;
- RRF(Reciprocal Rank Fusion)等融合策略可提升多路召回的鲁棒性;
- Skills 文件应采用渐进式披露机制,避免一次性塞入过长 Prompt 导致截断。
工程师的角色转变:从 API 调用者到系统架构者
过去,后端工程师的主要工作是对接第三方 API;如今,在 AI 应用中,他们需深度参与系统设计:
- 设计向量分块策略与元数据结构;
- 实现带熔断的 Tool 调用客户端;
- 构建可回溯的 Agent 执行日志;
- 配置基于 token 成本的限流规则;
- 开发面向运维的可观测埋点(如每步耗时、检索命中率、工具调用成功率)。
这些工作不涉及模型训练,却决定了 AI 功能能否真正上线并持续可用。正如原文所言:“Java 工程师的价值,从来不在‘造发动机’,而在造整车、修高速、建加油站。”
结语
LLM、RAG、Agent 与 MCP 并非孤立术语,而是一个有机协作的技术栈。其落地难点不在概念理解,而在工程实现中的细节把控与系统权衡。对于希望切入 AI 领域的后端开发者而言,掌握这套串联逻辑,比死记硬背定义更具实战价值。当前企业级 AI 应用仍处于“拼装阶段”,谁能更快构建出稳定、可控、可运维的系统,谁就掌握了落地主动权。
