2B模型三步后训练,对话游戏分从10.67提到38.92

Acquire, Repair, Preserve: A Diagnosis-Guided Post-Training Recipe for Small-Model Dialogue Game Agents

Nan Li

EMNLP 2026

cs.CL, cs.LG

2026-08-28

乌得勒支用2B模型走宽SFT、Wordle轮级DPO和LoRA缩放0.85,公开对话游戏分从10.67提到38.92,静态分几乎不动,域外仅7.88。

这篇在解决什么

静态基准测的是单轮答题。对话游戏测的是另一件事:模型必须跨轮记住状态,读懂刚收到的反馈,再在收紧的约束下选出合法动作。猜一个词会排除字母,给一条线索会限制搭档下一步,走一步会改变下一句命令该从哪间房解释。

LM Playschool Challenge 把这件事做成正式赛。官方 Qwen3.5-2B 基线公开 clemscore 只有 10.67,同系列 27B 是 60.30。翻 2B 的 Wordle 记录会发现,失败经常不是「不会玩」:输出格式对,紧跟着却重复刚被拒的猜测、长度不对,或用上反馈标成红色的字母。错误频繁、能用规则检查,而且就钉在收到反馈后的那一次决策上。

问题因此收成一句:监督该落到轨迹的哪一段,而不是再争论对话游戏数据有没有用。

方法

乌得勒支大学 Nan Li 的 playornotplay 提交,把后训练拆成 Acquire、Repair、Preserve 三步,全程 LoRA(r=16,α=32,all-linear,dropout 0.05)接在 Qwen3.5-2B 上,文本模式微调,单卡 A100-80GB 大约 5.3 小时。

对照实验把「整段剩余对话」当偏好对,未过滤的 whole-dialogue DPO 把 clemscore 打到 12.35,模型开始在动作前写自然语言前言,协议崩掉。按更强源模型过滤后只回到 25.76,主要 abort 模式还在。轮级对比钉在反馈后的那几个决策 token 上,整段对比会把协议一起改坏。

原稿写过六阶段。其中继续弱游戏 SFT 和 Wordle 上的 GRPO,后来核过:一个把 adapter 冻死,一个优化器参数集是空的,权重一个字节都没动。修 bug 重跑后两项合计还掉 0.30 分,所以提交只保留上面四步有效阶段。

结果

官方终评(snapshot 2dd5a533)是主结果。开发集只有 14 款游戏、67 局,差几分要当噪声。

系统公开 clem封闭域内封闭域外静态分
Qwen3.5-2B 基线10.6713.413.7244.24
playornotplay(2B)38.9241.177.8844.14
官方 4B 基线26.6634.0217.9951.33
官方 9B 基线31.9141.1224.9153.90
DAIR SFT-only(同 2B)46.0146.5715.6244.35

公开 Played 从 27.22% 升到 78.63%,Quality 从 39.20 到 49.50。封闭域内两边都涨:Played 47.32→82.62,Quality 28.33→49.83。域外 Played 从 35.19 掉到 33.08,低于未训练基线;clemscore 从 3.72 到 7.88,全靠更少对局里的条件质量。

域外正向移动 84.86 里,三个留出的 Wordle-crazy 变体贡献 70.02,占 82.5%。封闭域内涨最多的反而是后期没碰过的游戏:TMW GraphReasoning +71、ImageGame +60、AdventureGame +58。被盯着修的 Wordle 家族在隐藏域内几乎还是 0(3.3、10.0、3.3)。

开发轨迹上宽 SFT 是最大单步(+30.80)。turn-DPO 第一轮在提交轨和受控单机实验里都为正(+2.98 和 +1.49);第二轮和 branch-DPO 两条评测轨符号相反。静态分表面保住了,底下在挪:BBH Quality 0.00→30.47,IFEval 68.52→51.85,EQ-Bench 64.78→56.43。

为什么重要

给小模型做互动后训练,这篇把监督该放哪讲清楚了。大头是「先学会把这局打完」的宽模仿;能用规则抓住的局部失败,适合钉住同一历史做短偏好对;整段对话当 DPO 样本,在这个协议极严的环境里会把格式一起改坏。LoRA 增量缩放不新增数据、不走梯度,是把静态分从专化税里捞回来的便宜旋钮。

它不是排行榜第一。同底座的 DAIR SFT-only 公开 46.01、隐藏域内 46.57、域外 15.62,三项都更高。官方 2B 拉到 9B、零训练,公开分已经从 10.67 到 31.91。这篇的价值更接近一份路径依赖的实验记录:参与缺失时宽模仿有用,失败可机械定位时轮级偏好有用,策略已经换过再继续纠错,五条续训臂都没超过缩放后的 50.43 开发端点。

4B 上做过对照:700 条 off-policy 成功对局的低剂量 SFT,把 clemscore 从 40.75 砸到 24.36。同样的「成功模仿」,底座已经会玩时会把已有能力改坏。

局限与存疑

论文自己写了四条。轮级修复只在 Wordle 家族上构造过偏好数据,没测过需要语义或策略判断的失败。域外覆盖就是近亲变体迁移。修复阶段挂在一份封顶 700 条/游戏的宽 SFT 父模型后面,没扫过更强或更弱的获取阶段,所以补不上「轮级 DPO 到底是互补还是在给这份弱父模型擦屁股」。官方分只验证提交端点,相邻阶段差把训练、顺序依赖、反复选型和 67 局噪声搅在一起,不能当因果分解。静态分保住的是合计,不是每一项。

公开三局 plain-Wordle 上还有更扎眼的细节。条件质量在有对局被打完的检查点上始终是 0:修的是协议级错误,没把猜词任务做对。s=0.85 缩放之后,三局全部 abort,第一轮 DPO 专门打过的 bad-length 猜测又回来了。提交产物在隐藏域内 Wordle 家族几乎没分,和「盯着 Wordle 修了两阶段」对不上。

公开 clemscore 和隐藏域内高度相关(r=0.93),和域外几乎无关(r=0.30)。在公开开发集上做的每一个决定,最后都长成了「域内大涨、域外 Played 低于未训练基线」。

术语

原文与代码

相关论文

全部论文解读