面灵AI→

滴滴算法秋招凉经:GRPO 监控指标与 Agentic RL 数据链路

结果
已挂
时间
2026-09
来源
牛客网

《面试题目》

  1. GRPO 训练时,除了 reward,还要盯哪些指标?指标异常分别意味着什么?
  2. Agentic RL 的训练数据从哪里来?一条可训练轨迹至少要保留什么?
  3. SFT 数据从哪里来?怎样防止把错误的工具使用方式教给模型?
  4. 按成功轨迹采集数据,会引入什么偏差?怎么处理?
  5. 什么时候继续做 SFT,什么时候切到 RL?
  6. GRPO 相比 PPO 省掉了什么,又付出了什么代价?
  7. GRPO 训练中怎样同时优化吞吐和有效学习信号?
  8. 组内奖励方差为零时,GRPO 应该怎么处理?
  9. 工具调用轨迹有多轮决策时,终局奖励应该怎样分配?
  10. 异步 rollout 收集到旧策略的数据,还能直接用于更新吗?
  11. KL 约束在 RL 后训练中起什么作用?设得过大或过小会怎样?
  12. 请做一下自我介绍

《参考解析》

GRPO 的监控面板:reward 之外至少还要看六类信号

任务成功率(用独立校验器算,而不是训练奖励)、组内奖励方差、策略与参考模型的 KL、新旧策略概率比值分布与 clip fraction、响应长度、按任务类型拆分的结果。诊断逻辑:平均 reward 涨而真实成功率不动,先怀疑奖励投机(模型学到格式、长度、关键词等捷径)或评测集覆盖不足;组内方差长期接近零,说明分组采样已经提供不了区分信号;KL 快速抬升意味着策略偏移过快,要调小学习率或加大 KL 系数;clip fraction 偏高说明数据太旧或更新步长太大;响应长度明显增长要区分是模型真在解题,还是学会了用冗长输出换分。只看总均值最危险——简单题占比高时,总分上涨完全可能掩盖困难题退化,所以必须按题目难度和类型分桶看。

轨迹数据:保留「模型当时实际可见的状态」

来源有四类:可执行的任务环境、带确定性校验器的题目、历史工具调用轨迹、模型在当前环境里自己采样的 rollout。一条可训练轨迹至少要有初始任务、逐轮可见上下文、模型输出、工具请求与返回、终止原因、校验结果和策略版本。最容易踩的坑是工具返回:如果线上经过截断或清洗,训练记录也必须保存模型当时看到的那一版,否则重放时会把「当时不可见的信息」当成决策依据,训练出推理时无法复现的行为。

SFT 能不能停:先看基础行为,再看奖励是否有区分度

该继续做 SFT 的信号很明确:模型还不遵守工具协议、经常漏必要步骤、采样半天也拿不到一条有效轨迹。RL 需要两个前提——模型能以一定概率探索到正确行为,奖励能把较好和较差的结果区分开。当基础行为已稳定、任务存在多种可行路径、很难逐步写出标准示范但最终结果可以可靠验证时,切 RL 更划算。切换不是一次性的:新增工具或任务格式后,先补少量高质量示范把行为立起来,再用 RL 优化决策。工具有调用样本不能只看最终答案对不对——模型可能先调了无关工具、读了不该读的信息、最后碰巧答对,所以筛选时要查工具参数是否合法、调用时点是否合理、是否忠实使用返回值、结论能否被轨迹证据支持;经过人工修复的轨迹还要区分「真实执行结果」与「人为改写的理想过程」。

组内奖励方差为零:先分类,再决定动不动学习率

三种情况要分开:全对、全错、以及奖励器把质量不同的回答打成了同分。前两种下组内没有相对排序信息,正确的做法是让这一组的策略梯度贡献为零(直接跳过),再去调采样温度、题目难度或课程安排;把标准差下限设成 1e-6 只防了除零,不能凭空创造训练信号,反而会放大数值噪声。第三种说明 verifier 区分度不够,要改奖励器(更细粒度评分、加过程校验),调学习率没有意义。

异步 rollout 与 KL:把 off-policy 的账算清楚

旧策略产生的数据不能无条件当当前策略的样本用。更新时要记录生成轨迹的策略版本和当时对实际输出的 log probability,算新旧策略的概率比值;策略偏移大时,即便做了裁剪,样本也会大量落进裁剪区间——算力花出去了,有效梯度几乎为零。可以设最大策略滞后(超过 N 个 step 的轨迹直接丢)、限制单条轨迹复用次数,并按版本监控 clip fraction 和有效样本占比。异步程度越高,越要把「每秒生成多少 token」和「每秒拿到多少有效更新」分开看,只盯吞吐容易自欺。

KL 项的作用是约束当前策略别过快远离参考策略,从而保留原有能力、抑制奖励漏洞。系数过大,模型即使发现更好的解法也不敢偏离;系数过小,策略会迅速偏向校验器的薄弱点,通用能力跟着退化。实践中它通常作为奖励里的惩罚项或对参考模型 logprob 的正则,配合早停和 held-out 通用能力评测一起看,而不是只盯训练曲线。