论文链接:Post-Training Language Models for Gold-Medal Performance in Coding Competitions 发表时间:2026年9月 机构:NVIDIA(Aleksander Ficek、Sean Narenthiran、Mehrzad Samadi、Somshubra Majumdar、Boris Ginsburg;企业研究院,权重开源) 领域标签:cs.LG / 竞赛级代码推理 / 后训练
一、论文背景
竞赛编程为什么是推理试金石:与普通代码基准不同,IOI(国际信息学奥林匹克)和 ICPC 要求模型合成新算法——不是补全代码,而是在时间/内存限制下对复杂约束设计出能通过隐藏测试的完整解法。题面可能描述一个从未见过的数据结构 trick,模型必须从约束反推出算法类别、写出无 bug 的实现、并且拿到分。
里程碑事件的时间线:2025 年,OpenAI、DeepSeek 等相继在 IOI/ICPC 达到金牌水平。但现有系统有三个共同问题:闭源(无法复现)、组件混淆(训练数据、后训练、模型规模、推理时计算混在一起,不知道谁贡献了多少)、事后评测(在题目公开后刷分,与真实比赛条件不同)。
本文要同时回答三个问题:(1) 达到金牌水平的完整流水线是什么样、每个组件贡献多少?(2) 一个通用管线(不为比赛特调)能做到什么程度?(3) 在前瞻性条件下——比赛当天、题目未公开、与人类相同的规则——AI 能不能击败最好的人类选手?
二、论文定位和关联工作
谱系一:竞赛代码 AI
- AlphaCode(2022)/ AlphaCode 2:领域训练+大规模采样+行为聚类过滤的开创者。本文继承其采样思想,但用 SFT/RL 后训练大幅抬高单解质量,再用 GenCorrect 做迭代修正而非纯过滤。
- OpenAI/DeepSeek 的 IOI 金牌系统:证明可能性但闭源。本文提供开源权重+完整组件归因,是社区第一次能看到金牌流水线的每个齿轮。
谱系二:推理后训练
- DeepSeekMath/GRPO 系:二值奖励的组相对策略优化。本文的 RL 部分直接采用 GRPO,并诚实报告了其增益有限的机制原因(见第六部分)。
- Nemotron Cascade 系(NVIDIA 前作):级联 RL+多域蒸馏的通用后训练。本文是其在竞赛代码垂直域的专项深化。
谱系三:测试时计算扩展
- Snell et al. 的测试时计算最优分配:理论依据——测试时计算可比参数缩放更有效。GenCorrect 是该思想在竞赛代码上的工程化:不只并行采样(Score@200),还用评测反馈迭代修正。
| 维度 | AlphaCode 系 | 闭源金牌系统 | 本文(Nemotron-CC) |
|---|---|---|---|
| 单解质量 | 弱(靠海量过滤) | 强 | 强(SFT 主导) |
| 测试时策略 | 采样+聚类过滤 | 未公开 | 采样+评测反馈迭代修正 |
| 组件归因 | 无 | 无 | SFT/RL/测试时逐一消融 |
| 评测条件 | 事后 | 事后 | 含 IOI 2026 现场前瞻评测 |
| 开源程度 | 部分 | 无 | 权重开源 |
定位结论:本文的价值是"金牌流水线的解剖标本"——里程碑结果与组件归因并重。
三、问题定义
具体问题:如何把一个通用基座 LLM 训练到 IOI 金牌水平,并在与人类相同的比赛条件下验证?
抽象问题:给定可执行验证的竞赛题库(题面、限制、隐藏测试、参考解),学习一个从题面到满分程序的映射,使得在提交次数受限、时间受限的比赛协议下总期望分数最大。
形式化要素:
- 训练分布 P:22000 道题 × 若干合成轨迹(由教师模型生成并经执行验证过滤);
- 优化目标:SFT 最大化轨迹似然;RL 最大化执行验证的二值奖励;
- 推理时决策问题:在至多 50 次提交的预算内,如何分配采样与修正轮次以最大化期望得分(Score@1 → Score@200 → GenCorrect 多轮)。
这个抽象的精妙之处:它显式地把"提交预算约束"纳入问题——竞赛不是 pass@k 的无限采样游戏,而是有限提交下的序贯资源分配。GenCorrect 的设计(200 采样集中为每轮 10 次提交、5 轮迭代)正是对这个约束的直接回应。
四、问题解法
4.1 数据策展:22000 道可执行验证的竞赛题
- 16 个地区/国际竞赛家族近 20 年题目 + 在线评测平台题;
- 自动 agentic 管道抽取题面/限制/测试/参考解,打包成标准化可执行评测环境;
- 环境校验:已知正确解必须得预期分、已知错误解必须失败;另用 gpt-oss-120b 生成候选解跑全套测试,揪出格式残缺与测试不一致的坏题;
- 防污染:IOI 2025、ICPC 2025、LiveCodeBench Pro 全部题目从 SFT 与 RL 语料中剔除并去重。
4.2 合成推理轨迹
用 DeepSeek-V4-Flash 为 Nano 模型生成 120 万条推理轨迹(3 个 SFT epoch),为 Ultra 生成 477,642 条(1 个 epoch)——模型越强所需轨迹越少。
4.3 双规模模型
| 模型 | 基座 | 参数 | 训练 |
|---|---|---|---|
| Nemotron-3-Nano-CC | Nemotron-3-Nano-30B-A3B | 30B 激活 3B(MoE) | SFT×3 epoch + GRPO |
| Nemotron-3-Ultra-CC | Nemotron-3-Ultra-550B-A55B | 550B 激活 55B(MoE) | 仅 SFT×1 epoch |
4.4 GenCorrect:反馈驱动的测试时迭代
每一轮:并行采样 200 个候选解 → 过滤/聚类/去重 → score-blind 排序选出 ≤10 个提交 → 从评测器获得部分分与反馈 → 连同历史信息生成修正候选进入下一轮。与纯 pass@k 的本质区别:每轮的采样条件分布被上一轮的真实评测反馈所改写——采样不再是独立同分布的,而是向"高分区"迭代收缩。
4.5 IOI 2026 的竞赛特化
在通用管线验证后,为现场评测做三项适配:换用 GLM-5.2 数据对 Ultra 追加 SFT、扩大最终轮提交选择集、NVFP4 量化加速推理。全程在比赛时间窗内、题目公开前完成提交。
五、评估指标与实验证据
通用管线:IOI 2025(300 分制百分化 + 官方金牌线 438.3/600)
| 配置 | IOI 2025 得分 |
|---|---|
| Nano 基座 Score@1 | 130 |
| Nano-CC SFT×3 epoch 后 Score@1 | 280 |
| Nano-CC + RL 后 Score@1 | 291 |
| Nano-CC + 5 轮 GenCorrect | 468(超金牌线) |
| Ultra-CC(纯 SFT)Score@1 | 304 |
| Ultra-CC + 5 轮 GenCorrect | 502 |
LiveCodeBench Pro Pass@1:Nano 从 17.6%→70.7%(SFT);ICPC 2025:Nano 解题数 8.6→9.4(金牌队=9 题)。
焦点结果:IOI 2026 现场前瞻评测
| 系统 | 得分(/600) | 奖牌级 |
|---|---|---|
| 人类最高分选手 | 498.27 | 金牌 |
| 官方金牌线 | 361.12 | — |
| Ultra-CC 现场运行 | 535.40 | 金牌(+37.1 超人类冠军) |
| Ultra-CC 通用 GenCorrect 管线(5 次独立运行) | 521.72(495.0–545.8) | 金牌 |
实验设计为什么有证明力:(1) 前瞻性——提交发生在题目公开前,杜绝了事后调参的空间;(2) 规则对齐——与人类相同的时限、提交平台、网络限制;(3) 通用管线 5 次运行的区间(495–545.8)包含并支撑了现场结果(535.4 在区间内、高于均值 13.68),说明现场成绩不是一次性运气。
六、效果优势的根源解释
这份报告最有价值的部分是把金牌分解成三个可分离的机制:
机制一:SFT 注入算法模式与实现能力(增益大头)。 Nano 的 Score@1 从 130→280 全部来自 SFT;LCB Pro 从 17.6%→70.7%。机制上,竞赛代码是高度模式化的长尾知识——经典算法的识别线索、实现模板、边界条件处理——这些从基座模型的通用先验中"零样本"引出的代价极高,SFT 把它们直接写成参数。增益集中在第一个 epoch、第三个 epoch 后饱和,符合知识注入的典型学习曲线。
机制二:RL 只在能力边界附近打磨(增益小但真实)。 GRPO 把 IOI 从 46.7%→48.5%。为什么这么小?论文的机制归因非常清晰:二值奖励下,GRPO 的学习信号只来自"rollout 组内同时有对有错"的题目——SFT 之后,模型会的题全对(无信号)、不会的题全错(也无信号),只有边界上的题目提供梯度。加上 255K token 的长 rollout 只有终端一个奖励,信用分配极度稀疏。另一个关键消融:从基座直接做 RL 也能涨(21.7%→24.9%),但远低于"先 SFT 再 RL"(48.7%)——RL 无法替代 SFT 注入的知识,它只能精修 SFT 已建立的能力边界。
机制三:测试时计算放大模型间差距(并行采样是放大器)。 最反直觉的发现:Score@1 上 Ultra 只比 Nano 高 2.2pp(约 13 分),但 Score@200 上 Ultra 505 vs Nano 461(差距 44 分),5 轮 GenCorrect 后差距进一步拉大到 33.8 分(502 vs 468)。机制:并行采样的命中率取决于模型解空间的"正确解密度"——更强的模型采样 200 个解时高分解的绝对数量更多,评测反馈的每轮修正起点就更高,迭代复合效应随轮次放大。这解释了"纯 SFT 的 Ultra 反超 SFT+RL 的 Nano":RL 给 Nano 加的 11 分(Score@1),被 Ultra 在采样分布上的结构性优势碾压。当推理预算充足时,基座能力差经过并行采样与迭代修正的两次放大,远大于后训练策略差异。
反事实证据:Nano 没有 GenCorrect 只有 291(金牌线下 147 分);Ultra 没有测试时计算只有 304。两条反事实都远够不到金牌——金牌 = 知识注入(SFT)× 采样放大 × 反馈迭代,三者是乘法关系而非加法关系。
七、必要知识反推
领域知识层:
- 竞赛编程的题型学与评分协议:IOI 的子任务部分分结构(这让"部分分反馈"可用)、ICPC 的二值判定(反馈信息量低)、时间/内存限制的语义——GenCorrect 的迭代设计直接依赖"IOI 有部分分"这一事实。
- 竞赛题数据工程:题面/测试/参考解的格式差异、评测环境的沙箱化、防数据污染的题目级去重。
方法论知识层:
- SFT/RL 在能力获取上的分工理论:SFT 管知识注入、可验证奖励 RL 管边界精修——这个判断需要理解 GRPO 组内相对优势的信号结构。
- 测试时计算缩放律(Snell et al.):并行采样与序列修正的预算分配理论。
- 合成数据蒸馏的质量-数量权衡:教师模型选择、执行验证过滤、按学生规模配轨迹量。
工程知识层:
- 大规模评测沙箱:22000 题的自动化环境打包与校验管线(含 gpt-oss-120b 探针测试)。
- MoE 大模型的全流程训练基建(550B 级 SFT、NVFP4 量化推理)。
- 比赛日运维:现场提交管道、延迟控制、失败降级预案。
知识融合的关键节点:核心融合点是把"提交预算约束"从规则背景升格为算法设计输入——GenCorrect 的"200 采样收敛为每轮 10 提交"只能来自对 IOI 评分协议的深入理解与测试时计算理论的结合,纯 ML 视角会做成无预算的 pass@k,纯竞赛视角想不到用评测反馈改写采样分布。第二个融合点是 RL 增益小的诚实归因:需要同时懂 GRPO 的信号力学(组内需有对有错)与竞赛能力分布的实态(SFT 后两极分化),才能把"小增益"解读为机制必然而非调参失败。
八、论文中可以提取的通用性灵感
后训练组件的分工:注入靠 SFT,精修靠 RL
- 核心思想:可验证奖励 RL 的信号来自"组内分歧",因此它天然只能作用于能力边界;指望 RL 从零教会领域知识是不现实的排序。
- 论文证据:RL 从基座出发只能到 24.9%,从第三个 SFT epoch 出发到 48.7%;SFT 本身贡献 130→280。
- 推广场景:领域模型训练的预算分配(先把 SFT 数据做到饱和再上 RL);评估"RL 增益小"的论文时先检查 SFT 饱和度;agent 技能训练的分级设计。
反馈可用的评测是测试时迭代的燃料
- 核心思想:测试时计算扩展的上限取决于反馈信号的信息量——部分分结构让 IOI 的迭代修正远比 ICPC 二值判定更有效。
- 论文证据:IOI 上 GenCorrect 加 177 分且 5 轮不饱和;ICPC 上 2 轮后即平台(9.4 题不再涨)。
- 推广场景:产品设计评分量表(细粒度 rubric 支持迭代改进);模型训练奖励设计(保留中间信号);自动化系统的错误反馈通道建设。
并行采样会放大而非缩小基座差距
- 核心思想:采样预算是基座能力的放大器——正确解密度高的模型在 pass@k 下优势被拉开,后训练策略的小差异会被推理配置淹没。
- 论文证据:Score@1 差 13 分 → Score@200 差 44 分 → GenCorrect 后差 33.8 分(绝对分差)。
- 推广场景:模型选型时按"实际部署的采样配置"评基准而非 Score@1;agent 系统设计先定推理预算再定模型档位;benchmark 报告应包含多采样点曲线。
前瞻性评测是 AI 能力声明的金标准
- 核心思想:题目公开后的刷分存在过拟合空间;只有"见题前提交、与人类同规则"的前瞻评测才能支撑"超越人类"级别的声明。
- 论文证据:IOI 2026 现场运行 535.4 分,且通用管线 5 次独立运行的区间(495–545.8)为其提供统计背书。
- 推广场景:AI 竞赛结果报道的甄别标准;企业模型采购要求的评测协议;学术基准的"动态题库"设计。
数据环境校验是被低估的组件
- 核心思想:训练数据的可信度不等于题目本身正确——评测环境的 bug(坏测试、格式错误)会静默污染 RL 奖励与评估;用"已知对/错解双向探针+模型探针"做环境级校验是必要工序。
- 论文证据:论文专设环境验证节:参考解必须得预期分、已知错解必须失败、gpt-oss-120b 候选解全量跑测揪坏题。
- 推广场景:企业评测集建设流程;RLHF 奖励模型的覆盖测试;公开 benchmark 使用前的健康检查。