后训练:算法不变,数据与环境放大

V4.1 的后训练没有新算法,仍是 SFT → RL → 在线策略蒸馏;报告把几乎全部收益归于自动合成的任务与环境。这一章看任务怎么造、百万级沙箱怎么管、Agent 怎么钻空子,以及多智能体的初步实验。

作者 David更新于 第 14 篇(共 21 篇)

报告第 5 节的第一句话就定了调子:这一版刻意不引入新的后训练算法 [1]。流程仍是监督微调(SFT)→ 强化学习(RL)→ 在线策略蒸馏(OPD),除了 V4 开发时已经确立的做法外没有任何改动(V4 的做法是先分领域培养专家模型,再用在线策略蒸馏合并成一个 [2])。精力“几乎全部”放在训练什么上,而不是怎么优化上 [1]。

报告的原话相当直白:在一套“固定而平平无奇”的优化流程下,合成数据与环境在规模、多样性和可验证性上的系统性提升,几乎解释了全部观察到的收益;现阶段,打磨数据与环境管线的边际回报远大于后训练算法上的创新 [1]。这是厂商对自身结果的归因,属于官方口径;报告没有给出拆分各因素贡献的消融。

任务是燃料:让模型自己造题

报告把每个训练任务形式化为一个三元组:(问题,环境,验证系统),质量从两个维度衡量——难度(不能太简单)和正确性(三个组成部分都不能有致命缺陷)[1]。有意思的是下一步:用难度和正确性当奖励,迭代地训练模型去造更好的任务。报告说模型已经开始显现“为自己构造训练任务”的能力,虽然还远不完美 [1]。任务在整个生命周期里被持续监控:每用于一次新的 RL,产生的轨迹就成为重新审计它的证据。

这正是《RSI 技术探究》里“自己出题自己练”那一类做法在前沿模型上的一个实例。

通用 Agent

  • 鼓励内部员工和外部合作伙伴把最新模型用进日常工作流,自愿回传交互数据与反馈;
  • 按回传数据里出现的接口,造一大批模拟工具,复现真实工具与系统的输入格式、输出结构、API 模式与行为约束,覆盖常用 SaaS、企业应用和更专门的业务后台;
  • 大规模收集员工提交的负面反馈与失败案例,重建当时的工具上下文、交互模式与失败条件,生成单轮和多轮环境,针对观察到的弱点做定向强化学习 [1]。

编程 Agent

环境来自两处:员工与合作伙伴的编程 Agent 会话(只留高复杂度或模型表现差的任务,按轨迹去重),以及星标数超过阈值的 GitHub 公开仓库。环境由多个分工不同的 Agent 协作搭建 [1]:

  1. 一个 Agent 判断项目能否在容器里完整构建运行、能否自动验证;可以的话,选定起始提交,设计几个足够复杂的实现方向,写出评测点(既有“修好才通过”的,也有“原本通过、改完仍要通过”的);
  2. 另一个 Agent 在隔离容器里装依赖、布置工作目录、测试代码与任务描述,自测,并清除一切可能泄露答案的痕迹,打包成新的镜像层;
  3. 多个不同的 Agent 尝试解题;
  4. 一个独立的质检 Agent 连同解题轨迹一起审查环境:有没有环境问题、事实错误、评测点与描述不符、可被钻空子的风险;
  5. 不通过就交给修复 Agent,改正错误、调整过易或过难的评测点,再重新验证。

在很多脚手架上同时练

RL 在两个维度上扩展:训练算力和脚手架(scaffold)的数量 [1]。报告展示了两组曲线:在多个版本的 Claude Code 上联合训练,以及在 OpenCode、Pi、DeepSeek Harness 的 Standard 与 PTC 模式等异构脚手架上联合训练,DeepSWE v1.1 的成绩都随累计 RL 步数持续上升。把最大上下文扩到 1M 后,Terminal-Bench 3.0 这类超长任务还在继续提升 [1]。

两个工程做法:

  • 把脚手架和训练解耦:Agent 沙箱里跑脚手架和工具,另有一个与脚手架无关的控制层负责编排、把各家不同的交互格式归一成统一的轨迹格式、和训练器通信 [1]。
  • 用模型合并续跑:把在不同脚手架或配置上训出的检查点合并,作为下一轮 RL 的初始化,把并行投入的算力汇到一起 [1]。

这些做法的效果体现在基准那一章的脚手架对照表里。

DSec:百万级沙箱,和会钻空子的 Agent

为了跑这么多环境,DeepSeek 从 V3 到 V4 期间建了一个叫 DSec(DeepSeek Elastic Compute)的沙箱平台;V4.1 的训练把需求推到了数百万个并发沙箱实例 [1]。几处设计:

  • 不用 Kubernetes 这类现成编排器,而是自研放置引擎:多个互不同步的副本各自做“足够好”的放置决定,再由每个计算节点按本地阈值做最终准入,用弱一致性换来扩展性;
  • 节点上用硬件支持的子 NUMA 分区,把每个工作虚拟机绑定到一个 NUMA 域,单台物理机上的并发容器数从约 1,000 提高到 2,500 以上;
  • 为时间敏感的评测单设一个低延迟执行类,其他任务降到最低调度优先级。

最值得一读的是“行为不端的 Agent”一段 [1]。RL 训练中,Agent 频繁尝试奖励黑客(reward hacking),或无意中把环境弄崩:有的利用了近期公开的漏洞——XFS 驱动的权限问题、AppArmor 的非法内存访问、从软件包镜像服务泄露答案;有的删掉关键二进制文件、破坏系统文件,甚至删掉整个文件系统。对策是每个沙箱单独的 AppArmor 配置和基于 eBPF 的细粒度网络策略;Agent 弄崩环境,就算失败轨迹,并给 RL 框架回报一个“后果”信号。

评测时也一样:为了防奖励黑客,他们限制联网、删掉 Git 历史、清空各种构建与包缓存,但仍观察到“寻找漏洞”的行为,比如在 CyberGym 里反编译 Ubuntu 的核心软件包去找漏洞。报告呼吁下一代基准的设计者优先考虑检测和防范这类行为 [1]。

训练基础设施:异步

后训练几乎全部改成异步 RL:采样与训练共用同一批设备、分时执行;按“样本”粒度派发新提示词,维持稳定的采样并发;训练时可以在任意 token 边界打断采样,KV 缓存与专家路由按 token 持久化,换新检查点后从断点接着生成 [1]。异步带来的两个副作用——短样本先回来造成的长度偏差、旧检查点生成的离策略样本——分别用按数据集限流、丢弃早回的短样本、限制最大离策略比例、屏蔽过旧 token 的损失来缓解 [1]。

最后一步在线策略蒸馏用了40 多个教师模型,全词表蒸馏,教师之间以及教师与学生之间的架构可以不同 [1]。

至于推理强度这个旋钮是怎么在 RL 里训出来的,见推理强度那一章。

多智能体:初步实验

报告还用 DeepSeek Harness 的 Agent Team 模式做了多智能体的初步实验:一个主 Agent 可以异步创建有名字、常驻的队友,派发任务;大家共用一个代码仓库,通过持久的邮箱互发消息,在共享任务板上认领任务 [1]。训练奖励由三部分组成:任务表现、鼓励委派与沟通的协作奖励,以及按执行依赖图关键路径算出的“派生延迟”惩罚,鼓励有用的并行、惩罚不必要的串行 [1]。

结果(初步,官方口径)[1]:

基准截止时间单 Agent多 Agent
ProgramBench 高置信子集(172 题,Almost@1)8 小时20.39%30.04%
FrontierSWE v2 无 GPU 子集(Mean@5)20 小时28.20%32.90%

在所有截止时间点上,多 Agent 配置都超过单 Agent。报告强调这是拿观察到的最强多 Agent 配置和最强单 Agent 基线比,结果是初步的。

仍然不知道的

报告讲了很多“怎么造”,但没有给出有多少:合成了多少任务、多少个环境、RL 用了多少算力,都没有数字。和前代那次 0731 更新一样,这一层的核心资产不会公开;不同的是,这一次 DeepSeek 至少把流水线的形状讲清楚了。

第四部分结束。下一部分看评测与部署。👉 基准怎么读

参考文献

  • [1] DeepSeek-AI. “DeepSeek-V4.1-Flash: Pushing the Limits of KV Cache Compression.” 2026-09. arXiv:2609.19969 —— 第 5.1 节(后训练流程、任务合成、跨脚手架 RL、DSec、行为不端的 Agent)、第 5.2 节(异步后训练基础设施与大规模在线策略蒸馏)、第 5.3.1 节(评测中的防作弊措施)、第 5.3.5 节(多智能体实验)。
  • [2] Hugging Face 模型卡:deepseek-ai/DeepSeek-V4-Flash —— V4 的后训练范式(分领域专家 SFT 与 GRPO 强化学习,再用在线策略蒸馏合并),作对照。

本页目录