结合ai整理了一下llm现在的训练数据相关的信息。
现在还很乱,后面我体会更深了会再整理。
1. 数据链
数据来源
├─ 网页 / 代码 / PDF / 授权内容 / 用户交互 / 合成
│
├─ 数据处理
│ ├─ 质量分类
│ ├─ 去重
│ ├─ 去污染
│ ├─ OCR / 改写 / 结构化
│ └─ 权利与 opt-out 检查
│
└─ 进入不同训练目标
├─ 预训练 / continued pretraining
├─ 长上下文训练
├─ SFT
├─ RLVR / agent RL
├─ 奖励模型 / rubric
└─ on-policy distillation总体数据来源
类型就是:文本、图像、视频
来源:公开网页/文本/代码/图像/音频/视频、爬虫、其他模型合成数据、自有数据(例如自己的产品交互数据)、购买的第三方数据
| 实验室 | 公开资料(截至 2026-08) |
|---|---|
| OpenAI GPT-5.6 Luna | 公开数据、合作数据、合成、人类文本;Common Crawl;GPTBot;合成教师含 GPT-5.4 / GPT-5.5。文本 >10T,图像 >10 亿,音频/视频各 >100 万小时。部分数据采集不晚于 2026-06。未用「与该模型本身的用户交互」;可用 ChatGPT、Codex 等其他产品交互(受设置约束)。(或许可以理解为chatgpt、codex等的其他模型的数据。而真正训练的这个模型的交互不纳入训练) |
| Gemini 3 Pro | 公开网页/文本/代码/图像/音频/视频;可下载公开集;爬虫;商业授权;Google 产品用户数据及与模型的交互(受条款、隐私政策和控件);内部生成;合成。处理含去重、robots.txt、安全过滤。 |
| Claude Opus 5 | 公开网络、公有和私有数据集、user data、其他模型生成的合成数据;去重与分类。 |
| Grok 4.6 | 公开互联网、内部生成、已获必要权利的其他数据。预训练截止 2026-01,补充训练数据可至 2026-06。欧盟摘要:4.5 文本 >10T。 |
| Apple AFM 3 | 公开信息、第三方许可或采购、开源、专项研究、合成。不用用户私人个人数据与用户交互。尊重出版商训练 opt-out。各模型共享初始预训练再分叉。 |
预训练
1、阶段训练与数据配比
预训练通常是划分为多个 training phase,并针对不同 phase 设置数据 mixture、采样率、质量门槛和上下文长度。常见做法是在前期保持数据覆盖和分布多样性,在后续阶段提高高质量数据或目标领域数据的采样权重
主要是下面三部分:
多样性
高质量
长上下文数据
2、预训练中的合成与改写
- 网页/知识改写:同一事实换风格、换视角,减轻对单一站点句式的过拟合。
对已有网页或知识内容进行改写,在不改变核心事实的前提下,生成不同的表达方式、组织结构和叙述视角,然后将这些版本用于训练。
例如:百科式:北京是中华人民共和国的首都,地处华北,是全国政治、文化和国际交往中心。
就可以改成:问答式:问:北京是什么城市?答:北京是中国首都,也是全国政治、文化和国际交往中心。
诸如此类
- 程序化多模态:代码与渲染结果成对。early fusion
Kimi K3 覆盖 SVG、3D、网页、游戏、CAD;坐标同时用绝对坐标和 [0,1] 归一化。视觉编码器 MoonViT-V2 从零 next-token prediction,不接对比预训练。语言与视觉从预训练一开始联合。
Qwen3.5 / 3.8-Max 同样是 early fusion,而不是语言训完再接视觉头。
MiniMax-M3(2026-06,公开信息少于 M2 报告)走从零图文联合,降低后期接入时的 attention 不稳定风险。
- 专项知识补充:生成一批面向事实检索和法律知识的训练数据,补充普通网页数据中覆盖不足的知识领域。(有的会用模型生成)
不能因为合成文本数量多,就把它们直接当成普通网页数据加入预训练。合成文本必须经过来源识别、质量筛选和事实或结构验证,否则可能降低训练数据质量。 例如,GLM 明确滤 AI 生成和模板页;能进训练的合成,都带保真核对或可验证结构。
3、长上下文与中间训练
分阶段扩展上下文长度,不是一步训到 1M
关于数据:短样本简单拼接 是不如 天然长文档,以及故意设计成不看满窗口就解不出的合成任务。
整理的一些数据
| 材料 | 时间 | 公开 token / 上下文 |
|---|---|---|
| Kimi K3 | 2026-07/08 | 四文本域 + 大规模视觉;8K→1M |
| MiniMax-M2 | 2026-07 报告 | 29.2T;8K→192K |
| GLM-5 | 2026-02 | 28.5T;mid-train 到 200K,5.2 用到 1M |
| DeepSeek-V4 | 2026-04 | Flash 32T / Pro 33T;4K→1M |
| Nemotron 3 Ultra | 2026-06 | ~20T;两个 training phase |
| Qwen3.5 / 3.8 | 2026-02 / 08 | 原生多模态;3.8-Max 1M context,配比未发 |
| GPT-5.6 Luna | 2026-07 | 欧盟档位 >10T 文本 |
| Grok 4.6 | 2026-08 | cutoff 2026-01,补充至 2026-06 |
后训练数据
后训练数据应按监督信号和训练目标组织
数据通常包括以下几类:
- SFT 数据:用户请求、任务说明、参考答案,以及必要的推理摘要、工具调用和观察结果,用于建立输出格式、任务流程和基础行为。
- 可验证任务数据:任务描述、标准答案或可执行 verifier、难度标签和测试用例,用于 RLVR、拒绝采样和结果筛选。
- Agent 交互轨迹:环境状态、动作、工具调用、观察、错误恢复、终止状态和 reward,用于训练长程任务执行与工具使用能力。
- 偏好与奖励数据:候选输出、比较结果、rubric、标量评分和安全标签,用于奖励模型、偏好优化以及教师模型辅助评分。
- 安全与生产数据:政策版本、攻击样本、拒答与过度拒答对照、真实工作区约束和线上反馈,用于安全对齐与产品行为校准。
数据质量主要取决于任务覆盖、环境真实性、反馈信号可靠性、难度分布和与目标产品的一致性
OpenThoughts-Agent(arXiv:2606.24855,2026-06) Agent 能力对任务来源和能力域覆盖较敏感,不同 RL 环境带来的能力迁移通常比数学推理更具体;任务来源可使 SWE-Bench 结果产生较大差异,混合多个来源更稳定,而合成改写或扩增在该项目设置下未带来明显增益。
3.1 数据记录单元
| 类型 | 具体 |
|---|---|
| SFT 示范 | prompt、交错思考、动作、观察;失败步可保留但 mask loss |
| RLVR 题 | prompt + 可执行 verifier + 难度(pass@k) |
| Agent 轨迹 | 环境镜像、工具策略、动作日志、reward、终止 |
| 办公 / 搜索 | 真实工作区 + 证据规格 + 成品 |
| 蒸馏 | 学生 on-policy 序列 + 教师文本或 logits |
| 安全 | 政策版本、攻击/对照、过拒对照 |
SFT 普遍做成交错思考:思考、动作、观察在同一条轨迹里。GLM 保留错误片段、mask loss,专门学纠错。没有环境摘要的「优质代码 SFT」,三个月后无法证明它当时能跑通。
交错思考(interleaved reasoning / interleaved trajectory):不是先完整思考、再一次性给出答案,而是把模型的推理过程与工具调用、环境反馈交替记录
失败步可保留但 mask loss:可以保留失败操作和环境反馈,帮助模型学习错误恢复过程;但不一定把错误动作本身作为正向模仿目标,可以通过 loss mask 将其排除,或者只训练后续的纠正步骤。
pass@k:模型针对同一个任务生成
k个候选答案时,至少有一个答案通过验证的概率或比例。这里根据这个来评估难度
3.2 可执行环境的构造
网上已有的人类工作 → 变成可启动的沙箱 → 题面与测试对齐 → 按类型给不同奖励 → 扩增
可参考 MiniMax-M2 的报告;OT-Agent、TMax 等开源项目
MiniMax-M2 技术报告:重点阅读第 4 节
Post-Training Data Collection。OpenThoughts-Agent 论文:重点阅读数据构造流程、任务来源和消融实验。
TMax 论文:重点阅读终端 Agent 任务、执行环境和 verifier 构造。
项目 资料定位 主要关注点 公开程度 主要用途 MiniMax-M2 商业实验室技术报告 多领域 Agent 数据管线 部分公开 观察工业级流程和工程约束 OpenThoughts-Agent 开源研究项目 多任务来源、数据多样性和消融 较高 验证任务覆盖和数据选择的影响 TMax 开源终端 Agent 项目 终端环境、任务合成和验证 较高 参考终端任务与环境构造
编码与软件工程任务
以代码仓库、issue、Pull Request、测试用例和提交记录为数据基础
通用流程:筛选许可和质量符合要求的仓库,提取问题—仓库—代码变更关系,构造可运行环境,建立测试或性能验证条件,采样 Agent 轨迹,再通过执行结果筛选和扩展任务。
- MiniMax-M2:从具有宽松许可的仓库中收集已合并 PR 及关联 issue,按测试文件、可构建性等规则筛选;使用 Agent 构造多语言 Docker 环境,并通过编译和执行反馈修正构建脚本;按修复 bug、增加功能、性能优化、重构和编写测试等类型标注任务。Bug 任务使用 F2P+P2P,功能任务使用新增测试点,性能任务使用优化前后稳定可测的 P2P 进行验证;随后检查题面、代码和测试是否一致,并通过错误注入、提交合并、测试反向构造和静态审查扩展任务。报告称其覆盖 10 多种语言;M2.5 还披露了超过 20 万个真实环境,内部工作区数据使环境总量达到数十万规模。
- Qwen3-Coder-Next:将 PR 结构化为问题、仓库和改动,构造约 80 万个可验证任务,并使用 SWE-agent、OpenHands 等框架生成交互轨迹。
- Nemotron SFT-SWE-v3:同样采用 OpenHands、SWE-agent 等 Agent 框架生成和执行软件工程任务。
- GLM-5:公开数据包括真实 SWE、终端和多跳搜索任务;GLM-5.3 在同一底座上继续增加环境和 RL 训练,并尝试端到端环境生成:从真实工作中提取任务模式,构造具有多步依赖和隐藏状态的长程环境,再由 judge agent 检查任务是否可解。
应用开发任务
应用开发任务的目标不是生成孤立代码片段,而是生成能够构建、启动和交互的完整项目。通用流程是:由领域专家定义技术栈、架构约束和真实用例,生成具体需求并去重,构造项目环境,采样开发轨迹,再从执行、交互和视觉三个维度进行验收。
MiniMax AppDev:专家定义 meta query,高温采样具体需求后进行 MinHash 去重,并由语言模型检查技术可行性、功能可行性和需求清晰度;之后在带专家 system prompt 的条件下采样写 spec、TODO、自测和实现轨迹。Agent-as-a-Verifier 从执行层、交互层和视觉层进行验证:执行层检查文件、依赖、构建、HTTP 服务和 JavaScript 报错,交互层使用 Playwright 执行主流程,视觉层检查布局、层级和配色。训练时移除部分专家 system prompt,使模型学习任务解决行为而不是依赖提示文本。
终端任务
终端任务需要同时定义命令行接口、文件系统、软件依赖、环境变量、测试脚本和成功标准。
通用流程是:从真实技术问题或终端相关资料中提取任务,转换为包含环境、工具、输入输出和验收条件的 schema,生成 Dockerfile 和测试,实际执行并修正环境,最后按通过率、修复轮数和任务难度进行筛选。
- MiniMax Terminal-Gym:从 Stack Overflow 等资料中筛选有采纳答案、与终端相关、可脚本化且难度适中的问题,转换为终端任务 schema;由 Agent 生成 Dockerfile 和测试,并根据执行反馈修正到可运行状态;之后进行 query 演化和统一测试,并按照零样本通过率和修复轮数过滤过易任务。
- TMax:通过任务分类、难度、persona 和 verifier 组合任务分布,公开了约 1.46 万个 RL 环境的 Tmax-15k 数据。其重点是终端环境的可执行性、任务分类和结果验证,而不是单纯扩充问答文本。
- OpenThoughts-Agent:公开了约 100K 的 Agent SFT 数据及其构造流程,使用 GLM-4.7 和 Terminus2 harness 生成轨迹,并在七项 Agent 基准上评估数据效果。该项目的主要参考价值是任务来源、能力域覆盖和数据混合实验。
办公、搜索、金融与幻灯片任务
这类任务通常需要“可运行的工作区 + 工具调用轨迹 + 与最终产物对应的验收规则”。
不同任务的验证重点不同:
深度搜索:验证检索是否真实执行、答案是否由证据支持、引用是否与结论一致。
知识工作:按职业和工作流程生成任务与工作区,使用 rubric 评价内容完整性、准确性和格式合规性。
金融与电子表格:实际调用金融或表格工具,使用外部引擎重新计算公式,并进行单元格值级比对。
幻灯片生成与编辑:混合不同生成库和编辑工具,检查文件可打开性、页面结构、文本溢出、图表和视觉布局,降低对单一工具的依赖。
MiniMax 将相关数据归入 Agentic Cowork;Kimi K3 的 general 和 general-agent 专家覆盖可验证搜索、专业知识和持续助理等任务。
内部研发任务与环境扩展
部分实验室会将内部研发工作直接转化为训练环境,例如 kernel 优化、Web、CAD、内部推理栈和 kernel 研发。这类任务的特点是来源于真实工作流程,通常包含专用工具、代码库、构建系统和内部验收标准,不等同于无环境的合成问答。
Qwen3.8-Max 将 RL 任务和环境扩展归纳为三个维度:任务长度(单步、多步、跨日)、工作区复杂度(单文件、多文件、层级目录)以及 harness 配置(工具、版本和 skills)。奖励同时结合代码执行、rubric 文本评分、渲染结果检查和 Agent 检查;同一批次需要平衡任务类型、难度和 harness。公开报道显示,其训练环境规模在约 4000 个环境处达到实验曲线峰值,继续增加环境后指标下降,说明环境扩展需要结合任务质量、覆盖范围和数据分布进行控制。Qwen-AgentWorld 则将环境模拟本身作为 CPT→SFT→RL 的训练目标,覆盖 MCP、搜索、终端和 SWE 等七个领域。
难度、混合、SFT 初始化
过易样本占满梯度,是公开训练方案共同在防的事。
手段:Llama 4 式删简单 SFT;Qwen / GLM / Kimi 用 pass@k 留中等难度;MiniMax 终端按零样本通过率滤易题;GLM 推理 RL 留「旧模型很少做对、更强教师能做对」的题。
推理数据沿三轴扩:题(覆盖弱技能)、每题多条正确解法(主要提升 OOD)、题扩 vs 解法扩的配比随阶段改。质检:题面清洗、verifier 边界、多模型交叉核对、对推理痕迹打 rubric。通用对话要同时有工具增强和无工具样本,避免只会调工具或完全不调。
SFT 主要用于让模型掌握合法轨迹的输出格式和基本行为。在许多可验证任务中,能力提升主要来自 RL,但相对贡献依赖具体任务和消融设置。
M2.7 把 Forge 训推引擎与任意 agent 脚手架解耦,并出现早期 self-evolution:模型自己排障训练、改自己的 scaffold。
GLM-5.3 用 slime:训练、rollout、数据缓冲同一条 dataflow,数学、代码、沙箱、verifier、长程环境都作为数据生成接入,而不是改训练环。
- 三个模块:训练模块读取轨迹、计算 loss、更新模型参数(通常使用 Megatron 等);Rollout 模块使用当前模型调用工具和环境、生成多轮轨迹并记录输出概率和奖励(通常使用 SGLang 等);Data Buffer 暂存 prompt、轨迹、奖励和 logprob,并将 rollout 结果交给训练模块。
- 传统系统的问题:训练系统、推理服务、Agent 程序和数据处理脚本彼此独立,容易产生数据格式反复转换、模型同步慢、轨迹中间信息丢失、版本不一致、环境接入成本高以及奖励难以直接回传训练流程等问题。
- slime 的 dataflow:Prompt / 任务 → Rollout 推理 → Agent 调用工具 → 环境执行 → Verifier 计算奖励 → Data Buffer 暂存轨迹 → 训练模块更新模型 → 新模型权重同步给 Rollout,循环生成下一批轨迹。
不同任务环境的差异,主要通过数据生成接口接入;核心训练循环保持通用。
Staged RL 与多教师 on-policy 蒸馏
先训练不同领域或不同目标的专家模型,再通过 on-policy 蒸馏合并能力
DeepSeek 系列笔记:从 V2 到 V4 的训练与架构 这里也讲了
on-policy 通常翻译为“在策略”或“同策略”。
使用当前正在训练的模型自己生成的新轨迹,来更新这个模型。
off-policy 通常翻译为“离策略”或“异策略”。
它使用的训练数据不是由当前模型生成的,而是来自:旧版本模型;人类示范;其他模型;历史 replay buffer;规则策略;专家 Agent;其他行为策略。等等
on-policy distillation 是“在策略蒸馏”。
普通知识蒸馏通常是:
教师模型看到输入 → 教师生成答案或 logits → 学生学习教师答案on-policy distillation 的关键是:
学生模型先自己生成轨迹,教师模型再对学生实际走过的状态进行指导或评价。
闭源模型蒸馏
很感兴趣怎么蒸馏闭源模型的,所以整理了一下
闭源 API 没有 logits、没有 hidden state、默认不给明文思维链
可以拿到的是最终文本、可见工具调用、有时压缩 reasoning 摘要
一条可用于蒸馏的样本,最少由两段组成:
| 字段 | 含义 |
|---|---|
| 用户侧输入 | prompt、多轮上下文、工具/代码仓库上下文、系统提示 |
| 教师侧输出 | 最终回复、可见工具调用、可选思维摘要、评分或题目 |
按我的理解,主要是两类:
- 自购 API / 订阅。 实验室/企业(或其外包标注、数据供应商)持有账号或密钥,按自己设计的任务去查询闭源模型,把返回写入训练集。
- 用户侧流量。 真实用户已经在用 GPT / Claude / Gemini;实验室不自己出题,而是获取这些交互的日志。获取方式包括:中转站/代理网关沉淀的请求–响应、向数据商或个人直接购买、以及用户主动分享或研究网关在同意条款下发布的公开集。
两条路径的差别在于:prompt 分布谁决定、教师输出在什么条件下产生、事后还能不能再向同一教师发查询。 这三件事决定了数据能进 SFT、偏好、可验证 RL,还是能做在线 on-policy 蒸馏。
通道 A 自购 API / 订阅
构造或挑选 prompt → 按查询协议打教师 → 过滤 → SFT / RM / 出题 / 在线对照
通道 B 用户侧流量
真实用户已经问过、教师已经答过 → 日志进入实验室 → 脱敏与验收 → 多数直接 SFT,或抽 prompt 再走通道 A收集到的信息可以提供什么呢
1、最终回复,作为 SFT 正例。
例如:给定 prompt,采 1~N 条教师回复,过滤后做
prompt → response交叉熵。
2、可见工具轨迹,作为 agent 示范。
思维链被隐藏之后,响应里仍常留下
tool_use名称与参数、工具返回后的下一跳、补丁、测试命令、computer-use 动作。蒸馏对象是决策点,不是「我已经修好了」那段自然语言总结。有效前提是教师和学生共享环境接口(同一 Docker / 浏览器 / 工作区 / MCP 工具表),并用环境硬门验收:构建失败、单测失败的轨迹不得当 SFT 正例。
3、二次过程标注
明文 CoT 不可得时,公开被观察到的替代是:先拿到终答,再请教师「逐步写出与该答案一致的内部推理」。
4、教师只打分或只写 rubric,不提供示范
5、教师只出题。
用强模型扩题、加约束、抬难度。也就是用教师来扩充训练任务的分布。但是注意要有独立的verifier才可用。
6、在线对照:把学生前缀或整段再交给教师,然后比较
1、自购 API / 订阅
输入prompt
- 公开真实 prompt 再打闭源教师。
- 可验证题库:竞赛数学、带测例代码、SWE issue、终端任务。价值在独立对错,教师给过程,终值不必信教师。
- 环境派生:先有 Docker / 浏览器 / 办公工作区,再反推 query。闭源教师的角色是在同一环境里生成可执行轨迹。
- 合成扩题:Self-Instruct、Evol-Instruct、Tulu 3 式 persona。作用是同一技能的多种表面形式,减轻背题。
怎么用
进入训练的顺序,与实验室公开后训练一致,只是教师换成闭源 API:
- SeqKD / SFT:格式与工具语法。
- 偏好:教师回复为 chosen,学生或弱模型为 rejected。
- RLVR:题可来自教师,奖励来自程序。
- 黑盒 on-policy:必须能再查询,故仅通道 A。
- 领域专家再用白盒 MOPD 合并:最终合并的教师是自有专家,闭源 API 停在专家阶段。
2、真实用户对闭源模型的使用数据
数据特点
- 真实任务分布。 含糊指代、中途改需求、粘贴报错、中英夹杂、把半成品代码丢进上下文。这是产品 SFT 最缺、合成 persona 最难仿的部分。
- 多轮状态。 用户纠正教师、换一种问法、在教师答错后补约束。纠错轮次可改写成偏好对(前一轮回复 rejected,后一轮或用户指定的改写 chosen),不必再打 API。
- 编码 agent 上下文。 经 Claude Code / Codex 类接口转发时,日志里可能有仓库路径、diff、测试输出。对 agent SFT 的价值高于纯聊天;也是 PII 与商业秘密最集中的位置。
- 教师版本不可控。 同一包内可能混有 Plus 与 API、Sonnet 与 Opus、甚至中转把请求换到更便宜的模型。CISPA 对宣称「Gemini-2.5」的代理测 MedQA,得分 37%,官方 API 为 83.82%。没有模型指纹验收,通道 B 会把弱模型的错误示范当金标。
- 安全与拒答是教师当时的政策,不是实验室的政策。 直接 SFT 会把竞品拒答边界和越狱成功案例一并写入学生。
用法
1:整段示范 SFT。
真实用户多轮 → 闭源回复直接当 instruct 数据
2:只保留 prompt,回复作废,再走上面自购 API / 订阅的训练方式
3:当种子扩题,不把原对话写入 SFT。
4:构造偏好,而不是模仿。
同一会话里用户说「不对,改成……」、重新生成、或 Arena 式并排选择,都可以变成 chosen/rejected
5:不当训练正例,只当难度与覆盖的测量。
用真实 prompt 测学生 pass@k、拒答率、工具调用合法性,决定通道 A 还要补哪一块能力子域。这是通道 B 在完全不能把输出写入损失时仍然有用的用法。