训练与推理

F4
概念 · AI 基础

训练与推理:建造模型 vs 使用模型。

"这个 AI 是从我和它的对话里学会的"是关于 LLM 最常见的误解之一,它源于把两个完全独立的阶段混为一谈。本篇要把这条线划清楚:训练是创造模型固定权重的、昂贵的一次性过程;推理是运行这些被冻结的权重来回应一次请求的、廉价的可重复过程。一旦你看清这条边界,许多令人困惑的行为——以及许多关于成本和隐私的问题——都会变得显而易见。

STEP 1

训练:权重成形之处。

训练是通过调整数十亿个权重,把一个随机网络变成有用模型的阶段。它(对每个模型版本)只发生一次,在你与模型交互之前,在一大片专用硬件集群上耗时数周乃至数月。现代 LLM 训练大致有三个阶段:

  • 预训练。模型阅读一个巨大的文本语料库,只被训练去预测下一个令牌。绝大部分成本和绝大部分知识都来自这里——模型吸收语法、事实和推理模式。产物是一个"基础模型":流畅、有知识,但还不擅长遵循指令或扮演助手。
  • 微调/指令微调。基础模型在精选的"指令配以好回复"的样例上进一步训练,教它成为一个有帮助的助手,而非一个原始的文本续写引擎。
  • 偏好微调(RLHF 及其后继)。由人类(或充当评判的模型)对相互竞争的回复排序;模型被推向被偏好的那些。RLHF——基于人类反馈的强化学习——是最知名的方法。这个阶段塑造语气、帮助性和安全性。它精炼行为,并不教多少新知识。

要点是:训练是学习发生之时,而它会结束。训练一旦完成,权重就被冻结成一个固定文件。那个文件就是模型。

STEP 2

推理:运行被冻结的模型。

推理是你每次发送提示词时发生的事。被冻结的权重被加载,你的文本每生成一个令牌就流过网络一次,然后一段回复输出出来。关键在于,推理不会改变模型。没有任何权重被更新。下一个用户拿到的权重,和你拿到的一模一样。

这一个事实就化解了最常见的误解:

与 LLM 聊天并不会教会它。在一次对话内,它看似"记得"先前的消息,仅仅是因为整段对话在每一轮都作为输入被重新喂回去(这就是上下文窗口)。关闭对话,那段上下文就没了。你的聊天没有修改任何权重。(服务商可能另行记录对话,并在其政策允许时把它们用于未来的某次训练——但那是一条刻意设计的、独立的数据管线,不是模型在实时学习。)

所以推理期间的 LLM 实际上是一个非常大的固定函数:相同权重、相同提示词、相同设置 → 相同的概率分布。(由于采样步骤和基础设施细节,它仍然感觉是非确定性的——见"温度与采样"篇——但底层函数是固定的。)

STEP 3

为什么这种不对称很重要:成本、速度,以及你能控制什么。

训练和推理的经济性天差地别,而这种不对称驱动了大多数实际决策:

  • 训练:庞大、一次性、集中。预训练一个前沿模型的算力可能耗资数百万美元,由模型服务商完成,而不是你。你几乎从不会从零训练一个 LLM。
  • 推理:微小、可重复、按请求计。每次请求相对便宜,但每一次调用你都要再付一次,永远如此。在规模上,推理总成本会让那一次性的训练成本相形见绌。这就是为什么优化提示词长度、缓存和模型选择,才是工程精力实际投入之处。

这种不对称也告诉你能改什么、不能改什么。在推理时你无法改变权重。你改的是输入:提示词、你包含的示例、你检索并粘贴进去的文档、你提供的工具。这正是提示工程、检索增强生成和工具使用之所以存在的全部原因——它们是你影响一个不许碰其权重的模型的方式。

STEP 4

"可它难道不能学新东西吗?"——三个真实选项。

人们合理地会问:如果推理无法改变模型,那它究竟如何吸纳新信息?恰好有三种机制,分清它们能避免大部分困惑:

  • 上下文内(不改权重)。把新信息直接放进提示词——粘贴文档、给个示例、附上检索到的文本。模型仅为这次请求"使用"它。快、便宜、可逆,上下文结束即被遗忘。绝大多数真实应用都属此类。
  • 微调(刻意产生新权重)。在你自己的样例上额外跑一次较小的训练,产生一个权重被永久调整过的新变体。适用于稳定的风格或格式需求;它是一个有真实成本的真实训练过程,而不是聊天就能发生的事。
  • 一个新的模型版本(完整重训)。服务商用更新的数据训练一个新模型。这就是为什么模型的知识截止时间只在新版本发布时才推进——而不是随着人们使用而逐渐推进。

把这条边界记得清清楚楚:训练造出大脑然后停下;推理使用大脑而不改动它;任何感觉像"模型当场从你这里学习"的东西,其实是上下文被喂了进去,而非权重被改变。带着这个区分,关于成本、隐私、知识截止,以及为什么你那个巧妙的提示词没能"留下来"的问题,大多会自行解答。