引言 —— 卡片用大段文字写架构,用一行字打发数据
把 2026 年夏天发布的几张开放权重模型卡片摆在一起读,会发现一个规律:架构是用表格、大段文字、图示来讲的,层数、专家数、注意力类型,甚至激活函数都写得明明白白。可训练数据这一块,通常只有一段话,有时候只有一句话。
这不是疏忽,而是结构性的选择。架构反正原样写在 config.json 里,藏不住。而数据构成是唯一能藏得住的东西,同时压着竞争优势和法律风险这两条线。所以读一个模型的生产流水线时,得把哪些阶段是可验证的、哪些阶段只是个信任问题分开来看。
本文以上一篇整理的热门模型为例,按顺序过一遍从数据采集到量化部署的流程。规则只有一条:卡片或论文里写明的内容会标出处,只有厂商自己主张的效果会标成「自称」。没能验证的,就写没能验证。所有引用都是 2026 年 8 月 2 日在原文里直接核实过的。
数据 —— 真正公开的几乎没有
先把事实理清楚。写这篇文章时,我下载了大约 40 张热门模型卡片,把 frontmatter 里的 datasets 字段全部核对了一遍。明确写出训练数据集的只有两处。
| 模型 | 数据公开程度 |
|---|---|
| skt/A.X-K2 | 卡片 frontmatter 里明确写出了三个预训练数据集 |
| allenai/tmax-9b | 明确写出训练数据集,还把训练过程中的完整 rollout 和对数概率都发布到了仓库里 |
| Kimi K3、DeepSeek-V4、GLM-5.2、Qwen3.6、Inkling、Solar Open 2、Laguna S 2.1 等 | 没有 datasets 字段 |
A.X K2 写出的是 nvidia/Nemotron-CC-v2.1、nvidia/Nemotron-Pretraining-Code-v2、HuggingFaceFW/fineweb-2。这也没有公开完整的混合比例,只是点出了来源,但已经比其余大多数说得多了。tmax-9b 那边之所以能做到这个公开程度,是因为它是个规模较小的研究模型。Ai2 把训练中产生的 rollout 和对数概率整个上传了出来,从可复现研究的角度看,这一份反而有用得多。
剩下的都是怎么写的呢。Inkling 卡片的训练部分很有代表性。大意是用了包括文本、图像、音频、视频在内的广泛素材,来源是公开素材、从第三方获取的素材,以及合成或增强过的素材。清洗过程据称包含去重和低质量过滤。这段话没有一个字是错的,但从这段话里完全看不出哪些数据占了多少比例。大多数前沿级发布都停留在这个水平。
至少 token 预算还算是给出了数字。整理确认过的如下。
| 模型 | 公开的预训练预算 | 出处 |
|---|---|---|
| DeepSeek-V4 系列 | 超过 32 万亿 token | 模型卡片正文 |
| Solar Open 2 (250B-A15B) | 约 12 万亿 token,按 B200 计 200 万 GPU 小时 | 模型卡片概览表 |
| LFM2.5-350M | 28 万亿 token | 模型卡片详情 |
| Kimi K3、GLM-5.2、Inkling 等 | 卡片未提及 |
合成数据占比变大的迹象,在热门数据集这一侧看得清楚得多。看同一天热门数据集榜单前 20 名,好几个都是前沿模型输出轨迹的合集,像 Glint-Research/Fable-5-traces、Crownelius/Complete-FABLE.5-traces-2M、greghavens/kimi-k3-coding-and-debugging-traces、ianncity/GLM-5.2-Conversation 这些名字都是这类。账号大多是个人或小型研究组织,数据集名字本身就写明了是哪个模型的输出。
这里要区分两件事。一是用这类轨迹数据训练在技术上是否有效;二是这么做是否符合原模型提供方的使用条款。对第一个问题,有明显的迹象表明确实有多个模型是用这种方式训练出来的。对第二个问题,我没有核对过各家的条款,所以不做判断。如果贵公司打算内部使用这类数据集,这一层核实需要另外做。
与此同时,用于预训练的公开语料库依然占有一席之地。HuggingFaceFW/fineweb 是 2024 年 4 月发布的,如今依然排在热门数据集前列;HuggingFaceCode/stack-v3-train 则是 2026 年 7 月上传的代码语料库。公开数据这股潮流并没有消失,只是做前沿级模型的那批人退出了这股潮流。
架构 —— 稀疏度已经突破 20 倍
MoE 现在已经接近默认选项,而不是一个可选项。有意思的不是要不要用它,而是稀疏度的量级。用总参数量除以每 token 的激活参数量,能看到这样的数字。
| 模型 | 总量 | 激活量 | 稀疏度 | 专家配置 |
|---|---|---|---|---|
| DeepSeek-V4-Pro | 1.6T | 49B | 约 33 倍 | 卡片未标注 |
| Kimi K3 | 2.8T | 104B | 约 27 倍 | 896 个路由专家中选 16 个 + 共享 2 个 |
| Inkling | 975B | 41B | 约 24 倍 | 256 个路由专家中选 6 个 + 共享 2 个 |
| DeepSeek-V4-Flash | 284B | 13B | 约 22 倍 | 卡片未标注 |
| A.X K2 | 688B | 33B | 约 21 倍 | 256 个路由专家中选 8 个 + 共享 1 个 |
| K-EXAONE 2.0 | 750B | 37B | 约 20 倍 | 见卡片 |
| Solar Open 2 | 250B | 15B | 约 17 倍 | 320 个路由专家中选 8 个 + 共享 1 个 |
| Laguna S 2.1 | 118B | 8B | 约 15 倍 | 256 个路由专家中选 10 个 + 共享 1 个 |
| Qwen3.6-35B-A3B | 35B | 3B | 约 12 倍 | 256 个路由专家中选 8 个 + 共享 1 个 |
竖着读这张表,能看出规模越大、稀疏度往往也越高的趋势。卡片没有直接解释为什么会这样,但从结构上看很自然:提高稀疏度,就能在同样的推理 FLOPs 下装下更多参数,代价是全部参数都得常驻内存,权重内存该多大还是多大。也就是说,稀疏度是一个把计算成本和内存成本分开调节的旋钮。在内存充裕的大型服务环境里,把这个旋钮拧到底是划算的;在单卡环境里,它就毫无意义。
设置共享专家的做法现在已经接近普遍。上表中公开了专家配置的六个模型,全部都在路由专家之外另设了一到两个始终激活的共享专家。
只有 Kimi K3 讲了一个略微不同的故事。它的卡片称用一个叫 Stable LatentMoE 的框架提升了稀疏度,相比 Kimi K2,整体扩展效率提升了约 2.5 倍。这个数字是厂商自己测出来的,而且卡片没有给出「扩展效率」的定义,外部没法验证。架构表里的数字(93 层中 1 层为稠密层、注意力隐藏维度 7168、词表 16 万、上下文 1,048,576)属于能靠 config.json 核实的那一类,扩展效率则不属于。
注意力与上下文 —— 削减全局注意力的四条路
随着「1M 上下文」开始出现在卡片的第一行,注意力设计几乎全部指向了同一个问题:如果每一层都对整个序列做 softmax 注意力,KV cache 和计算量都会失控。目前用的思路大致有四种。
第一,混合线性注意力和 softmax 注意力。 Solar Open 2 把 48 层按 1 份 softmax 比 3 份线性的比例排布。卡片给出了两个效果:48 层里只有 12 层保留 KV cache,因此长上下文的内存占用大约是同等规模全 softmax 模型的四分之一;线性注意力层把顺序信息内置在循环状态里,所以完全去掉了位置编码(NoPE),消除了 RoPE 的外推上限。后一条是厂商自己的解释,我没能确认外部复现结果。Qwen3.6 系列也做了类似的选择——Qwen3.6-27B 卡片里的层排布是三层 Gated DeltaNet 配一层 Gated Attention,重复 16 次。
第二,混合滑动窗口注意力和全局注意力。 Laguna S 2.1 的 48 层里只有 12 层是全局的,其余 36 层是窗口为 512 的滑动窗口。重排模型里也能看到同样的模式:jina-reranker-v3.5 把 28 层按 3 份滑动窗口比 2 份全局的比例排布,窗口设为 1024。这个模型是用一次前向传播给整个列表排序的结构,卡片写明因此必须把最后一层固定为全局。
第三,加一个稀疏索引器。 这种方式只从全部的 key 里挑出排名靠前的几个来计算注意力。GLM-5.2 用一个叫 IndexShare 的技巧,让每四个稀疏注意力层共用同一个索引器,称在 1M 上下文下把每 token 的 FLOPs 削减到了 2.9 分之一。A.X K2 用的是在 MLA 之上叠加一个挑选排名靠前 token 的轻量索引器、再加逐头门控的 SGA 结构。这两个数字都是各自实验室的自我报告。
第四,压缩注意力本身。 DeepSeek-V4 的卡片称结合了压缩稀疏注意力和高压缩注意力,在 1M 上下文设置下,相比 V3.2,每 token 推理 FLOPs 降到 27%,KV cache 降到 10%。这同样是自我测量。Kimi K3 称把 KDA 和 Gated MLA 按 69 比 24 混合,并一起使用一种叫 AttnRes 的残差结构。
注意力变体本身的原理已经在GQA、MQA、FlashAttention 梳理里讲过,这里不再重复。
关于上下文长度,有一个实务上的陷阱值得提一句。卡片上写的最大长度通常分两个阶段。Qwen3.6-27B 写的是原生 262,144、可扩展到 1,010,000。A.X K2 写的是原生训练到 128K,再用 YaRN 缩放扩展到 256K。也就是说,同样是「26 万 token」,里面混着训练实打实拿到的部分,和推理时临时拉伸出来的部分。
而且 DeepSeek-V4 的卡片建议,要用最大思考模式,上下文窗口至少要设到 384K。这意味着这个模型 1M 上下文里相当一部分,占用的不是用户输入,而是模型自己的思考 token。做上下文预算时漏掉这一点,算出来的数字会差得很远。不同扩展方式之间的差异整理在上下文窗口扩展指南里。
预训练 —— 正在偏向不从零开始训练
随着从白纸训练一个前沿级模型的成本越来越高,拿上一代模型当初始化起点的做法明显多了起来。确认到的案例有两个。
Solar Open 2 是从 102B 的 Solar Open 1 通过选择性权重迁移初始化的。据卡片透露,扛住架构变动、原样保留下来的权重只占全体的 2.3%,其余都是随机初始化,而正是这 2.3% 拉快了 250B 规模的早期收敛。公开 2.3% 这个数字反而增加了可信度——因为它说明大部分权重都是重新训练出来的。
K-EXAONE 2.0 在卡片里称,通过在深度和宽度两个方向同时扩展的升级改造(upcycling),把上一代放大了 3 倍以上,之后再接上持续预训练、以难度为导向的中间训练,以及后训练。它还公开了在这个过程中发现的一个稳定化技巧:在两条 SwiGLU 分支之后加一个 clamping,能缓解深层激活值飙升的现象。
训练稳定性在卡片里出乎意料地是个常被提到的话题,有三种做法比较突出。
| 模型 | 稳定化技巧 | 卡片给出的目的 |
|---|---|---|
| K-EXAONE 2.0 | SwiGLU 双分支之后做 clamping | 缓解深层激活值飙升 |
| A.X K2 | RMSNorm 之后紧接一个依赖输入的门控(Gated Norm) | 抑制巨大激活值和隐藏状态里的离群点 |
| DeepSeek-V4 | 流形约束超连接(mHC)、Muon 优化器 | 稳定层间信号传播、提升收敛速度 |
A.X K2 的卡片还给「抑制离群点」多加了一个目的:把激活分布里的离群点压住,对 FP8 或 NVFP4 这类低精度服务更有利。也就是说,训练稳定化技巧直接和部署精度的选择挂上了钩。这在几年前会被当成两个毫不相干的话题来处理。
既然提到了精度,顺便把预训练精度也梳理一下。A.X K2 称前向和反向传播都用 MXFP8 E4M3 做原生 FP8 训练,只有主权重和梯度保留在 FP32。Kimi K3 的架构表里写着通过量化感知训练,拿到了 MXFP4 权重和 MXFP8 激活值。关于扩展定律和 token 预算判断的一般性讨论,另见预训练扩展定律梳理。
后训练 —— SFT 之后那一步换了名字
几年前,这一节的标题大概会是「SFT 之后接 RLHF」。现在卡片里实际写的名字要分散得多。
DeepSeek-V4 的后训练在结构上最特别。卡片给出的顺序分两步:先各自独立地训练出一批领域专用的专家模型,这一步用 SFT 和基于 GRPO 的强化学习;然后用同策略蒸馏(on-policy distillation)把这些能力统一进一个模型里。也就是先造出多个专家、再把它们合回一个身体。这和架构层面的 MoE 是不同层次的概念,很容易混淆——这里说的「专家」不是被路由的 FFN,而是各自单独训练出来的 checkpoint。
也有案例用数字公开了强化学习到底改进了什么。KAT-Coder-V2.5-Dev 的卡片写道,强化学习把异常工具标签的发生率从 9.34% 降到了 0.28%,把单轮内连续重复的比例从 0.34% 降到了 0%。写失败模式发生率、而不是基准分数的卡片很少见。挑选用作 agent 的模型时,这类数字比平均分有用得多。
Nanbeige4.2-3B 的卡片把小模型的后训练写得相对详细。在 SFT 阶段,通过对接真实环境和大规模合成环境来增加训练环境的多样性,在轨迹层面和轮次层面都做过滤,同时结合基于测试用例的验证和基于评分细则的评估。在强化学习阶段,称结合结果奖励和过程奖励提升了小模型的训练稳定性。
也有把整套强化学习流程完整公开的。Ai2 的 tmax 系列称在 Qwen3.5-9B 上用 DPPO 跑了 200 步,在 Terminal Bench 2.0 上拿到约 27%,相比基座模型提高了约 6 分,并把训练中的 rollout 和对数概率一并上传到了仓库里。这是本文涉及的模型里唯一一个后训练过程外部可验证的案例。
后训练带来的、面向用户的功能开关也值得整理一下。
| 模型 | 后训练产生的开关 | 使用时的注意点 |
|---|---|---|
| Kimi K3 | 三档思考强度,默认最高 | 训练时用的是保留思考历史的模式,必须原样把上一轮的推理内容传回去 |
| DeepSeek-V4 | 非思考与思考两类,共三种模式 | 最高模式建议上下文在 384K 以上 |
| A.X K2 | 通过 Think-Fusion 统一思考与非思考 | 按请求在质量和延迟之间做权衡 |
| Qwen3.6 | 思考保留选项 | 迭代开发时复用之前的推理内容 |
Kimi K3 的注意事项是实务中经常踩的坑。在多轮对话或工具调用场景里,如果只把助手消息的正文传回去、丢掉推理内容,模型就会不知道自己刚才在想什么。卡片明确要求把 API 响应原样整个传回去。
蒸馏与小型化 —— 名字一样,做法不同
「蒸馏」这个词,现在在卡片里至少指代三种不同的东西。
第一种是经典含义:用教师模型的输出分布来训练学生模型。微软的 harrier-oss-v1 系列明确写的就是这种方式。270M 和 0.6B 这两个版本称除了对比学习之外,还额外接受了来自更大嵌入模型的知识蒸馏;27B 版本没有这个说法。
第二种是缩短扩散模型的采样步数。Z-Image-Turbo 是 Z-Image 的蒸馏版,卡片称只需 8 次函数评估就能出结果。这里被蒸馏的不是知识,而是采样轨迹。虽然用的是同一个词,但和语言模型里的蒸馏是不同的技术。
第三种是把另一个模型的输出直接当作 SFT 数据来用。前面数据那一节看到的那些轨迹数据集就属于这一类,也是社区里最常见的形式。严格来说这不是蒸馏,而是输出模仿,只是数据集名字里经常挂着 distillation 这个词。因为没有 logit 级别的信号,教师模型的不确定性信息不会被传递过去。
能力迁移还有另一种可以称为「流水线蒸馏」的形式。Fara1.5-27B 是对 Qwen3.5-27B 做有监督微调得到的模型,但生成它训练数据的,是一个叫 FaraGen1.5 的多智能体流水线。卡片写的顺序是:合成一个网页任务,执行一条轨迹去解它,验证结果,再把结果送进训练。扮演教师角色的不是单个教师模型,而是一整套带验证回路的系统。
蒸馏技术本身的比较,已经在知识蒸馏与模型压缩里讲过。这里要强调的只有一点:卡片上一旦写着「蒸馏」,先要确认是哪一种。是这三种里的哪一种,直接决定了可复现性、许可证风险,以及能期待的质量上限,全都不一样。
量化部署 —— 现在轮到厂商自己出手了
这是流水线最后一个阶段里变化最大的部分。就在几年前,低比特 checkpoint 还是社区在模型发布之后自行制作的。现在,原厂会一并把它们发出来。
| 模型 | 厂商直接发布的精度 | 方式 |
|---|---|---|
| Kimi K3 | MXFP4 权重,MXFP8 激活值 | 量化感知训练 |
| A.X K2 | 分块缩放 FP8 (E4M3,128×128 分块) | 原生 FP8 训练的副产物,没有单独的事后步骤 |
| DeepSeek-V4-Flash | FP4 与 FP8 混合 | MoE 专家参数用 FP4,其余大部分用 FP8 |
| Laguna S 2.1 | FP8、NVFP4、INT4、GGUF | 原厂直接发布四种格式 |
| Inkling | BF16 和 NVFP4 | 两种精度并列发布 |
这个变化的意义不小。第一,它动摇了「原始 BF16 是基准、量化就是有损」这个前提。对 Kimi K3 和 A.X K2 来说,低精度不是训练之后才产生的损失,而是训练本身的副产物——本来就不存在一个可供参照的高精度原版。
第二,像 DeepSeek-V4 这样按参数类型使用不同精度的配置正在增多。按卡片所说,只有 MoE 专家参数是 FP4,其余大部分是 FP8。事后量化工具很难原样复现这种配置。
第三,即便如此,社区转换版依然有它存在的理由。厂商发布的是面向数据中心 GPU 的 FP8 和 NVFP4,而能在笔记本上跑的 GGUF、面向 Apple 芯片的 MLX,依然是社区的活儿。上一篇里看到的 Bonsai-27B 那种每权重 1.125 比特的极端压缩,不会出自厂商之手。
精度选择在实际性能上如何体现,已经在量化格式对比和推理显存计算法里讲过。
结语 —— 能验证的部分,和只能信的部分
把这条流水线通读一遍之后,界线就变得清晰了。凡是会进入 config.json 的东西都是可验证的:层数、专家数、KV 头数、词表大小、最大位置编码。文件列表和许可证原文也是。而训练数据构成、token 预算、扩展效率的提升、基准分数,全都是厂商自己的陈述。
所以实务中能做的事有两件:能验证的东西自己去核实,属于陈述的东西就当作陈述来对待,在自己的工作里重新验证一遍。看 safetensors 的 header,而不是光看参数量;用真实的长输入重新测一遍质量,而不是只看标注的上下文长度;跑自己的评测集,而不是照搬卡片上的基准表。
下一篇会整理出把这套核实工作压缩到 5 分钟之内完成的顺序:模型卡片该从哪里开始读,什么可以跳过,又会在哪里悄悄出问题。
현재 단락 (1/89)
把 2026 年夏天发布的几张开放权重模型卡片摆在一起读,会发现一个规律:架构是用表格、大段文字、图示来讲的,层数、专家数、注意力类型,甚至激活函数都写得明明白白。可训练数据这一块,通常只有一段话,有...