AI 应用 · 名词与原理

大模型是怎么从只会聊天,
变成工作助手的?

问今天天气,它有时会编;问你电脑里有没有某份文件,它更不可能知道。后来它又能查天气、读文件了——可为什么还是「记不住」上周聊过什么?

向下滑动
第一步 · 基石

LLM:一个只会续写的脑子

1 大语言模型是整座塔的底座

LLM(Large Language Model,大语言模型)做的事很单一:看到一串文字,预测「后面最可能接着什么」。聊天、写代码、做摘要,底层都是这件事。它是后面所有能力的基石,但基石不等于整栋楼。

2 没有手,也没有今天的新闻

训练结束后,模型参数就冻住了。它不知道此刻上海下不下雨,也看不见你硬盘里的文件。你若硬问,它往往仍会「答」——那是在续写一个听起来像答案的句子,不是去查了。这种编造,常叫幻觉

聊天

你问一句,它答一句就停
不会自己去查天气、读文件

Agent

盯着目标循环:想 → 动手 → 再看结果
直到办完。下面各层都是在给它补零件

先记住:Agent 不是另一种更聪明的模型,而是「让同一个脑子循环办事」。LLM 仍是脑子——没有手,也没有硬盘。后面每一层,都是在给它补桌面、说明书、手和作业流程。
第二步 · 它咬的不是「字」

Token:模型真正吞下去的碎片

1 Token 更像碎片,不一定是一个词

Token(词元)是模型读写文字的最小计费与计长单位。英文一个词可能被切成几片,中文一个字常常对应 1~2 个 Token。所以「它读了多少字」和「它吃了多少 Token」不是一回事。

比如这句话,对人是 7 个字;对模型更像若干碎片(切法随分词器而变,用来建立直觉即可):

「上海今天的天气」≈ 几个 Token,不是「7 个字 = 7 个 Token」。

2 窗口和账单都按它算

一次能塞进模型的内容有上限,这个上限按 Token 计,不按页数计。工具返回的一长段天气 JSON、你贴进去的整份日志,都会占额度。额度用满,更早的内容就要被丢掉或压成摘要。

8K

上下文窗口约一篇长文

128K

上下文窗口约一本书的量级

1M

上下文窗口约能塞进好几本书

数字会随模型变,用来建立数量级直觉即可:窗口再大,也仍是有限桌面。

第三步 · 有限桌面

Context:多轮对话其实没有「记忆芯片」

1 上下文 = 这一次摆上桌的所有纸

Context(上下文)是这一次请求里模型能看见的全部文字:系统设定、可用工具清单、此前的对话、你刚说的话,以及工具刚返回的结果。它不是大脑里的长期记忆,更像一张面积有限的书桌

2 「没有历史记忆」是机制,不是比喻

模型本身是无状态的:每次调用,对它都像第一次见面。你觉得它「还记得上一句」,是因为中间的平台(ChatGPT、Cursor 这种套在模型外面的程序)把旧消息重新拼进 Context,再整包发给它。关掉会话、换一个窗口,桌上的纸就没了。

一次请求 ≈ 系统提示 + 工具清单 + 历史对话 + 当前问题 + 工具返回
全部挤进同一张桌。桌满了,更早的纸会被拿走或压成摘要。
系统设定 历史对话 当前问题 工具结果 还剩的空位

工作台,不是硬盘

Context 窗口是工作台;文件、笔记、记忆工具才是硬盘。查一次天气,返回全文也会占桌面——所以「会用工具」之后,窗口往往比纯聊天更容易被塞满。

和本站其它篇的关系:若要把大量资料「按意思」存起来以后再捞,那是另一条路,见 《向量数据库通俗指南》。本文只讲对话桌面上发生的事。
第四步 · 同一张桌,指令不同

Prompt:你怎么说话,它就怎么演

1 提示词也是上下文的一部分

Prompt(提示词)不是魔法咒语,就是写进 Context 里、用来规定「你是谁、要干什么、别干什么」的文字。同一模型、同一窗口,指令不同,人设和边界就不同。

2 系统提示 vs 用户提示

系统提示通常藏在产品后台:例如「你是助手,不确定就说不知道,不要假装查过天气」。用户提示是你打出去的那句。后面的工具说明、Skills 手册,本质上都是写得更结构化的 Prompt。

含糊的问法

「帮我看看天气」
缺地点、缺时间,模型只能猜

带规则的问法

「用天气工具查上海今天;
查不到就直说,不要编」

第五步 · 给它一双手

Tools:模型不伸手,平台才伸手

1 工具是一次动作,不是「更聪明」

Tools(工具)把模型够不着的事变成可调用的动作:读本地文件、查天气预报、搜索附近店铺。动机很具体——知识会过期,手也不长在模型身上。

2 四个角色,缺一不可

最容易讲错的一点:LLM 并不真正执行工具。它只输出「我想调天气查询」。真正去调接口、读文件、再把结果塞回对话的,是中间的平台(运行时 / Host)。

提问

用户

说出目标,接收最终回答

编排

平台

拼上下文、执行工具、决定何时再问模型

思考

大模型

选择工具或给出自然语言答案

动手

工具

查天气、读文件、搜店铺……

所谓「函数调用」

各家产品里的 Function Calling / Tool Use,就是约定:模型用一种结构化格式说出「调哪个工具、参数是什么」。平台解析、执行,把结果当作新的上下文再发给模型。模型仍然只在写字,只是这种字可以被程序读懂。

第六步 · 统一插头

MCP:为什么要有一套标准服务

1 以前每家一个口

OpenAI 有自己的函数调用写法,Anthropic 有自己的工具协议,其它厂商还有各自的声明方式。同一个「查天气」,换一个模型就要重接一遍。工具越多,对接成本越高。

2 先分清三个容易混的词

OpenAI 是一家模型公司;OpenAPI(常被叫 Swagger)是描述 HTTP 接口长什么样的规范,不管模型怎么用;MCP(Model Context Protocol,模型上下文协议)管的是:工具如何被发现、连接、调用。天气预报服务可以做成一个 MCP 服务,但 MCP 本身不是天气预报。

名称 它在管什么 没解决什么
OpenAI / Anthropic 工具格式 这家模型如何声明和发起一次调用 换模型往往要重写一遍对接
OpenAPI 一个 HTTP 接口的路径、参数、返回值 不管大模型怎么发现和调用它
MCP 工具(以及可读资源等)如何插到各种 Agent 宿主上 不代替你实现「查天气」本身的业务逻辑
USB-C 比喻:以前每个手机一个充电口;MCP 想像成统一插头。天气、文件系统、浏览器,各自做成服务,Cursor、Claude 桌面端等宿主按同一套约定来插。写一次,多处能用。
第七步 · 作业手册

Skills:把稳定做法抽成可复用的说明书

1 工具会动手,手册教「何时动手」

定位、天气、店铺是三个工具。但「先定位 → 再查天气 → 下雨才找伞店」是一套做法。把这套做法写成可复用的说明书,就是 Skills(技能 / 作业手册)。Cursor、Claude 里常见的 SKILL.md,就是这种东西。

2 不必把整本手册永远摊在桌上

Skills 的另一个用处是省窗口:平时只告诉模型「有哪些手册、什么情况下打开」;真正相关时再把详细步骤加载进 Context。过去反复调教出来的标准流程,就不用每次从零写进 Prompt。

Tools

锤子、温度计、地图——一次动作。

Skills

「下雨才出门买伞」的步骤清单——何时用、按什么顺序用。

Agent

盯着你的目标,决定打开哪本手册、举起哪把锤子。

你在 Cursor / Claude 里会看到什么
第八步 · 统观全局

Agent:循环到把事办完

1 聊天机器人停在「答一句」

Agent(智能体)不是另一种模型,而是一套围绕目标转的循环:看桌上的纸 → 决定下一步 → 若需要就调工具 → 把观察结果放回桌上 → 再想,直到能交差,或步数用尽、出错、需要人点头。

2 一条典型的办事请求

「我这里天气怎么样?如果下雨,帮我查附近有没有卖伞的店。」这句话一个工具不够:要先定位,再查天气,满足「有雨」才去查店。Agent 的价值,就是把这种多步、带条件的事串起来。

3 循环必须能停

不停地调工具会烧 Token,也可能误操作。常见刹车:目标已经达成、达到步数上限、工具报错、以及危险动作要人确认(删文件、付款)。有手之后,权限和人在回路不是附加题。

从上往下是「主事人 → 基石」。点一层,看它补上了什么:

盯着目标循环:思考 → 调工具 → 观察 → 再思考,直到交差。它调用下面每一层,而不是取代它们。
第九步 · 对照图

一次「查天气」是怎么跑完的

你可以试试:下面两张图默认都能看清。点「逐步播放」,会按顺序只亮当前一步;手机上看时序图可左右滑动。

时序:谁在跟谁说话

每条色块上写着「谁 → 谁」。点播放,从用户问出「上海今天的天气?」走起。

用户
平台
大模型
天气工具
用户 → 平台上海今天的天气?
平台 → 大模型问题 + 工具清单(天气查询、计算器)
大模型 → 平台调用「天气查询」
平台 → 天气工具执行天气查询
天气工具 → 平台返回天气结果
平台 → 大模型把工具结果塞回上下文
大模型 → 平台上海天气如下:……
平台 → 用户把最终回答交给用户

左右滑动可看完整四列(用户 · 平台 · 大模型 · 天气工具)

发给平台 / 模型 / 用户 模型的回复 真正调工具

流程:下雨才去找伞店

四步默认都能看清。点播放,会按「定位 → 天气 → 下雨才找店 → 收束」走一遍。

我这里的天气怎么样?如果下雨,帮我查附近有没有卖伞的店。
定位:查经纬度 天气:按经纬度查雨晴 店铺:按经纬度找卖伞的店
思考 1

不知道「这里」是哪,先定位。

调用定位 → 东经 121.5°,北纬 31.2°

思考 2

有坐标了,可以查天气。

调用天气 → 返回:有雨

思考 3

条件成立(下雨),才去找店。若没下雨,这里就会直接收束。

调用店铺 → 返回:附近有卖伞的店

收束

信息够了,不再调工具,组织成给用户的话。

最终回答:外面在下雨,附近可以买到伞。

总结

一层层长出来的,不是另一种魔法

脑子 + 桌面

LLM 只会续写;Token 是它咬的碎片;Context 是有限桌面。多轮对话靠平台把旧纸再摆上去。

说法 + 双手

Prompt 规定怎么演。Tools 让它够得着天气和文件——但伸手的是平台,不是模型。

插头 + 手册

MCP 统一「怎么插上工具」。Skills 把「下雨才找伞店」这类做法写成可复用说明书。

Agent 主事

盯着目标循环:思考 → 调用 → 观察 → 再思考。它统观下面每一层,直到交差或必须停下。

返回首页