变化点
2026.09 · Step 5 Preview
- 扩展至
1M上下文,支持文本、图像与视频输入。 - 提供可调推理投入,面向更长的多模态任务。
2026.05 · Step 3.7 Flash
- 强化视觉工具交互,并引入
Advisor Mode。 - 在困难节点调用更强顾问模型,辅助任务决策。
2026.02 · Step 3.5 Flash
- 以
196B-A11B、混合注意力和 MTP 提高模型效率。 - 结合领域教师、蒸馏与通用 RL;MIS-PO 控制长轨迹策略偏移。
2026.01 · Step3-VL-10B(视觉分支)
- 在小型 VLM 上加强联合预训练与 PPO,提升视觉推理。
- PaCoRe 并行生成候选推理,再整合候选信息。
(2609) Step 5 Preview (1M, 多模态输入)
参考链接
定位与输入
- 面向编程和专业知识工作,API ID 为
step-5-preview。 1M tokens上下文;文本、图片、视频共同输入,输出文本。- 图片支持
low / high细节级别,便于结合代码、文档、图表与操作记录分析任务。
推理预算
reasoning_effort=low / medium / high,按任务复杂度分配思考强度。- 长窗口用于保留资料和交互历史;推理强度控制每次回答的计算投入。
Agent 接口
- 模型根据工具描述生成调用参数;应用执行工具,将结果送回模型继续决策。
- 支持 JSON Mode / JSON Schema,约束结构化输出;提示缓存复用重复输入。
AA 评测(2026.09,Index v4.3.2)
- Intelligence Index
44,综合知识、推理、Code、Agent 与长上下文任务。 - 输出速度约
100 tokens/s;该评测集合的加权单任务成本约$0.71。
效率解读
- AA 同时记录了较高输出量;生成速度需要结合推理长度,才能判断整个任务的耗时。
- Agent 还包含工具执行与重试,实际使用时应一起观察完成率、总用量与端到端时间。
(2605) Step 3.7 Flash (视觉工具, Advisor Mode)
参考链接
模型结构
196B语言主干 +1.8B视觉编码器,单 token 激活约11B,支持256K上下文。45层,每层288个路由专家 / Top-8,另有共享专家;延续3:1 SWA / Full Attention。- Head-wise Attention Gate 与
3层 MTP控制计算成本;提供low / medium / high推理强度。 - 工作重点是视觉工具、跨 Harness 执行和选择性顾问协作。
外部知识与图像细节
- Visual Search:从图像提取线索,搜索候选对象和相关知识,补充长尾实体的信息。
- Python 图像工具:裁剪、缩放、标记局部图像,重新观察小字与空间关系,再继续推理。
- 搜索、图像操作和 Code 工具可交替调用,视觉信息直接参与后续任务执行。
GUI 与 Harness 适配
- 基于截图、界面草图完成代码生成、工具操作与结果检查,支持 Phone-use 跨应用任务。
- 适配 Claude Code、KiloCode、Hermes Agent、OpenClaw 等工具协议,减少对单一交互模板的依赖。
- SimpleVQA+Search
79.2、V*+Python95.3;Android Daily61.9,分别检验视觉工具与跨应用操作。
执行与顾问分工
- Step 3.7 负责读取反馈、修改、验证和持续执行;规划困难或反复失败时,才调用更强顾问。
- 顾问返回分析建议后,由 Step 3.7 继续操作;常规步骤仍使用 Flash 模型。
- 将大型模型的计算集中在少量困难决策,控制完整任务的执行成本。
SWE-bench Verified 成本效果
- Step 3.7 单独执行:
73.7分 / $0.12;加入顾问:76.3分 / $0.19。 - 同次实验中,Opus 4.6 单独执行:
78.7分 / $1.76,成本为平均单题 API 消耗。 - 选择性升级提高了完成率,同时保留了 Flash 承担主要执行步骤的成本优势。
Step 3.5 → Step 3.7
- SWE-bench Pro
51.3 → 56.3,Terminal-Bench 2.1 约53.4 → 59.5。 - 发布方固定版本的 Toolathlon
33.3 → 49.5;增益同时覆盖代码和多工具执行。
跨 Harness 的改善与回退
- 内部 Step-SWE-Bench 平均分
56.5 → 67.1;RooCode43.0 → 64.5,OpenClaw47.0 → 67.0。 - Claude Code 为
73.0 → 71.5;主要变化是不同框架间更均衡,仍有特定框架的回退。
(2602) Step 3.5 Flash (196B-A11B, MIS-PO)
🌺 论文摘要
参考链接
问题背景
- Agent 推理成本高:长上下文、多轮工具调用使延迟不断累积,需要同时优化模型能力和生成速度。
- 长轨迹 RL 不稳定:采样与训练的概率偏差会放大梯度波动,MoE 路由进一步增加这种偏差。
核心方法
- 高效 MoE:
196B-A11B,3:1 SWA/Full Attention,配合 Head-wise Gate 与MTP-3。 - 训练流程:约
17.6T PreTrain→750B MidTrain→ 两阶段 SFT → 领域 RL → 自蒸馏 → 通用 RL。 - MIS-PO:用
Token Mask + 轨迹 Mask筛选概率偏差,再用 Actor-Critic 更新保留的数据。 - 奖励与数据:可验证奖励、GenRM 偏好奖励、真实工具执行反馈;构建约
50K可运行代码环境。
模型效果(Step 3.5 Flash + 完整后训练)
- Code Agent:SWE-bench Verified
74.4,Terminal-Bench 2.051.0。 - 推理与搜索:LiveCodeBench v6
86.4;BrowseComp51.6,增加上下文管理后69.0。
重要结论
- RL 稳定性:MIS-PO 对照实验中梯度波动更小、熵下降更慢,长时间训练仍能持续提高奖励。
- Agent 推理预算:Terminal-Bench 限制单轮输出,比减少交互轮数造成的损失更大。
核心贡献
- 给出覆盖高效架构、领域专家整合、稳定 RL 和可执行 Agent 数据的完整基模训练方案。
- 提出 MIS-PO,把概率比用于样本筛选,减少连续重要性权重带来的梯度方差。
未来方向
- 压缩冗长思考,提高 On-policy Distillation 效率,扩展到专业工程与科研任务。
问题背景
长上下文与多轮生成成本高
- Agent 反复读取历史、生成推理、执行工具;单轮延迟会累积到整个任务。
- 采用
SWA + 稀疏 MoE + MTP,分别减少注意力开销、FFN 计算和逐 Token 生成延迟。
领域能力整合与长轨迹优化困难
- 直接混合训练多个领域,容易牺牲专长;分别维护多个专家,又增加持续迭代成本。
- 长轨迹中的概率误差会影响策略更新;采用
专家 RL → 自蒸馏 → 通用 RL,并用 MIS-PO 稳定更新。
核心方法
高效 MoE 架构
局部与全局注意力
- 主干
45层:首层 Full Attention,后续重复3层 SWA + 1层 Full Attention。 - SWA:每层读取最近
512 tokens;Full Attention:周期性连接全部历史。 - 使用
GQA-8,让8个 KV heads对齐单节点8卡 Tensor Parallel。
容量补偿
- SWA 的 Query Heads 从
64增至96;局部窗口小,增加 Heads 的额外成本有限。 - Head-wise Gate:按输入控制各个注意力头的输出,减弱无关窗口信息。
- 相比固定 Sink Token,Gate 能随内容变化,不必把多余注意力始终分给同一个占位 Token。
模型规模
3层 Dense + 42层 MoE;每个 MoE 层包含288个路由专家 + 1个共享专家。- 每 Token 选择
Top-8路由专家;主干总参数196B,激活约11B。
两层负载均衡
- 专家层面:Loss-free Bias 调整路由选择,避免少数专家长期承接过多 Token。
- EP Group 层面:约束各卡上的专家总负载,减少同步时等待最慢 GPU。
- 全局专家使用均匀,仍可能出现某个 Micro-batch 跨卡分配不均,因此需要第二层约束。
训练方式
- 每个 MTP Head 使用
SWA + Dense FFN,预测更远一个位置的 Token。 - 大部分训练只启用
MTP-1;末期复制得到MTP-2/3,再联合微调。 - 对不同预测距离设置 Loss 权重,避免过度优化难度更高的远距离预测。
推理方式
- MTP 生成多个候选 Token,主模型并行验证;通过的候选一次提交,减少串行解码次数。
- SWA 保留标准注意力的 Mask 语义,便于实现候选树的并行验证。
预训练与上下文扩展
通用与代码数据
- StepCrawl:采集网页、PDF、ePub,经过质量过滤、站点分类、去重和清洗。
- Code:调整 OpenCoder 清洗策略,允许少量启发式规则违规,兼顾质量与覆盖面。
- 退火阶段提高高质量知识、推理和代码数据比例。
PR/Issue/Commit 数据
- 从
10+ stars的 GitHub 仓库收集变更记录,用git diff校验修改内容。 - 基础数据与 Benchmark 去重;PR 讨论和 Commit 转换为定位、修复等训练材料。
- 保留开发过程中的问题描述与修改上下文,补充单纯代码文件缺少的任务信息。
数据配置
32K阶段强化 Code、工具调用和开发流程数据,同时回放一部分预训练语料。128K阶段加入自然长文档、合成长推理、Code Agent 与 Search Agent 数据。- 回放通用语料,缓解专项数据比例突然增加造成的分布变化。
位置与路由配置
- 只调整 Full Attention 的 RoPE,SWA 保持固定局部窗口与原位置尺度。
- 冻结 MoE Router,关闭 EP Group Balance Loss,保留已有专家分工。
Muon 数值稳定性
- 使用 Polar Express 迭代计算近似正交更新;低精度累积误差可能触发异常更新。
- 仅将这部分迭代状态与中间计算改为
FP16,其余训练继续使用混合精度。
专家退化监控
- 路由频率正常,不代表专家仍有效:部分专家的激活、参数范数可能持续衰减。
- 显式缩放路由专家的聚合输出,平衡路由专家与共享专家的贡献。
- 监控每个专家的激活与参数范数,避免仅依据 Router 的 Token 计数判断健康状态。
异常定位
- 深层少数专家的激活快速增大,整体 Loss 和大部分专家的统计仍可能正常。
- 监控专家激活范数的
最大值 / 中位数,识别被平均值掩盖的异常。
处理策略
- 在 MoE FFN 的输出投影前,对中间激活做逐元素裁剪。
- 参数范数裁剪只能延缓异常;直接限制激活更有效,具体对照见关键结果。
Agent 数据与交互环境
行为构建
- 将工具使用拆成原子意图,用有限状态机
FSM约束意图之间的合法转移。 - 把工具调用逻辑与具体参数约束分开,再组合为更复杂的任务。
执行筛选
- 执行
采样 → 真实环境执行 → 确定性验证,拒绝无法执行或结果不符的轨迹。 - 得到
100K+高质量工具轨迹,避免模型凭空生成工具返回值。
环境构建
- 基于 SWE-factory 扩展环境搭建 Agent,执行安装依赖、运行测试与错误恢复。
- 用跨任务记忆检索历史成功案例;检测重复探索,减少无效循环。
- 清理构建轨迹中的临时故障与冗余操作,保留能完成环境搭建的有效过程。
任务训练
- 成功构建的环境作为修复、功能实现等任务的运行环境,由单元测试提供反馈。
- 环境构建与代码求解交替改进,持续扩充可用于训练的任务。
- 最终收集约
50K已验证环境,覆盖15K仓库与20+编程语言。
搜索任务
- 沿知识图谱扩展实体关系,结合多文档材料,构造需要跨网站检索的多跳问题。
- 用 DeepSeek-R1 无工具作答筛选,去掉仅凭已有知识即可回答的问题。
研究报告
- 按研究计划生成检索轨迹与报告,剔除偏离指定结构的样本。
- 联合模型判断与规则清洗,修正时间错误、混语和不规范表达。
上下文与工具格式
- 只保留最近一条用户指令对应工具轨迹的推理历史,兼顾跨轮连续性与上下文开销。
- 工具调用使用 XML,减少长字符串转义等格式错误。
环境与训练接口
- Session-Router 通过 Kubernetes 管理容器生命周期,借助 Tmux 保持会话状态。
- 训练覆盖 OpenHands、SWE-Agent、Terminus-2、Claude Code 等交互流程,减少对单一 Harness 的依赖。
- 训练端使用 Steptron;Attention 与 MoE 分开配置并行组,异步汇总细粒度监控数据。
分阶段后训练与 MIS-PO
第一阶段:多领域 SFT
- 覆盖数学、Code、STEM、逻辑、通用问答、Code Agent、Tool-use、Search Agent 和长上下文。
- 按任务难度筛选并平衡各领域比例,建立统一的交互与推理起点。
第二阶段:OOD 推理 SFT
- 加入约
30K专家级化学轨迹和合成算术任务,训练3 epochs。 - 引入与第一阶段不同的推理结构,为后续领域 RL 提供更丰富的探索起点。
领域 RL
- 从统一 SFT 模型出发,分别优化数学、Code、STEM、工具调用、长上下文、偏好和 Agent 推理。
- 每个专家使用对应任务和奖励,先提高领域能力。
自蒸馏与通用 RL
- 专家在与第一阶段 SFT 相同的 Prompt 分布上生成轨迹。
- 拒绝采样过滤混语、过度思考等行为,汇总为学生训练数据。
- 学生从
MidTrain Checkpoint初始化,学习各领域专家轨迹,再执行通用 RL。 - 整合的是专家生成行为,保留最终单模型部署方式。
RLVR
- 逻辑、指令遵循、Code 使用规则或执行检查器;STEM 使用模型 Verifier。
- 奖励来自任务是否完成,训练时通过 Critic 将回报转为 Token 级 Advantage。
Search 与 Research
- Search 按答案实体匹配打分,检验是否找到了目标信息。
- Research 按预设 Rubrics 检查报告,判断各要求是否满足。
- 对“部分满足”采用不对称二值映射,减少模糊等级与专家偏好不一致的问题。
成对比较
- GenRM 比较候选回答与固定参考回答,输出获胜置信度。
- 通过 Bradley–Terry 映射得到奖励;加入长度惩罚,抑制无效扩写。
- 对伪造引用、过度自信、混语等回答给零奖励。
MetaRM
- 另设 Verifier 检查 GenRM 的判断理由,识别“结论对、理由错”的偏好判断。
- 这类判断降低 GenRM 自身训练奖励,改善奖励模型的可靠性。
概率比定义
- Rollout Policy:推理引擎生成轨迹时使用的策略,并记录实际采样概率。
- Training Reference Policy:本次更新前的训练端模型快照,在同一历史上重新计算概率。
- 概率比衡量两个端对已采样动作的分布差异:
两级筛选
- Token Mask:保留
0.5 ≤ xₜ ≤ 2的位置,过滤局部概率偏差。 - 轨迹 Mask:保留
0.996 ≤ ρ̄(τ) ≤ 1.001的轨迹,过滤整体分布漂移。 - 示意:比值
0.25、4、1、1的几何平均为1;轨迹通过,但前两个 Token 被过滤。
更新目标
- Advantage:任务回报减去 Critic 对当前状态的价值估计,判断动作相对预期的好坏。
- 通过两级筛选的 Token 参与更新;未通过的位置梯度为零。
方法特点
- 蓝色 Mask 只取
0/1;保留样本按近似 On-policy 数据处理,不再乘连续 IS 权重。 - 红色 Advantage 为正,提高对应动作概率;为负,降低对应动作概率。
- 把概率比用于筛选,减少少数极端比值对梯度的放大。
上下文截断
- 因长度限制中断的轨迹,尚未获得最终结果;直接给零奖励会惩罚未完成的长推理。
- 对截断轨迹使用最后状态的
V(s_T)估计后续回报;正常结束仍使用任务奖励。
Routing Confidence
- 统计被选中专家的平均概率质量,监控路由选择是否确定。
- 低置信度时,小幅参数或计算误差更易改变路由,放大采样与训练偏差。
- 作者将其作为稳定性信号,辅助判断是否需要更严格的 On-policy 更新或 Routing Replay。
实验设置(PreTrain + MidTrain + SFT + RL)
✍️ 实验设置
基础模型与硬件
- Step 3.5 Flash:从头训练
196B-A11B主干;加入 MTP-3 后约198B-A13B。 4096张 H800,每节点8卡;训练采用PP=8, EP=8, ZeRO-1。
PreTrain / MidTrain
- PreTrain:
14.6T @ 4K→2T @ 4K→1T @ 32K,合计约17.6T tokens。 - MidTrain:
386B @ 32K→364B @ 128K;其中回放通用语料分别约81B / 10.5B。 - 优化器 Muon,
weight_decay=0.1, grad_clip=1.0;预训练2000步 warmup。 - 预训练学习率
2.5e-4 → 5e-5 → 2e-5;MidTrain2e-5 → 7.3e-6。
SFT
- 第一阶段约
871K条 / 7.23B tokens;第二阶段加入 OOD 推理数据,训练3 epochs。 seq_len=128K, global_batch=32, lr=1e-5→5e-6, warmup=3%。- 冻结 Router,关闭 EP Group Balance Loss,
MTP loss weight=0.1。
任务配置
- 推理:
256 prompts × 16 responses;偏好:512 × 8;工具调用:128 × 8。 temperature=1, top_p=1, max_seq_len=128K。
Actor-Critic
- 每批数据训练
1 epoch;Actor 分4个 mini-batches,Critic 分12个。 - Muon:
actor_lr=2e-6, critic_lr=5e-6, weight_decay=0.1。 - Warmup:Actor
20步,Critic50步;γ=1, λ=1,最终阶段kl_coef=0.001。 - MIS-PO:Token 比值范围
[0.5, 2],轨迹几何平均范围[0.996, 1.001]。
控制实验
- 架构消融使用
30B-A3B + 1.4T PreTrain + SFT,固定SWA window=512,关闭 MTP。 - Gate / Sink Token 对照采用
100B-A10B;RL 算法在内部 Dense 和 MoE 模型上比较。 - GSPO 对照改为 Actor-Critic,并使用相同的两级 Mask。
推理与代码生成
- AIME、IMO-AnswerBench、GPQA、HLE-text、LiveCodeBench v6;统计重复采样的平均
pass@1。 - 默认
temperature=1, top_p=1;仅 Full Attention 使用YaRN factor=2,上下文扩到256K。 - PaCoRe:额外测试四轮并行推理与汇总,每轮
4条候选;与常规推理分别报告。
Code Agent
- SWE-bench Verified:OpenHands CodeAct,
max_turns=350, temperature=1, top_p=0.95,重复4次。 - Terminal-Bench 2.0:修改版 Terminus-2,
16GB容器,max_turns=200, timeout=6h。 - Terminal 单轮输出
64K、总上下文256K;超限保留题目与最近一半历史,每题执行8次。 - Terminal 的检查器按题目要求校验、修订后执行评测。
搜索与上下文管理
- BrowseComp 常规搜索预算
400步;配置搜索、网页访问、学术检索、Python 和文件工具。 Discard-all配置:历史超过72K时重启搜索循环,最多1000步。
关键结果(Step 3.5 Flash + SFT/领域RL/自蒸馏/通用RL)
🍑 关键结果
Base 模型
- 代码基础较强:HumanEval
81.1,MultiPL-E HumanEval67.7,为 Code Agent 后训练提供基础。 - 知识能力仍不均衡:SimpleQA
31.6高于 DeepSeek-V3.2-Exp Base 的27.0,但 MMLU 等仍有差距。
完整后训练
- Code Agent:SWE-bench Verified
74.4,Multilingual67.4,Terminal-Bench 2.051.0。 - 推理能力:IMO-AnswerBench
85.4,LiveCodeBench v686.4;较小激活规模仍能支撑高强度推理。 - 跨 Harness:SWE-Agent
74.2,Claude Code72.0;能力并非只在 OpenHands 中有效。
RL 阶段对照
- IMO-AnswerBench
82.3 → 85.5;CF-Div2-Stepfun-cpp80.3 → 86.4。 - ARC-AGI-1
46.2 → 56.8,HLE-text19.9 → 23.3;RL 增益覆盖多个推理任务。
Terminal-Bench 2.0
- 单轮输出上限
64K → 16K,平均成功率51.0 → 48.0:长推理可能耗尽预算,来不及输出命令。 - 在
16K配置下再关闭历史裁剪,降至45.2;有效上下文管理能延长任务执行。 - 交互轮数
200 → 100,仅降至50.4;多数成功任务较早完成,单纯增加轮数收益有限。
BrowseComp
- 常规配置
51.6,启用Discard-all与更长搜索预算后69.0。 - 重置历史后可以重新组织检索路径,类似推理时重复尝试;增益同时使用了更多搜索计算。
PaCoRe
- 并行推理汇总后,IMO-AnswerBench
85.4 → 88.8,LiveCodeBench v686.4 → 88.9。 - 多条路径提供互补线索,但并非所有任务都受益:MRCR-8needle
28.8 → 26.3。
SWA 与 Gate
30B-A3B对照中,直接使用3:1 SWA/Full,LongCtx28.8 → 27.5。- 增加 SWA Heads 后恢复到
28.2,额外注意力成本很小;低成本架构需要相应容量补偿。 100B-A10B对照中,Head-wise Gate 的平均分64.4,高于 Sink Token 的62.5。
MoE 激活与 MIS-PO
- 激活裁剪能控制深层专家的异常范数;仅裁剪参数只能延缓复发,整体 Loss 不足以判断稳定性。
- MIS-PO 相比 PPO 的梯度波动更小、熵下降更慢;在作者的 GSPO 对照中也获得更高训练奖励。
- 截断 Value Bootstrap 在约
20%轨迹截断时仍能稳定训练,减少“未完成即失败”的偏差。
奖励模型
- STEM 模型 Verifier 相比直接使用 math-verify,内部对照平均提升约
2个百分点。 - MetaRM 加入理由检查后,各测试指标提升约
0.5~3个百分点;奖励判断过程本身也需要监督。
未来方向
⛳ 未来方向
推理效率与能力整合
- 压缩思考:达到相近质量时,生成轨迹仍长于 Gemini 3.0 Pro;减少重复推理和无效 Token。
- On-policy Distillation:提高专家行为整合的样本效率,兼顾通用能力与领域深度。
专业 Agent 与稳定性
- 专业任务 RL:从学术 Benchmark 扩展到工程、科研等真实专家任务。
- 分布外稳定性:改进长对话与专业领域中的重复推理、混语、时间和身份判断问题。
(2601) Step3-VL-10B (PPO, PaCoRe)
🌺 论文摘要
参考链接
问题背景
- 小型 VLM 能力不足:精细感知与复杂推理需要兼顾,单纯延长回答不一定改善视觉理解。
- 感知探索缺少显式轨迹:OCR、定位等任务常直接输出答案,难以通过单条长思维链继续扩展能力。
核心方法
- 模型架构:
PE-lang 1.8B + Qwen3-8B,全局图与局部切片结合,Projector 压缩视觉 Token。 - 训练流程:
1.2T全参数联合预训练 → 两阶段 SFT →PPO + GAE多模态 RL。 - 数据筛选:检查答案可验证性、图文相关性和任务难度,保留部分尝试成功的
some-accept样本。 - PaCoRe:并行生成视觉解释与推理候选,再训练模型交叉检查、综合答案。
模型效果(Step3-VL-10B,SeRe → PaCoRe)
- 视觉推理:MathVision
70.81 → 75.95,MMMU78.11 → 80.11。 - 空间与感知:All-Angles-Bench
57.21 → 64.71,OCRBench86.75 → 89.00。
重要结论
- RL 不一定增加回答长度:推理任务倾向延长,定位与 OCR 则可能在准确率提高时缩短输出。
- 并行候选有助于精细感知:PaCoRe 的收益集中在需要检查多种视觉解释和空间关系的任务。
核心贡献
- 给出小型 VLM 的完整数据、联合训练与 RL 路线,并将 PaCoRe 用于可扩展的视觉推理。
未来方向
- 蒸馏并行探索轨迹,降低推理成本;增加 RL 投入,并扩展视频、动作和物理交互。
问题背景
视觉基础与语言模型对齐不足
- 图像编码器擅长视觉识别,不代表输出特征适合语言推理。
- 使用已与语言对齐的 PE-lang,并在预训练中同时更新视觉编码器与语言模型。
单路径推理难以覆盖视觉歧义
- 对象边界、遮挡、文字和空间关系可能存在多种解释,单次识别容易遗漏。
- PaCoRe 保留多次视觉判断,再通过对照与验证完成答案整合。
核心方法
模型架构与预训练
视觉输入
- 全局图
728×728保留整体布局,局部切片504×504提供小字和局部细节。 - 图像编码器输出经两次
stride=2的 Projector 下采样,视觉 Token 数约压缩16倍。 - Patch 行末加入换行 Token,保留二维排列信息;位置编码采用标准
1D RoPE。
联合训练
- 使用语言对齐版 PE-lang,连接 Qwen3-8B Decoder。
- 预训练全程解冻所有模块,让视觉表示、Projector 和语言推理共同适应多模态输入。
知识与教育
- 汇总网页图文、图像描述和定向检索数据,用 CLIP 聚类重采样改善长尾概念覆盖。
- 教育数据约
15M,覆盖 K-12、大学 STEM、医学、金融等领域。 - 几何图、化学结构、考试图像结合真实与合成数据,强化需要读图的推理。
OCR 与图像转代码
- OCR 包含约
10M真实图像、30M合成图像,并覆盖约80M整页文档。 - 渲染 Markdown、LaTeX、HTML、Matplotlib 等,构造图像到文本或代码的监督。
- 对引用、链接和布局做渲染处理,使图像内容与目标文本一致。
精细感知
- Grounding 与 Counting 约
400M样本,使用框、点和检测标注构造定位及计数任务。 - VQA 结合图像问答与 OCR 问答,训练模型把局部识别结果用于回答问题。
GUI
- 约
23MGUI 样本,覆盖移动端与桌面端、200+应用。 - 同时提供页面描述、元素定位、操作轨迹;轨迹使用 CLICK、SLIDE、TYPE 等
12种原子动作。 - 动作与 Grounding 标注共同生成,保证“点击对象”与图像位置对应。
多模态 SFT
蒸馏与清洗
- 汇总数学、Code、科学、逻辑及视觉任务 Prompt,由内部强模型生成回答。
- 规则过滤重复等退化输出,用精确匹配与
64-gram匹配清除 Benchmark 污染。
阶段安排
- 阶段1:文本/多模态样本约
9:1,重点建立推理与语言能力。 - 阶段2:比例调整为
1:1,加强视觉信息参与推理的能力。 - 使用不同领域采样权重,平衡任务覆盖与训练强度。
多模态 RL 与奖励
可靠监督
- GPT-OSS-120B 对同一问题独立验证
4次,仅保留判断一致的样本。 - 用早期 Step3-VL-10B 检查图像与问题的关联,过滤无关图片和图文错配。
难度筛选
- 每题生成
24条 rollout,选择有成功也有失败的some-accept样本。 - 去掉全会与全不会的题,保留能够提供学习信号的任务。
- 数据覆盖数学、几何、物理、图表、谜题、OCR 与 Grounding。
感知与推理检查
- Grounding 按
IoU或位置距离给奖励,位置越准确,奖励越高。 - 一般视觉问答使用 GPT-OSS-120B 检查语义等价与推理一致性。
- 正确答案若依赖错误理由,也要扣分,避免只匹配最终答案。
Actor-Critic 分工
- Verifier 判断本次答案质量;Critic 估计当前推理状态能取得的预期回报。
GAE将实际回报与预期的差异转成 Token 级 Advantage,再更新生成策略。- 示意:正确回答奖励
1、Critic 预期0.3,对应回报优势为+0.7。
GenRM
- 对无法确定标准答案的开放问题,使用强模型回答作为参考。
- GenRM 比较候选与参考,先生成判断理由,再输出质量分数。
行为约束
- 对混语、问答语言不一致和无依据的确定判断施加惩罚。
- 发现伪造引用或链接时给零奖励,减少通过错误内容迎合奖励模型。
阶段安排
- RLVR:先优化有标准答案的多模态任务,强化推理与感知正确性。
- RLHF:从 RLVR 模型继续训练开放问答,优化回答质量与行为约束。
- 两阶段只更新 Decoder,视觉 Encoder 保持冻结。
稳定更新
- 使用
PPO 变体 + GAE,γ=1, λ=1,由 Critic 提供基线。 - 用阈值
C=8的截断权重处理训练端与推理端概率不一致。 - 后续 PaCoRe 阶段改为严格 On-policy 训练,单独学习候选综合行为。
并行协调推理
推理流程
- 对同一图片与问题,先独立生成
16条SeRe 候选。 - 将候选作为 Reference Responses,与原问题共同输入模型。
- 模型检查候选中的证据、坐标与推理差异,重新生成最终答案。
作用机制
- 并行候选增加视觉假设的覆盖,综合阶段处理候选之间的分歧。
- 例如定位任务中,比较多次预测的坐标与所指对象,检查是否定位到同一目标。
- 最终输出来自重新推理,参考答案不能直接当作正确标签。
训练样本构建
- 复用难度筛选时每题的
24条 rollout,建立候选消息缓存。 - 抽取
16~24条消息作为综合上下文,再生成综合回答。 - 再次保留综合阶段仍有成功、有失败的题,避免参考答案让任务过于简单。
训练目标
- 对综合后的最终回答使用可验证奖励,训练模型选择证据、交叉验证与纠错。
- 通过 PPO 学习协调行为,推理时再使用并行候选与综合流程。
实验设置(联合预训练 + SFT + 三阶段RL)
✍️ 实验设置
基础模型
- PE-lang 1.8B + Qwen3-8B,总规模约
10B。 - 预训练解冻全部参数;RL 冻结视觉 Encoder,仅更新 Decoder。
PreTrain / SFT
- 联合预训练
1.2T tokens:900B广覆盖数据 →300B高质量数据。 AdamW, batch=8192, seq_len=4096, lr=5e-5→1e-5→6e-6, weight_decay=0.01。- SFT 两阶段分别约
190B / 36B tokens;batch=32, seq_len=128K。 - SFT:
warmup=200步, lr=1e-4→1e-5,领域采样权重不同。
RL 超参
- RLVR:
600步, 512 prompts × 16 rollouts, max_seq_len=24K。 - RLHF:
300步, 512 × 8, max_seq_len=32K。 - PaCoRe:
500步, 64 × 16, max_seq_len=64K,严格 On-policy。 actor_lr=2e-6, critic_lr=5e-6, mini_batches=4, γ=1, λ=1。
评测任务
- 视觉推理:MMMU、MathVision、MathVista;感知:OCRBench、CountQA、空间理解等。
- 文本推理:AIME、GPQA、LiveCodeBench;GUI 使用 ScreenSpot、OSWorld-G 等定位评测。
推理方式
- SeRe:单条推理,最大长度
64K;PaCoRe:16条候选 + 综合回答,上下文128K。 temperature=1, top_p=1, top_k=0;两种模式分别统计。
消融设计
- PE-lang 与 DINOv3 使用
300M视觉编码器对比;最终模型使用1.8B PE-lang。 - 另比较 Muon / AdamW 与是否使用 DeepStack,分析各模块的训练收益。
关键结果(Step3-VL-10B + PPO/PaCoRe)
🍑 关键结果
视觉推理
- SeRe → PaCoRe:MathVision
70.81 → 75.95,MMMU78.11 → 80.11。 - All-Angles-Bench
57.21 → 64.71;对空间关系的多种解释进行核对,收益更明显。
感知与文本任务
- CountQA
33.69 → 38.29,OCRBench86.75 → 89.00,说明收益不限于长数学推导。 - AIME2025
87.66 → 94.43;LiveCodeBench75.77 → 76.43,不同任务的增益差异较大。 - PaCoRe 使用更多候选和综合计算;部分识别任务提升很小,不能假定所有任务都适合扩展并行预算。
回答长度与能力
- RLVR 前
200步提升较快,之后继续稳定增长;感知、OCR、定位等指标同步改善。 - 推理任务的轨迹趋长,确定性感知任务趋短;总体长度不变,仍可能代表能力提升。
- 作者提出 Missing Trace 假设:感知数据缺少显式检查过程,限制了单路径感知推理扩展。
模型组件
300M编码器对照中,PE-lang 的 OCRBench70.1,DINOv3 为57.6;语言对齐有利于多模态学习。- Muon 对部分长尾知识有效,但切换优化器需要较长预热;最终选用 AdamW。
- DeepStack 加快收敛,却没有稳定转化为下游收益;最终模型未采用。
未来方向
⛳ 未来方向
RL 与推理效率
- 增加 RL 投入:同时扩展顺序推理深度与并行探索宽度。
- 自蒸馏:把候选比较和交叉验证轨迹用于训练,让单次推理吸收并行探索的能力。
- 减少过度思考:压缩重复步骤,提高单位 Token 的有效信息。
物理交互与多模态扩展
- 从静态数字任务进一步扩展到视频、动作和物理模拟环境。
- 通过主动交互获得更可靠的物理经验,改善仅靠图文材料学习的局限。
(2507) Step-3 (MFA + AFD, 解码系统)
🌺 论文摘要
参考链接
问题背景
- 参数少不等于推理便宜:Attention 的计算、KV 读取和 MoE 通信,可能抵消稀疏模型节省的计算。
- Attention/FFN 瓶颈不同:统一部署难以同时满足两者的硬件需求与低延迟要求。
核心方法
- 模型架构:MFA 低秩 Query 与共享 KV,结合 MoE 控制注意力计算、缓存读取和专家计算量。
- AFD 分离部署:Attention 与 FFN 独立选择 Batch、并行方式和硬件,三阶段流水线重叠计算。
- 软硬件协同:按显存与网络约束选择稀疏度;StepMesh 基于 GPUDirect RDMA 隐藏通信开销。
模型效果(Step-3 + AFD 解码系统)
32张 Hopper、4K 上下文、FP8、无 MTP:峰值4039 tokens/GPU/s,长期平均3910。- 保持单用户生成速度
≥20 tokens/s,即TPOT≤50ms。
重要结论
- 注意力必须兼顾计算与访存:只压缩 KV,可能把瓶颈转移到算力。
- MoE 并非越稀疏越好:专家 Batch 变小后,需要更大的全局 Batch,网络可能先成为瓶颈。
核心贡献
- 将注意力结构、MoE 稀疏度和 AFD 部署放入同一成本分析框架,并给出可运行的推理系统。
未来方向
- 接入 MTP、继续优化注意力结构,并用更高带宽互联支持更稀疏的 MoE。
问题背景
Attention 与 FFN 资源错配
- 解码时 Attention 反复读取 KV Cache;FFN 需要读取大量参数并执行矩阵乘法。
- 同一张卡、同一种并行配置,未必同时适合两个模块。
- 长上下文增加 Attention 工作量,固定比例部署会让 FFN 等待。
激活参数不能单独决定成本
- 激活参数减少,不代表 KV 读取、跨卡通信或单用户延迟同步减少。
- 本报告围绕已训练的 Step-3 研究解码成本,重点是模型结构与部署协同。
核心方法
模型架构
低秩投影与共享 KV
- Query 从隐藏维度
7168降到2048,归一化后映射为64个 × 256维Query Heads。 - 所有 Query Heads 共享一个 Key Head 和一个 Value Head,减少历史缓存读取。
- 通过矩阵分解扩展注意力表达能力,同时控制投影参数和核心注意力开销。
算术强度匹配
- 算术强度:每读取一字节 KV,需要执行多少计算。
- 过高会受算力限制,过低会受带宽限制;设计目标是匹配目标 GPU 的计算/带宽比例。
- MFA 同时降低计算量与 KV 读取量,为后续量化、MTP 留出算力空间。
参数与专家
- 语言模型
316B,视觉编码器约5B;合计321B,每个文本 Token 激活约38B。 61层,前4层与最后一层使用 Dense FFN,其余使用 MoE。- 每个 MoE 层有
48个路由专家 + 1个共享专家,每 Token 激活Top-3路由专家。
稀疏度选择
- 每 Token 使用的专家比例约
0.08,兼顾模型容量与专家计算利用率。 - 专家越稀疏,单个专家分到的 Token 越少,需要扩大 Batch 才能高效执行矩阵乘法。
Attention 与 FFN 分离部署
模块分工
- Attention Instance:计算 Attention、管理 KV Cache,并执行 Router 等非专家操作。
- FFN Instance:执行 MoE 专家计算,可独立采用 TP、EP 或 TP+EP。
- Attention 发送
FP8 Hidden States + 路由信息,FFN 返回BF16输出,保持残差精度。
扩展方式
- 多个 Attention 实例汇集请求,为 FFN 提供足够大的 Batch。
- 上下文变长时增加 Attention 实例,FFN 的数量可以保持不变。
- AFD 与 EP 可组合;前者拆分计算模块,后者分配专家参数。
延迟预算
- 目标
TPOT=50ms:Attention、FFN、通信三个阶段各分配约16.6ms。 - 对
61层模型,单层每个阶段约有272μs的预算。
Micro-batch 调度
- 将请求拆为三组,在 Attention、通信、FFN 之间交错推进。
- 一组执行 FFN 时,另一组执行 Attention,第三组传输数据。
- 三个阶段耗时需要接近,否则最慢阶段会造成等待,通信也无法完全隐藏。
模型与硬件协同
专家 Batch
- 设
为每 Token 激活的专家比例;在近似均衡路由下,专家收到的 Batch 约为 全局 Batch × S。 - 达到相同专家计算利用率,MoE 所需 Batch 约与
1/S成正比。
通信限制
- 扩大 Batch 同时增加 A→F 和 F→A 的 Hidden States 传输量。
- 若网络不能在阶段预算内完成传输,更稀疏的 MoE 反而难以保持低延迟。
- 选择 MoE 配置时,需要同时看激活计算量、专家 Batch 和网络带宽。
量化与 MTP
- 压缩 KV 降低读取量,但不等比例减少计算;已受算力限制的 Attention 收益有限。
- MTP 复用历史 KV 验证多个 Token,但 FFN 仍需计算候选,且错误候选不能直接提交。
- 因此 MTP 是否划算,要结合 Attention 瓶颈、FFN 利用率与候选接受率。
独立硬件选择
- AFD 允许 Attention 使用高带宽设备,FFN 使用更适合矩阵计算的设备。
- 报告分析了 L20 等设备的可行配置,展示分离部署对异构硬件的适配空间。
传输路径
- GPU 数据通过 GPUDirect RDMA 直接传输;CPU 线程负责发送、接收与通信控制。
- 通信控制不占用 GPU SM,减少对 Attention/FFN 计算资源的争用。
- 预注册 Tensor 与缓冲区,避免重复序列化、拼接和内存复制。
网络与调度
- 独立收发线程配合 NUMA 绑核,降低 CPU 调度抖动。
- Attention 与 FFN 尽量连接同一 ToR 交换机,减少不同通信路径的延迟差。
- 多 NIC 端口分摊流量,保持流水线各阶段的传输时间稳定。
实验设置(Step-3 + AFD)
✍️ 实验设置
模型与任务
- 使用已训练的 Step-3,评测连续解码吞吐、单 Token 延迟和注意力层耗时。
- 所有端到端配置满足
TPOT≤50ms;本报告未展开模型训练配方。
部署与精度
4K上下文:2个 Attention + 2个 FFN 实例,合计32张 Hopper。- 全局 Batch
6144,拆为3组 × 2048;GEMM 使用 FP8,未启用 MTP。 - FP8 / BF16 Attention 对照分别采用
32 / 40张 GPU;8K配置扩到48张。
注意力消融
- 对比 MFA、MLA、GQA,在 H800、H20、A800 上测试
8K / 32K上下文。 - 每组
4张 GPU, batch=256;包含注意力前后的线性投影,Attention 使用 BF16。
关键结果(Step-3 + MFA/AFD)
🍑 关键结果
端到端解码
4K、FP8配置达到峰值4039 tokens/GPU/s,长期平均3910,同时保持20 tokens/s单用户速度。- 说明高吞吐不必依赖放宽单用户延迟;流水线需要在吞吐与延迟之间同时达标。
- 相同
4K下,BF16 Attention 配置为3321 tokens/GPU/s,Attention 精度会显著影响部署效率。
长上下文扩展
8K上下文增加 Attention 实例后,峰值达到2643 tokens/GPU/s。- 单卡吞吐下降来自更多卡承担 KV 读取;AFD 可以只扩展 Attention,避免同步扩张 FFN。
注意力层消融
- H800、
8K:MFA281μs,MLA372μs,GQA382μs。 - H20、
32K:MFA1452μs,MLA4817μs,GQA3042μs。 - MFA 的低计算与低访存设计在不同硬件上都有效,长上下文下差异更明显。
关键认识
- 总参数不是部署成本的充分指标:Attention 和通信可能比 FFN 激活量更影响实际解码。
- 最优稀疏度依赖硬件:降低激活量之前,要确认专家 Batch 和网络仍能支撑高利用率。
- 模块分离提供可调空间:上下文、硬件或负载变化后,可以独立调整 Attention/FFN 资源比例。
未来方向
⛳ 未来方向
模型与解码
- MTP:接入并实测多 Token 预测,进一步降低解码成本。
- 注意力结构:继续优化表达能力、KV 读取和计算量之间的平衡。
部署与互联
- 通信抖动:缩小长期平均吞吐与峰值吞吐的差距。
- 高带宽互联:降低更稀疏 MoE 对网络的压力,再提高专家稀疏程度。