随着各类大模型频繁迭代,Claude、GPT、DeepSeek 等技术的升级让我们对 AI 的能力充满期待。但你是否真正理解如何用好它们?除了基础的对话,现代 AI 应用还涉及 User Prompt、System Prompt、Agent、Function Calling、MCP、RAG 以及上下文窗口等关键概念。
一、什么是所谓的 user prompt
最早的 GPT 其实只是个'高级点的聊天机器人'。你给它一句话(user prompt),它给你一句话回答。

它能聊天、能写文章、能解释代码,但不能真的帮你做事。比如你说:'帮我把 C 盘的 hello_world.cpp 移动到 D 盘,并总结内容',它最多告诉你'应该怎么做',但不会真的帮你操作文件。
这就引出了 —— AI Agent,让 AI 真正去执行任务。
二、user prompt 和 system prompt
在讲 Agent 之前,我们先把基础打牢。
1、user prompt(用户提示词)
就是你在对话框里输入的内容。
你好
早期 GPT 只有 user prompt。模型没有人格设定、没有角色设定,只是普通问答。
2、system prompt(系统提示词)
后来人们发现,可以给模型'设定人设'。比如:
你是一个傲娇的程序员,说话尽量傲娇,最好带 emoji。
这个提示不让用户看到,但每次请求都会和 user prompt 一起发给模型。于是模型有了性格、风格和行为约束。
本质上:
user prompt = 你说的话 system prompt = 模型的隐藏设定
三、AI Agent 是怎么让 AI 干活的?
现在进入核心。
1、AI 的问题
AI 本身只能输出文本,不能操作系统、读文件或访问数据库。所以它只能'动脑',不能'动手'。
2、Agent 的出现
AI Agent 本质上就是一段程序。它的作用是协调用户、AI 和工具之间的关系。
| 角色 | 职责 |
|---|---|
| AI | 思考和决策 |
| Agent | 协调和调度 |
| Tool | 实际执行 |
3、举个完整流程例子
用户说:'读取 C 盘 hello_world.cpp,移动到 D 盘,并总结内容'。
整个交互过程其实是一个闭环:Agent 先向 AI 展示可用工具列表,比如 read_file 或 move_file;AI 根据意图决定调用 read_file,Agent 随即执行并回传内容;接着 AI 规划 move_file,Agent 完成操作,最后由 AI 生成总结反馈给用户。
规划 → 执行 → 反馈 → 再规划 → 交付
四、Function Calling:工具调用的标准化革命
早期的 Agent 实现中,AI 往往需要'猜测'如何调用工具。比如天气查询工具 check_weather(city, date),AI 可能会直接返回'上海 明天',导致参数顺序错误或缺失字段。
于是就出现了 Function Calling。它把工具描述从 system prompt 中剥离,用 JSON 格式统一定义函数名、介绍和参数字段,规范 AI 调用工具的回复格式。
1、工具定义(标准 JSON)
{"name":"check_weather","parameters":{"type":"object","properties":{"city":{"type":"string"},"date":{"type":"string","format":"YYYY-MM-DD"}},"required":["city"]}}
2、AI 必须按格式调用
{"function_call":{"name":"check_weather","parameters":{"city":"上海","date":"2025-11-14"}}}
3、Function Calling 的好处
- 告别猜谜语:以前靠 System Prompt 用自然语言描述工具,AI 可能听不懂;现在用 JSON 格式,AI 一看就会。
- 降低开发难度:开发者不用自己写代码检测 AI 回复是否正确,若 AI 回复错误,服务端可检测并自动重试,降低 token 开销。
- 跨场景通用:无论是 ChatGPT 还是开源模型,只要支持 Function Calling,就能用同一套工具。
| 对比项 | System Prompt(传统方式) | Function Calling(标准化方式) |
|---|---|---|
| 工具描述 | 自然语言随意写 | JSON 格式强制规范 |
| 调用格式 | 等 AI 猜 | 固定 JSON 结构 |
| 错误处理 | 开发者自己写代码重试 | 大模型服务端自动重试 |
五、MCP:AI 世界的 USB-C
上文提到的 Agent 和 Tool 是怎么进行交互的?最简单的做法就是把 Agent 和 Tool 写在同一个程序里面,直接通过函数调用来完成。但其实有些工具的功能很通用,多个 Agent 都需要,总不能在每个 Agent 里面都拷贝一份相同的代码吧。
我们把 tool 变成服务,统一托管,让所有的 agent 都来调用,这就是 mcp server。MCP 是一个通信协议,专门用来规范 Agent 和 Tool 服务之间是怎么交互的。运行 tool 的服务叫做 MCP Server,调用它的 Agent 叫做 MCP Client。MCP 规定了 Server 如何和 Client 通信,以及有哪些接口。
MCP Server 既可以和 Agent 跑在同一台机器上,通过标准输入输出进行通信。也可以被部署在网络上,通过 HTTP 进行通信。虽然 MCP 是为了通用定制出来的标准,但实际上 MCP 本身却和 AI 模型没有关系,它并不关心 Agent 用的是哪个模型,只负责帮 Agent 托管工具、资源。
你可以把 MCP 想象成电脑的 USB-C 接口:各种外设(如键盘、U 盘、显示器)就是不同的 MCP Server,电脑就是 AI Agent。这样一来,无论你更换电脑还是外设,只要都支持 USB-C 标准,就能即插即用。
如果说 Function Calling 解决的是'怎么调用工具',那么 MCP 解决的是'工具怎么统一接入'。
1、所以说,什么是 MCP?
MCP = Model Control Protocol。它把工具变成一个服务(MCP Server)。Agent 不再直接调用工具,而是通过 MCP 协议访问。
2、完整流程示例
用户问:'女朋友肚子疼怎么办?'
- Agent 通过 MCP 获取可用工具(如网页搜索)
- 转换为 Function Calling 格式
- AI 选择 web_browse
- Agent 通过 MCP 调用搜索服务
- 返回结果
- AI 生成建议
六、大模型的上下文窗口
很多人忽略这个概念,但它非常关键。
什么是上下文窗口?
就是模型一次对话能记住多少内容。你可以把它想象成一块黑板:黑板大能写很多,黑板小写几行就满。当写满时,模型会'擦掉最前面的内容'。这就是为什么对话太长会'失忆',输入太大成本会上升,回答会变慢。
七、RAG:检索增强生成
最后讲一个企业级必备技术 —— RAG(Retrieval-Augmented Generation)。简单说就是:先查资料,再生成回答。
为什么不直接把资料丢给模型?
直接将大量资料喂给模型存在上下文窗口限制、推理成本高、响应慢以及容易产生幻觉等问题。
RAG 怎么做?
- 用户提问
- 向知识库检索相关片段
- 只把相关内容发给模型
- 模型基于检索结果回答
比如用户问产品维修政策,RAG 不会发 200 页手册,而是精准找 3 段相关内容送给模型,生成答案。优点包括成本低、更准确、更快且可扩展。
八、整套体系串起来是什么样?
我们把今天讲的全部串起来:
用户 ↓ Agent ↓(MCP 获取工具)工具列表 ↓(Function Calling 格式)AI 模型 ↓ 调用工具 ↓ RAG 检索知识 ↓ 生成答案 ↓ 返回用户
九、最终总结
| 名词 | 作用 |
|---|---|
| user prompt | 用户输入 |
| system prompt | 模型隐藏设定 |
| Agent | 调度协调 |
| Tool | 实际执行 |
| Function Calling | 标准化工具调用 |
| MCP | 工具接入协议 |
| 上下文窗口 | 模型记忆容量 |
| RAG | 检索增强生成 |
AI 正在从'会聊天'进化为'能做事'。这背后不是一个技术,而是一整套体系:Agent 负责调度,Function Calling 负责规范调用,MCP 负责统一接入,RAG 负责精准知识增强。理解了这些,你基本就理解了当前 AI 应用的核心架构。


