拆开大模型中的 config.json:参数是表象,KV 账单才是分水岭

从 MoE 稀疏度、KV 账单到压缩与线性注意力 - 一次逐字段的技术对账,写给想搞懂「为什么这么设计」的人

Posted by tanjunchen on Saturday, November 7, 2026  ·  阅读  ·   ·  预计阅读约 19 分钟

写在前面

我们常常会在大模型发布会上听到:多少分、排第几、超越谁。而大模型中的 config.json 里讲的是预算:层数多少、每个 token 激活几个专家、KV 每个 token 占多少字节,这两件事经常对不上。所以每次有新模型开源,我第一件事不是看评测表,是把配置文件拉下来读一遍 - 因为分数会骗人,结构不会。一个模型想在 1M 上下文上跑得便宜,它在配置里必须留下痕迹;如果没有,那宣传里的"1M"就是服务侧外推出来的数字。

这篇文章想回答三个问题:

  1. 国内开源大模型在结构上到底差在哪?
  2. 每个设计在省什么,又付出了什么代价?
  3. 为什么有些反直觉的结论会成立(比如"稀疏注意力不省显存"、“混合架构反而更贵”)?

上一篇我单独拆了 Kimi K3.1 Pro 的 69:24,这一篇把它放回牌桌上,和其他的模型一起对比。

方法与口径:配置来自 2026-11-07 这个日期的 Hugging Face 仓库。config.json 只描述结构,不含实际权重;文中参数量是按结构粗算的,不是官方数字。


一、先看三块内容:参数、KV、注意力

如果你只想记住一件事,记住这个:大模型的成本由三个数决定,而这三个数全都写在 config 里。

1.1 总参数与激活参数

MoE(混合专家)模型的参数分两个口径:

  • 总参数:权重文件里一共有多少个参数。它决定显存要装多少。
  • 激活参数:生成每一个 token 时真正参与计算的参数量。它决定算力和带宽要花多少。

两者之间差着一个数量级。以 Kimi K3 为例:2.8T 总参数,但每 token 只激活 104B - 因为它从 896 个专家里只挑 16 个。

打个比方:总参数是一整座图书馆的藏书量,激活参数是你每次去借的那十几本。图书馆越大不等于你读书越快,但馆子越大,地皮越贵。

1.2 KV cache:长上下文真正的账单

模型在读一个 token 时,会把它的 Key/Value 向量存下来,供后面所有 token 查用。这份"笔记"就是 KV cache。

它的可怕之处在于线性增长:上下文翻倍,KV 也翻倍;上下文到 1M,KV 就按 1M 算。而它的大小可以用一行公式估出来:

KV/token = Σ(随长度增长的层数 × 每层维度 D) × 2 字节(BF16)

D 怎么取值,取决于注意力类型:

注意力类型每层维度 D说明
MHA / GQA / MQAkv_heads × head_dim × 2K 和 V 分开存,所以要乘 2
MLA(DeepSeek 系)kv_lora_rank + qk_rope_head_dim把 K/V 压进一个低秩潜向量,不乘 2

举个具体例子。GLM-5.3 是 MLA,kv_lora_rank = 512、qk_rope_head_dim = 64,78 层全部随长度增长:

78 × (512 + 64) × 2 B = 89,856 B ≈ 88 KB / token

再举个 GQA 的。Qwen3.8 只有 23 层随长度增长,但它是 4 个 KV 头 × 256 维:

23 × (4 × 256 × 2) × 2 B = 94,208 B ≈ 92 KB / token

这两行算完,你就明白为什么"层数多"的模型不一定更贵 - 决定账单的是 增长层数 × 每层维度,不是总层数。

1.3 省钱的三种姿势

长上下文太贵,于是大家想了三条路:

同一张牌桌,三种省钱姿势:压缩 KV + 稀疏检索、线性/状态空间混合、极致稀疏 MoE,以及各自的代价

  • 压缩派:历史照存,但"缩微"。要么按比例合并(每 4 个 token 并成 1 份),要么只保留稀疏的索引。
  • 线性派:不存历史,改成一个定长的记忆状态。上下文再长,这份状态大小不变。
  • 稀疏派:和 KV 无关,省的是算力 - 每个 token 只激活少数专家。

前两条改的是注意力,第三条改的是 FFN。它们不互斥,事实上现在的旗舰是三条一起上。

下面的牌桌,就是按这三条路线摆的。


二、牌桌:五家一梯队,两家二梯队

厂商旗舰(2026-11)总参 / 激活注意力路线上下文许可
深度求索V4-Pro / V4.1-Flash1.6T / 49B;284B / 13BCSA + HCA 压缩1MMIT
阿里Qwen3.8-2.4T-A95B2.4T / 95BGated DeltaNet,全:线 = 1:3256K(config)/ ~1M(API)自定义(MaaS >$50M 需另谈);27B 为 Apache 2.0
月之暗面Kimi K3.1 Pro2.8T / 104BKDA 69 层 + Gated DSA 24 层1M自定义(非标准 MIT)
智谱GLM-5.3 / GLM-5.3-Flash744B / 40B;320B / 18BDSA + IndexShare;线性 + 稀疏1MMIT
腾讯混元 Hy4770B / 49BMoE + 视觉 / Computer Use1M待开源(gated)
MiniMaxM3428B / 23BMSA 块级稀疏1M权重已开
百度ERNIE-5.5-Flash280B / 14B128× 压缩 + Hyper-Connections1M权重已开

把这张表按"注意力怎么省"重排一遍,三条路线就非常清楚了:

  1. 压缩 KV + 稀疏检索:DeepSeek 的 CSA/HCA、GLM 的 DSA+IndexShare、ERNIE 的 ÷128、MiniMax 的 MSA。保真度高、KV 可控,实现最复杂。
  2. 线性 / 状态空间混合:Qwen 的 Gated DeltaNet、Kimi 的 KDA、GLM-5.3-Flash 的线性层。长上下文吞吐最好、KV 最省,但要靠少量稀疏层补召回精度。
  3. 极致稀疏 MoE:所有旗舰都在做,激活比压到 3%–6%,Kimi 更是 16/896 ≈ 1.8%。

一句话:竞争已经从"参数多大"变成"每个激活参数换多少能力、每百万 token 要多少 KV"。


三、第一课:参数量是怎么从配置里算出来的

先看规格表,为后面所有推理提供"原始数据"。

模型架构类层数(+MTP)hiddenheads/KVhead_dim专家 总/激活/共享expert FFNctx(config)
GLM-5GlmMoeDsa78(+1)614464/64256 (192+64)256/8/12048202,752
GLM-5.2同上78(+1)614464/64256256/8/120481,048,576
GLM-5.3同上78(+1)614464/64256256/8/120481,048,576
GLM-5.3-Flashglm5_next_text45(+1)409664/64256288/8/120481,048,576
DeepSeek-V3.2DeepseekV3261(+1)7168128/128MLA 576256/8/12048163,840
DeepSeek-V4-FlashDeepseekV443(+1)409664/1512256/6/120481,048,576
DeepSeek-V4-Pro同上61(+1)7168128/1512384/6/130721,048,576
Qwen3.5-397Bqwen3_5_moe60(+1)409632/2256512/10/11024262,144
Qwen3.6-35B-A3B同上40(+1)204816/2256256/8/1512262,144
Qwen3.8-2.4T同上92(+1)819264/4256512/10/12048262,144
Kimi K3 / K3.1KimiLinear93(+0)716896/96128+64896/16/230721,048,576
混元 Hy3HYV380(+1)409664/8128192/8/11536262,144
MiniMax M3MiniMaxM3Sparse60(+7 MTP)614464/4128128/4/130721,048,576
ERNIE-5.5-FlashErnie5_5_Moe43(+1)409664/64512512/10/120481,048,576

四行值得先圈出来:

  • DeepSeek V4 把 kv_heads 压到 1,head_dim 拉到 512。这是"极小 KV 头、极大头维"的极端设计,和 V3.2 的 128 头、MLA 576 维完全是两种审美。
  • Qwen 全系 max_position_embeddings 都是 262,144,没有一代是 1M。API 标称接近百万,是服务侧外推,不是权重原生。
  • Kimi 和 GLM-5.3-Flash 的线性层在 config 里都叫 kda_layers,同名不是巧合 - 线性注意力的实现正在快速趋同。
  • Hy3 是全场唯一没有稀疏、没有索引器的旗舰:80 层纯 GQA(64/8)。

3.1 粗算公式

MoE 的参数绝大部分在专家里,所以可以这样估:

N ≈ MoE 层数 × 专家数 × 3 × hidden × expert_ffn

乘 3 是因为每个专家有三个矩阵(gate / up / down)。这个方法漏掉了注意力、embedding、共享专家和 lm_head,所以结果会略低于官方数字。

和官方口径对比:

模型config 粗算官方偏差
GLM-5.3727B744B−2%
GLM-5.3-Flash306B320B−4%
DeepSeek-V4-Pro1,549B1.6T−3%
DeepSeek-V4-Flash278B284B−2%
Qwen3.5-397B389B397B−2%
Qwen3.6-35B-A3B33B35B−6%
Qwen3.8-2.4T2,375B2.4T−1%
Kimi K32,726B2.8T−3%
混元 Hy3287B295B−3%
MiniMax M3413B + emb428B≈0

按 config 粗算的参数量与官方口径的偏差:十个模型全部落在 ±6% 容差内

模型全部落在 ±6% 以内,说明这套公式和厂商口径是同一套账。 漏掉的部分本来就只有百分之几,所以偏差集中在负方向、且很小 - 这反过来证明了这些参数是可信的。

3.2 一个把 2.8T 装进 1.56TB 的技巧

Kimi 的 2.8T 是怎么"装下"的?靠 routed_expert_hidden_size = 3584:

专家不是在全宽 7168 维上计算,而是先被投影到 3584 维的潜空间里,算完再投回去。如果按 7168 直算,同样结构会膨胀到 5.5T。

这就是"Latent MoE"四个字值钱的地方 - 它不是营销词,是省掉一半显存的具体手段。


四、压缩派:把历史记录"缩微"

压缩派的核心假设很朴素:不是每一个历史 token 都值得保留一份完整的 KV。

4.1 DeepSeek:把压缩率写成一个数组

DeepSeek V4 的配置里有一个非常直白的字段:compress_ratios,取值 0 / 4 / 128。

它的含义是"每多少个 token 合并成一份 KV":

  • 0:不压缩,逐 token 保留;
  • 4:4 个 token 合成 1 份 - 分辨率降到四分之一;
  • 128:128 个 token 合成 1 份 - 只留"大意"。

V4-Pro 的分布是:1 层不压、30 层四压一、31 层一百二十八压一。折算成等效层数是 1 + 30/4 + 31/128 ≈ 8.7 层 - 从 61 层降到 8.7 层,KV 直接砍掉 85%。

为什么近处细、远处粗? 因为注意力的需求本来就是分层的:最近几十个 token 决定了续写的连贯性,需要高分辨率;几万 token 之前的内容只提供背景,粗略即可。这跟人读文档的习惯一样 - 上一段逐字看,前面几章只记结论。

配套还有两个动作:

  • kv_heads = 1,head_dim = 512:把 KV 头压到 1 个(MQA 思路),用超大的 head_dim 保住表达能力。V3.2 是 128 头、MLA 576 维,V4 换成了完全相反的比例。
  • 前 3 层 hash 路由:最前面几层用哈希决定路由,省掉打分。

4.2 GLM:让 4 层共用一次索引

GLM 走的是稀疏路线,但加了一个很巧的设计:IndexShare。

DSA(DeepSeek Sparse Attention)的原理是:用一个轻量索引器给每个 query 打分,只挑 top-k 个 token 做真正的注意力。问题是 - 每一层都要算一遍索引,这笔开销不小。

GLM 的观察是:相邻层的 top-k 选择高度重叠,实测重叠度 70%–100%。既然四层里挑的东西差不多,那为什么要各算各的?

于是配置里出现了:

  • indexer_types:21 个 full + 57 个 shared;
  • index_topk_freq = 4。

意思是每 4 层共享一次索引,被共享的层不再重新选位置,但注意力输出仍然每层独立计算。

这是"省一次打分"和"保每层表达"之间的折中 - 索引共享了,计算没有偷工。

4.3 ERNIE:几乎是 DeepSeek V4 的同一套配方

看完 ERNIE-5.5-Flash 的配置,我有点意外:kv_heads=1、head_dim=512、压缩率 128、hyper_connections、mqa_dsa。

这就是 DeepSeek V4 那套"极小 KV 头 + 大 head_dim + 高压缩率"的组合。

连 hyper_connections 这种细节都一致,说明"高效基座"的配方已经在行业里流通了。

4.4 MiniMax:块级稀疏,省算力不省显存

MiniMax M3 是另一种稀疏:block 128、top-16 块、4 个索引头。

它以 128 个 token 为一块,只挑最相关的 16 块做注意力。计算量降到 16/总数,但KV 仍然全量存储 - 因为你不知道下一次会挑哪一块。

这是一个关键区别,后面算账时会用到:稀疏注意力省的是计算,不是显存。

4.5 压缩派的共同代价

  • 分辨率损失:压缩比越高,召回细节的能力越弱,必须靠低压缩层和稀疏层补偿;
  • 实现复杂度:压缩器、索引器、路由三套机制要一起调,出问题很难定位;
  • 外部不可验证:压缩质量好不好,只能看厂商自测。

五、线性派:用定长记忆换无限上下文

如果压缩派是"把档案拍照缩小",线性派就是换个思路 - 压根不存档案,只维护一本摘要。

5.1 一个公式看懂它为什么便宜

标准注意力要存所有历史 token 的 KV,成本随长度线性增长。线性注意力换了一种实现:它维护一个固定大小的状态矩阵,每读一个 token 就更新一次。

结果就是:上下文从 1K 涨到 1M,这份状态的大小不变。

代价也很直接 - 状态容量有限,精确回忆某个具体位置的能力会弱。所以纯线性模型在长文检索上总是吃亏。

5.2 KDA:比"遗忘"更细一档

Kimi 用的 KDA(Kimi Delta Attention)是在 Gated DeltaNet 上改的。

Gated DeltaNet 的遗忘门是每个头一个标量 - 一个头共用一个遗忘速率。 KDA 把它拆成每个特征维度一个遗忘率:通道级的细粒度门控。

差别在哪?打个比方:一个团队共用一本笔记本(头级),和每个人各有一本(通道级)。后者的记忆管理显然更精细 - 重要的维度可以长期保留,不重要的快速清空。

实现上,KDA 用了一种 “Diagonal-Plus-Low-Rank”(DPLR)转移矩阵的特殊变体,把每一步的更新压缩成可以分块并行计算的形式 - 这是它能在 GPU 上跑得快、而不是退化成 RNN 串行扫描的关键。

5.3 三种混合比例,其实是同一个数

线性派都不敢全用线性层,必须留一部分"全注意力"或用稀疏层补精度。有趣的是,三家最终都收敛到同一个比例:

模型全 / 稀疏层线性层全 : 线
Qwen3.515451 : 3
Qwen3.610301 : 3
Qwen3.823691 : 3
Kimi K3 / K3.124691 : 2.9
GLM-5.3-Flash11341 : 3.1

三家、五个模型、跨度从 35B 到 2.4T,比例全部落在 1:3 附近。 这不是巧合,是被同一组约束逼出来的平衡点:线性层再少,长上下文吞吐上不去;线性层再多,召回精度掉得厉害。

这里有个容易混淆的说法要澄清:很多地方说"1:4 交错",指的是周期为 4(每 4 层插 1 层全注意力),换算成比例是 1:3。周期和比例是两个概念,看配置里的层数数组才不会搞错 - Qwen3.8 是 23 个全注意力层配 69 个线性层,算出来就是 1:3。

5.4 为什么线性派最适合长上下文服务

回到 1.2 节的公式:MLA/GQA 的成本是 层数 × 维度,线性层的成本是常数。

所以对 Kimi 来说,93 层里只有 24 层随长度增长,另外 69 层的开销在 1K 和 1M 上下文下完全一样。这就是为什么它的每 token KV 只要 27 KB - 不到 GLM-5.3 的三分之一。

代价是那 69 层的定长状态本身要占显存,而且在短上下文场景下这笔开销是白付的。所以线性派在"1M 长文"上是赢家,在"8K 短对话"上未必划算。


六、稀疏派:MoE 的行业共识

第三条路和注意力无关,改的是 FFN。

所有旗舰都在做同一件事:把专家切细、每次只激活少数。896 选 16(Kimi)、512 选 10(Qwen3.8、ERNIE)、384 选 6(V4-Pro)、256 选 8(GLM、Qwen3.5),激活比全部压在 3%–6%。

再加两个通用技巧:

  • 共享专家:留 1–2 个对每个 token 都生效的专家,路由失手时兜底;
  • Latent 压缩:先把表示压到低维再分发(Kimi 3584、DeepSeek 系同理),省显存也省专家并行的通信量。

这条路线已经没有差异化空间了 - 它是所有旗舰共同的地基。真正的差异全在前两条:注意力怎么省 KV。


七、KV 账单:每 token 的真金白银

把前面的公式套到每个模型上,只算随序列长度增长的 KV(BF16,每 token):

模型增长层每 token 维度KV/token1M 单请求说明
MiniMax M3601024120.0 KB~129 GB稀疏只省计算,不省 KV
Qwen3.823204892.0 KB~99 GB4 KV 头 × 256 × (K,V)
GLM-5.37857687.8 KB~94 GBMLA 512+64,全部层都涨
DeepSeek-V3.26157668.6 KB~74 GBMLA
Kimi K32457627.0 KB~29 GB69 层 KDA 定长
DeepSeek-V4-Pro61等效 8,95217.5 KB~19 GB1 全 + 30÷4 + 31÷128
GLM-5.3-Flash1157612.4 KB~13 GB34 层线性定长

同样标称 1M 上下文,每 token 的 KV 账单从 12.4 KB 到 120 KB,相差约 7 倍

看最后一列。 一个跑满 1M 上下文的请求,GLM-5.3 光 KV 就要 94 GB - 比一张 H100 的 80 GB 显存还多。MiniMax M3 更是要 129 GB。而 GLM-5.3-Flash 只要 13 GB,一张消费级卡都塞得下。

这就是"1M 上下文"背后的真实账单:能不能跑满,不取决于参数量,取决于注意力结构。

两个反直觉的结论

第一,Qwen 的混合架构并不省 KV。

直觉上,“用了线性注意力应该很省”。但 Qwen3.8 只有 23 层随长度增长,每层却是 4 个 KV 头 × 256 维 × 2 = 2048 维 - 涨起来和 MLA 一个量级(92 KB vs 88 KB)。

它省的是计算(只有 23 层是平方复杂度),不是显存。它的优势在高并发下的 FLOPs,不在单请求的显存占用。

第二,“稀疏"和"线性"省的完全不是一回事。

  • 稀疏(M3、GLM 的 DSA):只对少数 token 做计算,但KV 仍然全量存;
  • 线性(Kimi、Flash):KV 根本不按长度存,改成定长状态。

所以论"省显存"的排序是:线性 > 压缩 > 稀疏。论"保精度"的排序恰好反过来。这是一条明确的取舍曲线,没有免费午餐。

口径说明:FP8 KV 可再减半;线性层的定长状态与 DSA 索引器缓存另计。

KV 为什么这么涨、涨在哪几层,我在 KV Cache 上下篇 里拆过。


八、三代演进:谁真的换了架构

判断"换代"有个简单标准:config.json 有没有变。

变了架构字段(层数、注意力类型、专家数、压缩率),叫换架构;只改了量化配置或权重,叫做后训练。按这个标准看最近三代:

厂商三代架构真正变了什么
DeepSeekV3.2 → V4 → V4.1V3.2 首次上 DSA;V4 换架构(CSA/HCA、mHC、Muon、FP4、kv_heads=1);V4.1 换家族(原生多模态,我单独拆过:见这篇)
阿里3.5 → 3.6 → 3.83.5 验证线性+稀疏(397B-A17B);3.6 下放到 35B-A3B;3.8 把同一套放大到 2.4T、92 层
月之暗面K2.6 → K3 → K3.1K3 换架构(KDA + Attention Residuals + 896 专家);K3.1 在 24 层 MLA 之上加 DSA,其余靠后训练
智谱5 → 5.1 → 5.2 → 5.35 上 DSA;5.1 纯后训练;5.2 上 IndexShare 做到 1M;5.3 零架构改动
腾讯Hy3 → Hy4Hy3 是 295B/21B 的 GQA 模型;Hy4 放大到 770B/49B,加视觉与 Computer Use

真正换架构的只有两次:DeepSeek V4 和 Kimi K3。 GLM-5.3 和 Kimi K3.1 都属于"同一基座、后训练放大”。

GLM 这条有硬证据:把 GLM-5.2 和 5.3 的 config 做 diff,除了 quantization_config(5.3 加了 FP8 block-wise)和 transformers 版本号,逐字节相同。所谓"编程能力提升",确实全部来自后训练。

Kimi K3.1 则是个有意思的中间态:官方说它是 K3 的后训练版,但 config 显示它在 24 层 MLA 之上加了 DSA(dsa_layers 正好是 4、8、12……92、93,共 24 层,top-k 2048)。架构动了一点点,能力主要来自后训练 - 这种"小数点版本"的做法,正在变成行业惯例。


九、开源

档位代表实际含义
A. 权重 + 宽松许可 + 部分基础设施DeepSeek(MIT)、GLM(MIT)可商用、可改、可自部署;DeepSeek 还开源了 MegaMoE、DeepGEMM、TileLang
B. 权重 + Apache 2.0Qwen 27B/35B、混元 Hy3商用无障碍,但训练数据、训练代码基本不给
C. 权重 + 营收门槛Qwen3.8-2.4T(MaaS 年营收 > $50M 需另谈)、Kimi K3(自定义许可)权重能下,规模化商用要谈判
D. 只有 API / 口头开源字节豆包、混元 Hy4(发布时)、各家 Max 闭源版不能算开源

必须说清楚:“开源权重"不等于"开源”。 没有任何一家放出完整训练数据,训练代码也只有少数基础设施组件。

判断"真开源"看四件事:权重能否下载、许可证是否允许商用、是否给推理代码、是否给可复现的训练说明。四条全中的,目前一个都没有。

混元 Hy4 是这一轮的典型:11 月 4 日发布会说"模型权重近期开源",但到今天,HF 仓库是 gated(401),ModelScope 上找不到,config 拿不到。在权重真正落地之前,它只能算 D 档。 选型时把它写进"可私有化"清单,是会踩坑的。


十、评测口径与工程可用性

10.1 同一模型换个 harness 能差 30 分

这是目前最不可比的一块,也是最容易被话术带偏的一块。

2026 年 10 月的论文《Finding the Right Fit》测了 66 种"模型 × harness"组合:在 Terminal-Bench 4 上,Claude 在 OpenHands 里领先 GPT 7.94 分,在 PI 里却落后 30.16 分;五个模型里有四个的"最佳 harness"随 benchmark 变化;厂商自家 harness 不一定最好。另一篇《The Scaffold Effect》结论一致。

而厂商自报普遍是跨 harness 比较:Qwen 用 OpenCode 测,Claude 用 Claude Code(avg@10、5 小时超时),GPT 用 Codex。超时、token 预算、重试策略全不同,数字只能当营销材料。

再加上 benchmark 版本混用:Terminal-Bench 2.1 / 3.0 / 4.0 难度差一个数量级。GLM-5.3 在 TB3 是 28.3,DeepSeek V4.1-Flash 在 TB4 是 31.2,不能直接对比。还有一堆自建 bench - Z.ai Code Bench、DSBench、Kimi Code Bench、Hy4 内部办公评测 - 外部无法复现。

自己验的最小方案:固定同一个 harness、同一 token 预算、同一超时;拿 20–50 条真实业务任务;同时记录通过率、输出 token 数、墙钟时间、人工修改量。只看通过率,会被"话多但能过"的模型骗到。

10.2 分数之外,行为质量更能说明问题

  • 输出风格差异极大:同一组前端任务里,GLM-5.3 平均写 ~710 行、~5.4 万输出 token;Kimi K3 最紧凑 ~450 行;DeepSeek V4-Pro 最快(~114 tok/s)。“谁更强"之外,token 成本能差 30%–50%。
  • 工具调用鲁棒性比分数更重要:harness 论文发现 Kimi 常发出格式错误的 tool call,在能"修复/重试"的 harness(openJiuwen)里表现最好;GPT 则在"精简脚手架”(PI)里最好。选模型时要把 harness 的容错能力算进去。
  • 长程稳定性仍是分水岭:有实测指出 DeepSeek V4-Pro 的 coding agent 前两轮很强,多轮后产物开始退化;GLM 的优势恰好在"守住工程约束、不越界修改"。
  • 幻觉口径不统一:腾讯自报 Hy4 幻觉率 7.2%、猜测型错误 5.6%;Kimi 自报 K3.1 Pro 在内部压力测试上 claim-level 幻觉 23.4%→8.3%。都是厂商自建测试,只能看趋势。
  • 安全开始影响可用性:GLM-5.3 因网络安全能力涌现而延迟放权重、加"可信访问";混元主动剔除攻击性安全数据。Open weights 不等于"无限制"。

10.3 能下载 ≠ 能跑

  • 能私有化的其实只有中小杯:GLM-5.3-Flash(320B/18B)、Qwen3.6-35B-A3B、ERNIE-5.5-Flash(280B/14B)是现实选择;V4-Pro(1.6T)、Kimi K3(2.8T)要 64 卡级起步,1M 上下文更是显存黑洞(有工程侧估算 V4-Pro 跑满 1M 需 64 张 H20 级别)。
  • 量化生态(原理与取舍见我写的 量化上下篇):FP8 已是云端主流;DeepSeek 有 FP4 QAT;社区 GGUF/Q4 让 744B 级模型能塞进 256GB 统一内存,但速度只有个位数 token/s。
  • 推理框架:vLLM/SGLang 基本 day-0;GLM-Flash 还支持 TokenSpeed;国产芯片(昇腾、寒武纪、摩尔线程、海光、壁仞、沐曦、昆仑芯、平头哥)普遍 day-0 适配。
  • API 兼容性:OpenAI Chat Completions 是标配,Anthropic Messages 与 OpenAI Responses 也在快速补齐,Claude Code / Codex / OpenCode 可直接接。

十一、怎么选

场景首选理由
私有化 + 低成本 + 多模态GLM-5.3-Flash、Qwen3.6-35B-A3BMIT/Apache、单机可跑、视觉可用
最强 agentic coding,不管成本Kimi K3.1 Pro、DeepSeek V4-Pro长程任务与 Terminal-Bench 第一梯队
工程交付 / 守规范 / 长上下文GLM-5.31M + 强制思考 + 工程约束遵循
性价比 API、中文写作DeepSeek V4.1-FlashMIT、便宜、中文自然
多语言 / 生态 / 微调底座Qwen3 的 27BApache 2.0、工具链最全
办公 / 视觉 / Computer Use混元 Hy4视觉+GUI 是差异点,但要等权重

三条判断:

  1. 架构已经收敛到"MoE + 混合/稀疏注意力 + 长上下文",接下来的差异在后训练规模和推理经济学,不在参数量。
  2. 许可证正在分层:MIT/Apache 的"Flash 层"铺生态,营收门槛的"Max 层"收钱。选型先看许可证,再看分数。
  3. 所有榜单都要打折看:同一模型换 harness 能差 30 分。唯一可信的评测,是你自己业务任务上的那 50 条。

收尾

把开源大模型的配置读完,我最大的感受不是"国产模型真强",而是这一代的分工已经很清楚了:

DeepSeek 负责把单位成本打到最低,Kimi 负责把长程任务推到极限,Qwen 负责生态与多语言,GLM 负责工程交付,腾讯负责把模型塞进办公流。

而对做 Infra 的人来说,这是好事 - 当模型开始按场景分工,选型就不再是"谁分数高",而是"谁的账单和你的负载匹配"。

而这张账单,config.json 里写得清清楚楚。


数据来源:各模型 Hugging Face 仓库的 config.json(2026-11-07);厂商口径来自各官方博客与技术报告。参数量为按结构粗算,非官方数字;KV 为 BF16 下的等效估算,未计 FP8 与索引器缓存。混元 Hy4 无公开 config,未纳入统计。