主题
第 17 章 · 模型调优
核心观点 + 逻辑框架(调优篇 · 模型能力:归因、SFT、Agentic RL、蒸馏、验收上线)
▍速览
一句话版(开场,约 20 秒)
模型调优的第一动作不是训练,而是归因:先排除执行环境故障,再检查 Harness 的信息与运行控制,只有信息、动作接口和反馈都充分且稳定、同类决策错误仍跨任务反复出现,才把问题落到模型。落到模型之后再选方法——能稳定示范用 SFT,路径优劣需环境反馈用 Agentic RL,迁移降本用蒸馏——并在完整 Agent 里以质量、可靠性、成本、安全四维验收,灰度替换。
一段话版(完整表达,约 90 秒)
模型是 Agent 的决策核心,但优化模型不能补偿 Harness 或执行环境缺陷。Agent 的端到端能力由三层共同形成:模型负责理解任务、选择动作、解释反馈,Harness 负责上下文组织、工具协议、状态与权限控制,执行环境负责实际承载动作。归因顺序是先排除能独立复现的环境故障,再验证 Harness 是否提供了充分信息与可靠控制,最后才判定模型能力缺口——失败现象本身不能决定归因,工具选错既可能是模型能力不足,也可能是工具描述含混。归因到模型后,模型能力缺口分四类:任务理解与约束识别、工具使用与反馈理解、多步决策与状态利用、失败恢复与合理终止;优化目标从质量、可靠性、成本三个维度设定,辅以安全护栏,成本用单位成功任务成本核算,失败重试的成本计入分子。方法选择看学习信号:有明确示范选 SFT,需要交互探索且环境能提供可验证反馈选 Agentic RL,教师已具备能力且目标是迁移、压缩或部署选模型蒸馏,三者可组合——SFT 作 RL 冷启动、RL 专家蒸馏作部署、on-policy distillation 覆盖学生状态分布。无论哪种方法,训练损失上升都不等于能力提升:候选模型必须进入完整 Agent,在同一 Harness、工具协议与执行预算下独立运行,通过接口兼容、目标收益、能力回归、运行预算、安全硬门禁五道门禁,再经影子验证、低风险灰度、分阶段扩量、稳定替换四阶段上线,回滚对象是完整发布单元而不是单模型权重。推理框架是模型调优的成本底座:Prefill 吃算力、Decode 吃带宽,KV Cache 是显存里最紧张的资源,缓存命中率就是成本,Agent 负载输入长、输出短、前后高度重复,让推理框架从"算得快"转向"少算、复用"。模型决定智能体能做什么,推理框架决定每做一次花多少钱、等多久。
- 归因 执行环境→Harness→模型三层排查;现象≠归因,先排除环境再判能力
- 目标 质量/可靠性/成本三维 + 单位成功任务成本 + 安全护栏
- 方法 SFT 稳定示范 / Agentic RL 环境反馈 / 蒸馏迁移降本,可组合
- 验收 完整 Agent 五门禁 + 灰度四阶段 + 回滚完整发布单元
- 底座 推理框架:Prefill/Decode、KV Cache、缓存命中率=成本
收尾
用模型训练弥补系统工程问题,或用系统补丁掩盖真实能力短板,是代价最高的两类误判。
▍逻辑框架(记忆卡片)
① 命题:三层归因,把问题落到正确的优化对象上
- 模型:理解任务、作出决策、生成动作、解释反馈;负责决策
- Harness:上下文组织、工具协议、任务状态、路由、权限、重试与停止;负责运行控制
- 执行环境:业务系统、数据服务、计算资源、Sandbox、外部服务实际承载动作;负责执行
归因顺序:先排除能独立复现的执行环境故障 → 再查 Harness 的信息与控制 → 最后判定模型能力缺口。失败现象本身不能决定归因:工具选错既可能是能力不足,也可能是工具描述含混。验证手法——绕过模型直调工具可复现→环境;固定模型修正 Harness 问题明显减少→Harness;固定 Harness 换模型错误跨任务变体稳定出现→模型。
失败归因四组对照:原/候选模型 × 原/候选 Harness · 成本驱动也可触发模型优化(长提示/重试/多模型复核超预算)
② 模型能力四类要求与优化目标
- 任务理解与约束识别:把自然语言转化为可执行目标,识别完成标准、前置条件与允许操作范围;条件不明时提出澄清也是有效推进
- 工具使用与反馈理解:选对工具、生成合法动作、判断返回是否支持下一步;调用成功≠结果有效,要核验口径与完整性
- 多步决策与状态利用:理解已完成/未完成/当前可用信息,按反馈调整顺序;用户协作任务要确认用户操作完成
- 失败恢复与合理终止:报错后判断修正参数、补充信息、切换路径还是求助;满足条件时判断能否终止
优化目标三维度:质量(任务完成+关键动作+业务口径+约束遵守)、可靠性(多轮运行覆盖输入变化/工具异常,关键场景不得回退)、成本(单位成功任务成本=全部任务执行成本÷成功任务数,失败与重试计入分子,比较时固定任务构成并同时报成功率)。安全护栏不依赖模型自觉,由 Harness 与执行环境强制实施。
③ 方法选择:三种学习信号的适用边界
- SFT(监督微调):正确行为能被可靠示范时用;学习单位=当前可见信息与动作空间下应当生成什么;固化经过验证的行为
- Agentic RL:路径优劣只能通过实际执行判断,且环境可交互、反馈可验证时用;优化的是连续决策中选择动作的倾向
- 模型蒸馏:教师已具备能力、目标是迁移到更小/更低成本/更易部署的学生时用;学习教师生成的输出或行动轨迹
三类方法可组合、非固定流水线:SFT → Agentic RL(冷启动稳定起点)|RL 专家 → 蒸馏(部署降本)|On-policy Distillation(学生状态分布上蒸馏)。训练阶段应覆盖生产的主要上下文、工具协议与反馈方式。
④ SFT:从轨迹到可监督样本
- 边界:目标行为必须能被可靠示范;路径优劣只能靠交互判断时,不应把不确定结果当标签,转 Agentic RL
- 样本构造:轨迹≠监督目标;每个目标行为只能依赖该决策时刻已可见的信息——工具未返回时目标动作不能使用其结果,用户后补条件不能提前进入早期决策,否则离线信息优于线上、上线无法复现
- 质量筛选:成功轨迹可能含多余查询、失败轨迹可能含有效恢复;角色级掩码(只对模型生成算损失)+ 质量级掩码(错误动作保留为上下文、屏蔽损失,只监督验证过的修正行为)
- 配比:高频建稳定、长链路练跨步利用、异常补恢复;保留通用问答样本防工具化回退;LoRA 参数高效 vs 全量微调,都不能替代数据质量
验收靠执行评测:训练损失下降只说明更容易生成监督内容;让候选模型在固定 Harness 下自主运行、环境返回真实反馈,检查错误累积与恢复。测试集按任务族分组、与训练集隔离,改季度/字段/数据分布验证学的是方法不是模板。
⑤ Agentic RL:准入、环境与奖励设计
- 准入六维度:问题归因(确属策略)/ 示范可得性(路径不唯一)/ 结果可验证性(比过程可标注更重要)/ 环境能力(可重复·可重置·可隔离·可追踪)/ 基础策略(已有一定有效轨迹比例)/ 投入产出(收益覆盖 Rollout 成本)
- 任务建模为部分可观测序列决策:模型依据交互历史 hₜ 选择动作;四要素=观察/动作/转移/任务结束,结束需区分终止(成功/失败/预算耗尽)与截断(采样时限等无关原因,可做价值 bootstrap)
- 奖励四信号:结果奖励(核心,贴近业务目标)+过程奖励(可客观判断的关键状态)+成本信号(在成功前提下优化)+约束信号(高风险约束由 Harness 硬控制,不能只靠负奖励);R=w₁R_task+w₂R_process−λC−μP
- 验证器三类:规则验证器(稳定低成本)/ 模型验证器(覆盖广,需查偏见与自洽)/ 人工反馈(校准复杂偏好与边界,用于标尺集而非全量 Rollout)
三重控制边界不可互相替代:训练奖励提供学习信号(作用模型参数)|系统硬约束不可绕过(作用每次执行,权限/预算/动作约束)|独立评测判定真实能力与发布(回路之外)。奖励不能制止越权,越权不能判断能力优劣。
奖励三风险:奖励投机 · 代理目标偏移 · 评审器漂移
⑥ Agentic RL:Rollout 与长程决策
- 训练闭环:任务采样→策略 Rollout→轨迹存储→Verifier 评分→回报与 Advantage→策略更新→新版本;PPO 近似 on-policy,轨迹跨版本复用需限制或校正;组相对基线=同任务多轨迹组内相对回报,适合并行采样且回报差异明显的场景
- 执行侧与训练侧解耦:执行侧维护上下文/调工具/采轨迹,训练侧采样/算奖励/更新参数;模型、工具版本、Prompt、环境、验证器、策略版本共同登记才能回放
- 长程四手段:课程式任务采样(短轨迹强反馈起步)/ 只在可验证阶段状态给过程反馈 / 同任务多轨迹相对识别更优路径 / 显式覆盖参数修正、工具切换、状态回滚、澄清与终止
- 轨迹分段本身不改善信用分配——只有分段对应可验证子目标、阶段奖励或层级策略才缩短信号传播;把长轨迹切成文本片段而无可靠反馈,模型仍不知哪个早期动作导致失败
多路径探索:同一初始场景多条轨迹并行,由可验证反馈筛选有效策略集合(结果成功+合规+成本可接受),集合内择优;失败轨迹用于错误分析与采样,不做履约目标;历史失败轨迹无限回放不产生有效策略梯度。独立评测四步:冻结候选与可比基线 → 隔离开发/验证/留出集与评测器 → 四维度端到端报告 → 消融定位收益来源。
⑦ 模型蒸馏:信号、路线与能力补强
- 先定能力范围:任务—职责—风险矩阵(学生独立执行/学生执行教师校验/教师直接执行);完整行为迁移 vs 技能级迁移(工具路由/查询生成/结果核验,后者更易定义成功标准,适合首次落地);师生四约束:任务覆盖、示范可验证性、学生容量、线上预算
- 教师信号五层次:最终输出→标签与理由→结构化动作→多轮轨迹→概率信号;硬目标(文本/动作,跨词表可用)vs 软目标(log-prob,保留相对偏好,需概率接口与词表对齐)——是否用概率蒸馏由教师访问方式与训练设施决定的工程约束
- 路线三选:Off-policy SFT(教师轨迹,稳定易实现,学生状态分布偏移)/ On-policy RL(环境结果奖励,稀疏难信用分配)/ On-policy Distillation OPD(学生真实状态+教师逐 token 稠密评价;反向 KL 模式寻求,收敛到连贯高概率路径,但复制教师偏差、压低必要探索)
- 能力补强四缺口:知识缺口(目标理解,补解释对照样本)/ 决策缺口(工具选择,补相邻候选与依据)/ 执行缺口(参数格式权限,补结构化校验)/ 恢复缺口(空结果/超时/冲突证据,补纠错轨迹);定位学生相对有效路径的首个关键偏离,不只看最终失败标签
教师高概率≠任务正确;教师示范进入训练集前必须验证(答案裁判、schema+权限+执行结果检查、轨迹四查),过滤错误轨迹并保留失败原因,比单纯扩大未验证样本更重要。
⑧ 蒸馏收益核算与部署形态
- 单位成功任务成本 = 全部任务全路径总成本 ÷ 成功任务数;重试、教师兜底、验证器、工具、运行时全部计入;"单次推理成本×平均重试÷成功率"是极简近似,多模型多工具下通常不成立
- 质量保留 R_Q = 学生成功率 ÷ 教师成功率;部署决策不设单一平均阈值,高风险任务分别设安全违规率、不可逆错误率、教师兜底召回率门槛
- 部署形态:路由/级联——学生先执行,置信度/规则校验/多样本一致性不足时升级教师兜底;收益可来自"减少教师调用",不必一次训练完全替代
- ROI 加一次性投入:盈亏平衡任务量 N*=F÷(g_new−g_old),g=pV−(1−p)L−C;成本下降但失败损失上升=伪收益,教师兜底是目标架构的一部分而非蒸馏失败的例外
工程四环节:数据管线(多候选采样+分层验证+去污染去重 8-gram/2% 阈值+配比参数化)|训练(TRL GKDTrainer/DistillationTrainer 分块 JSD 省显存、NeMo、PAI EasyDistill;LoRA 学习率≈全参 10 倍)|采样训练解耦(vLLM 高吞吐生成 + 训练后端,重要性/拒绝采样修正 off-policy 偏差)|部署(级联+投机解码草稿模型+灰度 1%→10%→25%→50%→90%→100% 每档观察窗与自动回滚)。
⑨ 验收与上线:五门禁、灰度与回滚
- 可比较版本:模型/Harness/执行环境/评测四类配置冻结关联;纯模型对照(同系统比参数收益)+ 部署组合对照(比最终发布组合);Prompt 扩写/放宽权限带来的提升单独报告,不全部归因模型
- 系统适配:工具协议/上下文/执行行为/预算/安全边界五兼容;从固定输入→标准前缀→Sandbox 自主闭环→故障注入(超时/无效返回/资源不足/权限拒绝)
- 准入门禁 = 硬门槛 + 目标收益:接口兼容 / 目标收益(最小改善+置信区间)/ 能力回归(非劣效界值)/ 运行预算(单位成功任务成本+高分位时延)/ 安全硬门禁(违规频率=策略风险,穿透执行频率=防护有效性,两个对象分开统计);门槛在看结果前确定
- 灰度四阶段:影子验证(只读/隔离重放)→ 低风险灰度(只读工具/内部用户)→ 分阶段扩量(写操作晚开放)→ 稳定替换(保留旧版完整业务周期);每阶段预置扩大/暂停/回滚三条件
回滚对象是完整候选发布单元(模型+Prompt+工具 Schema+上下文策略),只回退模型权重可能形成不兼容组合;回滚不能撤销已完成的写操作,资金/账户任务需独立幂等、审计与补偿。下一轮路径由剩余问题性质决定:修复模型/Harness/执行环境各归其位,偶发失败不自动触发训练。
⑩ 推理框架专题:成本与体验的底座
- 推理五要求:快(TTFT/流畅)/ 多(同硬件更多请求)/ 省(显存算力用足、已算不重算)/ 稳(高峰长请求故障仍可用)/ 准(输出与模型能力一致、可复现);训练是一次性投入,推理是持续支出
- 核心机制:Prefill 吃算力、Decode 吃带宽(输出贵因为串行生成占 GPU 更久);KV Cache=草稿纸,与上下文长度×并发成正比,是显存最紧张资源;连续批处理让 GPU 满载;分块预填充防长请求卡顿
- Agent 负载三特点:输入很长、输出较短、前后请求高度重复——推理框架比拼从"算得快"转向"少算、复用";对智能体,缓存命中率就是成本(固定提示词放最前、变动内容放末尾,开头插时间会令全部缓存失效)
- 请求旅程六环节:入口(对话模板+分词,特殊标记防注入)→ 调度(连续批处理/显存准入)→ 执行(并行 TP/PP/DP/EP + 算子)→ 缓存(分页管理/前缀复用/多级缓存)→ 集群(PD 分离/扩缩容容错)→ 采样输出(结构化输出保证工具 JSON 可解析、投机解码草稿模型加速、确定性模式保可复现)
- 生态格局:vLLM(PagedAttention)、SGLang(RadixAttention 前缀复用)、llama.cpp/Ollama 端侧、集群编排层 Dynamo/llm-d/Mooncake(PD 分离+跨机 KV Cache);模型厂商开源 DeepInfer/xLLM/RTP-LLM;模型与推理框架越来越像一起设计、一起发布
模型决定智能体能做什么,推理框架决定每做一次花多少钱、等多久;推理效率的每一点提升被调用量成倍放大。
▍逻辑全景图(三层归因 → 方法三选 → 完整 Agent 验收 → 灰度反馈闭环)
以归因为起点:先排除环境、再查 Harness、最后归因模型;训练收益必须在完整 Agent 中复现并通过五门禁与灰度验证
- 归因层(先排除→再验证→后判定)
- 方法三选(SFT / RL / 蒸馏)
- 验收与灰度(五门禁 + 四阶段)
示意 · 按原书图 17.1-1 Agent 优化闭环总览重构,并入第 17.5 节验收门禁
▍书中关键图(SVG 重绘版·示意)① 失败归因:三层对象与验证方法
| 排查层 | 定位顺序 | 典型失败现象 | 验证方法 |
|---|---|---|---|
| 执行环境 | 先排查:独立复现 | 模型给出可执行动作,但业务/数据/Sandbox/外部服务无法执行返回 | 绕过模型直调工具,故障仍复现 |
| Harness | 再验证:信息与控制 | 模型缺必要信息/工具接口含混,状态·重试·停止·权限未被可靠管理 | 固定模型与环境,修正后问题明显减少 |
| 模型 | 后判定:能力缺口 | 信息/接口/反馈充分且环境正常,仍持续错误理解/推理/工具选择/恢复/终止决策 | 固定环境与 Harness 后跨变体稳定或随模型改善 |
| 数据分析反例 | 同一现象四层可能,先各归其位 | SQL 生成错误:缺字段含义 / 时间范围歧义 / 查询服务不可用 / 口径、去重、关联仍混淆 | 缺字段含义→补数据字典检索;时间范围歧义→修工具协议;服务不可用→处理环境;仍混淆→才评估模型优化 |
| 总则 | 先排除环境 → 再查 Harness → 最后归因模型 | 失败现象本身不能决定归因,避免用训练弥补系统问题 | 现象与判定条件结合后再定层 |
示意 · 按原书表 17.1-1 Agent 失败归因重绘
▍书中关键图(SVG 重绘版·示意)② 模型优化方法选择路径
示意 · 按原书图 17.1-3 模型优化方法选择路径重绘
▍书中关键图(SVG 重绘版·示意)③ 推理框架:一个请求的旅程(六环节)
示意 · 按原书《深入浅出推理框架》"一个请求的旅程"与四、七节内容重绘