训练与后训练

训练会改变模型本身,而不只是改变提示词或运行流程。CoT、ReAct、Plan-and-Solve 这类方法是在一次调用中安排思考、行动和观察;训练则把某些行为写进模型权重,让它在默认状态下就更倾向于这样做。

理解这条线,可以先把它分成两段:

  1. 预训练:让模型获得语言、代码、事实关联和潜在技能。
  2. 后训练:把基座模型塑造成更会听指令、更会用工具、更符合偏好、更能利用反馈的模型。

后训练不等于 RL。监督微调、指令微调、偏好优化、RLHF、DPO、过程奖励、可验证奖励和 agentic RL 都属于预训练之后的能力塑造,只是学习信号不同:有的模仿示范,有的比较偏好,有的优化环境奖励。

Harness 负责把模型放进可运行、可观测、可治理的系统;训练与后训练决定模型进入这个系统前已经内化了哪些行为。

预训练:获得基座能力

预训练通常是在大规模语料上做下一 token 预测:给定前面的 token,预测下一个 token。这个目标看起来很简单,但它迫使模型在压缩海量文本时学到语言结构、代码模式、事实关联、风格、常识和一部分推理能力。所谓“基座模型”,就是在这个阶段得到的通用生成器。

预训练的关键变量不是只有参数量。经典 scaling laws 关注三件事:模型大小、训练 token 数和计算量。早期直觉更偏向“把模型做大”,Chinchilla 一类工作则强调,在固定算力下,参数和训练 token 数要更平衡地增长;一个参数更少但 token 训练更充分的模型,可能超过更大的欠训练模型。换句话说,预训练质量来自模型规模、数据规模、数据质量和算力分配的共同作用。

数据同样决定基座模型的能力形状。网页、书籍、代码、论文、问答、论坛、数学文本、合成数据的比例不同,模型学到的默认能力就不同;去重、过滤、质量打分和污染控制会影响事实记忆、代码能力、长文本连贯性和评测可信度。Tokenizer、上下文长度、架构细节和训练稳定性也会影响最终能力,但在这篇里只需要记住一点:预训练不是“喂更多文本”这么简单,而是在数据、算力和模型容量之间做取舍。

不过,基座模型本身不等于可靠的 instruction-following agent。它更擅长延续分布,还没有稳定学会按任务约束、输出协议和安全边界行动。GPT-3 说明了规模可以带来 few-shot 能力:不更新权重,只靠提示里的示例,就能完成许多新任务。但这仍然不是稳定的产品行为。对 harness 来说,预训练决定的是底座:模型能推断什么、表达什么、泛化到哪里;harness 可以释放和约束这些潜在能力,但很难补出模型根本没有的能力。

后训练一:示范学习

监督微调(SFT)/ 指令微调把模型推向目标行为分布。这里不必把 SFT 和指令微调理解成两个固定阶段:指令微调通常就是一种面向“指令-回答”示范的 SFT。它训练模型理解用户意图、遵循系统约束、按期望格式输出,并从“续写文本”转向“完成任务”。

对 agent 来说,示范数据的形态尤其关键。单轮问答主要教模型“怎么答”;轨迹数据才能教模型“怎么做”:

  • 如何拆解任务;
  • 何时先思考、何时调用工具;
  • 工具返回后如何更新计划;
  • 失败后如何重试或交回控制;
  • 最终如何交付可验证产物。

这也是训练侧与 harness 侧第一次明显相遇的地方:高质量 agent 训练样本往往来自 harness trace,而不是静态问答语料。

后训练二:工具增强训练

工具调用可以只靠运行时 harness 暴露 schema 和约束,也可以通过训练让模型内化“何时调用、调用什么、参数怎么填、结果如何继续使用”。

  • Toolformer:用少量 API 示范构造自监督数据,训练模型判断何时调用 API、传入什么参数,以及如何把返回结果纳入后续预测。
  • Gorilla:针对大量 API 调用进行微调,并结合检索来适配测试时文档变化,重点降低 API 名称、参数和用法幻觉。
  • ToolLLM / ToolBench:把真实 API、工具使用指令、调用路径和评估结合起来,训练并评测更复杂的单工具、多工具使用能力。

工具能力不是单点能力,而是训练、工具设计和运行时系统共同决定的结果:

  • 训练数据决定模型是否见过“选择工具、填参数、读 observation、继续推理”的模式;
  • tool schema 决定模型能否读懂工具边界、参数含义与失败模式;
  • 运行时选择策略决定工具菜单是否过大、是否动态披露、是否带权限约束;
  • 验证与反馈决定错误调用能否被发现、能否形成可学习信号。

因此,只训练模型“会调工具”不够。如果工具描述含糊、权限边界过宽、observation 不回喂、失败不被验证,训练出的工具能力仍会在生产 harness 里变形。

后训练三:偏好优化

SFT 学习的是示范行为:给定输入,模仿高质量输出或轨迹。偏好优化学习的是行为之间的取舍:多个候选回答里哪个更符合人类偏好,哪个更有帮助、更诚实、更安全。

RLHF(Reinforcement Learning from Human Feedback)在 InstructGPT 中形成经典三步流水线:

  1. 用人工示范做 SFT,得到初始策略;
  2. 收集人类对多个模型输出的排序/比较,训练奖励模型;
  3. 用 PPO 等方法根据奖励模型继续优化策略,并用 KL 惩罚限制模型偏离 SFT 策略太远。

InstructGPT 的核心经验是:对齐训练能让小得多的模型在人类偏好中超过更大的基座模型。但论文也明确指出,模型仍会犯简单错误。对 agent 来说,这一点很关键:RLHF 优化的是人类偏好下的回答行为,不等于环境任务真实完成。一个回答可以礼貌、听话、看似有帮助,却没有真的提交表单、修好 bug、通过测试或满足权限要求。

DPO(Direct Preference Optimization)把 RLHF 的偏好优化问题改写成偏好对上的分类损失,不再需要独立奖励模型和在线 PPO 循环。它工程上更轻、更稳定,但仍是偏好学习:如果数据只比较“哪个回答更像好回答”,模型可能学会更会说,而不是更会完成任务。

后训练四:过程奖励与可验证奖励

多步推理和 agent 任务只看最终结果往往不够。奖励信号可以来自不同位置:

  • 结果监督:只看最终答案或任务是否成功。
  • 过程监督:对中间步骤给反馈,指出哪一步走错。
  • 可验证奖励(RLVR):当正确性可由程序判定时,直接用测试、编译、答案检查器、形式化验证器或环境成功状态作为奖励。

“Let’s Verify Step by Step” 表明,在数学推理任务上,过程监督明显优于只看最终答案;论文发布的 PRM800K 包含 80 万条步级人工反馈。DeepSeek-R1 则把可验证奖励推到更显眼的位置:在数学、竞赛编程、STEM 等可验证任务中,RL 可以激发长链推理、自我验证和策略调整。

把这一思路从单轮答案推广到多步 agent 轨迹,就是 agentic RL:以任务成功、环境反馈和验证器作为奖励,训练工具使用、错误恢复和长程决策。

这里的关键词是环境。单轮 RLVR 只需要答案检查器;agentic RL 需要可执行、可重置、可观测、可计分的任务环境:

  • E 层 提供沙箱、依赖、重置语义与副作用边界;
  • L 层 提供多步控制流与失败恢复;
  • O 层 捕获 trace、成本、重试与运行信号;
  • V 层 把轨迹转成奖励、成绩与归因;
  • G 层 限制训练中可探索的动作空间,避免“为拿奖励而越权”。

因此,agentic RL 不是纯模型训练问题,而是把 ETCLOVG 的多层基础设施纳入训练回路。

数据质量决定默认行为

训练不只是增加能力,也在塑造模型的默认倾向:什么时候简短回答,什么时候显式推理,什么时候请求澄清,什么时候拒绝,什么时候调用工具,工具失败后是否继续猜,是否能承认不确定。

这对 agent 尤其敏感。低质量数据可能教出几类坏默认:

  • 格式脆弱:schema 或提示稍变就输出不可解析结果;
  • 工具过度使用:明明内部可答也强行调用工具,增加成本与风险;
  • 工具不足使用:需要外部事实时仍凭记忆回答;
  • 过度自信:验证失败后继续包装成成功;
  • 轨迹短路:省略中间观察与交接信息,让后续 agent 或人无法接手;
  • 奖励投机:模型学会钻评价器或测试的空子,而不是满足真实目标。

所以 production harness 不应只把最终好答案拿去微调。更有价值的是保留 trace、评估结果和失败归因,把“为什么成功/失败”也转成训练数据。

与 Harness 的关系

训练与后训练决定模型“开箱即有”的能力边界,从而决定 harness 需要补什么。模型越擅长长上下文维持、工具调用、自校验和错误恢复,某些显式规划提示、重复校验器或重置脚手架就越可能变成成本负担。

但训练不会替代 harness。即使模型被训练得更会调用工具、更会利用奖励,harness 仍负责:

  • 执行边界与沙箱;
  • 工具权限与身份;
  • observation 的记录与回放;
  • 成本、失败、重试的可观测;
  • 最终行为的审计与治理。

更准确地说,训练侧与 harness 侧是一条移动边界:训练把部分行为内化进模型,harness 则把这些能力放进可控、可测、可追责的运行系统里。

来源

这页有帮助吗?