Agnes 3.0 Flash 刚上线就刷屏:HF 36 名 + MS 9 名,双榜在榜的含金量到底多高?
上线没几天,Agnes 3.0 Flash 的讨论度就冲上来了:头条上"256K 上下文最稳""33B 开源只 18 层吃显存"的实测帖,CSDN 上一批"免费 Token 随便用,接入 Trae / Codex++ / OpenCode"的教程——单篇阅读量从几百到三千多不等。而传播链里被反复引用的,是两个数字:Hugging Face 开放 LLM 榜第 36 名,Artificial Analysis(下称 MS)榜第 9 名,"双榜在榜"。
但先把话说透:这两个名次,社区目前没人能仅凭本仓库把它们逐格核对出来——它们是第三方榜单的位次,仓库本身只给了"production 模型在 MS 有独立条目"这一条锚点(README.md 首段)。真正能在本地被逐行审计的,是这份 33B Preview 权重的架构、权重布局与部署链路。本文的读法因此分三步:先拆解"双榜在榜"的热度与水分,再用 config.json 和 sglang 补丁源码把 3.0 相比 2.x 的真实升级讲清楚,最后说上线初期更值得盯的几个指标。
一、双榜位次的热度与水分:一个名字,两个 checkpoint
1. 官方自己先做了切割
打开 README.md,模型卡第一段就是罕见坦诚的版本声明:
本仓库包含 Agnes 3.0 Flash 的早期开放权重 Preview checkpoint,它与 Artificial Analysis 页面所列的新版 production/API checkpoint 不同。本 Preview 版本约 33B 参数,上下文窗口 262,144 token;production/API 版本使用不同的 checkpoint 和配置,具有 1M token 上下文窗口;production/API 版本的评测结果不应归属于本仓库发布的 Preview 权重。
这段话的信息量比大多数榜单截图都大。社区流传的"MS 9 名""1M 上下文""4 美元包月",严格说大多挂在线上 API 的 production 模型上;而你能下载、能跑、能审计源码的,是这份 33B dense、256K 的 Preview 权重。README_zh.md 还补了一句关键澄清:Preview 是 dense 架构,"不采用 MoE,也不存在 3B active parameters 的口径"——这是直接回应评测表里其他模型"总参/激活参"混标带来的误读。
一个连榜单成绩都可能被张冠李戴的项目,主动在模型卡里写"评测结果不应归属于本仓库权重",并把仓库名加上 Preview 后缀防混淆——这种操作本身是对"含金量"的加分项:团队知道名次会被过度解读,所以先一步画好了边界。边界画清楚之后,"双榜在榜"里真正属于开源社区可独立复现的部分,就要按 Preview 的成绩来算,而不是按 API 的成绩来算。
2. 评测表是"参考值",不是受控对比
模型卡里的评测图(仓库内对应矢量图 assets/agnes_benchmarks.svg):
表里 Preview 的成绩:IFBench 74.20、SciCode 38.08、GPQA Diamond 85.05、AA-LCR 68.33、AA-Omniscience 23.00;对照组包括 Qwen3.6-35B-A3B(64.4 / 35.8 / 84.1 / 66.7 / 18.8)、Kimi K2.5(43.7 / 39.6 / 78.9 / 59.0 / 22.9)、MiniMax M3(82.9 / 45.4 / 92.9 / 74.0 / 16.7)等。官方脚注写得很克制:
数据来自不同来源、不同 harness、不同模型快照,不构成同一设置下的受控横向对比,跨列数值仅作参考。
把这两条合起来,"双榜在榜"的含金量可以这样定性:名次是真在榜的(传播的起点成立),但名次的"含金量"取决于你读的是哪个 checkpoint、哪个评测口径的成绩。看表内相对位置:33B 的 Preview 在 GPQA Diamond 上以 85.05 压过 35B-A3B 的 84.1,在 IFBench 上 74.20 对 64.4 也是明显领先——"小参数挤进头部榜中游"这个叙事是站得住的。但第一梯队(GPQA 90+ 的 Qwen3.8 系、DeepSeek V4 Flash,SciCode 45–53 分档)与 Preview 之间仍有肉眼可见的差距,AA-Omniscience 的 23.00 更是全场中下。所以结论是:"36 名 / 9 名"是"高性价比入围头部榜"的叙事,不是"小模型打赢大模型"的叙事。水分不在名次本身,而在把 API 模型的名次、1M 上下文和开源 Preview 权重缝合成一个"全面碾压"的故事里——社区标题党干的就是这件事。
3. 刷屏的主体其实是"免费 API",不是权重
把抓到的社区情报按主题聚类,会看到更真实的热度结构:CSDN 阅读量最高的是"免费 Token 随便用!Agnes 接入 Trae IDE"(约 3500 阅读)、"Codex++ 零成本接入 Agnes 免费全模态 API"(约 3000 阅读),其后是一串 Claude Code、OpenCode、Continue、Cline 的接入教程;而讲混合注意力架构、讲 SGLang 权重翻译、讲 Preview 部署的技术内容,在情报里几乎缺席。
这说明当前传播的发动机是"文本/图像/视频三模态 API 无限期免费",双榜名次是权威背书,开源权重的技术含量反而是传播链里最弱的一环。这对 Agnes AI 是双刃剑:获客近乎零摩擦,但社区对模型本体的技术讨论沉淀得少,开源飞轮还没真正转起来——这也是下一节为什么必须回到仓库源码的原因。
二、3.0 相比 2.x 的升级:主刀不是参数,是混合注意力 + 并联 FFN
仓库没有内置 2.x 对比材料,官方也没在模型卡里列"2.x 到 3.0 变更清单",所以这一节只讲这份 3.0 Preview 源码里能直接读到的东西。
1. 72 层里只有 18 层吃 KV cache
config.json 的 text_config.layer_types 是一个 72 项数组,规律极其整齐——global_attention_interval 为 4,每 4 层里 3 层是 agnes_delta_attention、1 层是 agnes_global_attention:
"layer_types": [ "agnes_delta_attention", "agnes_delta_attention", "agnes_delta_attention", "agnes_global_attention", "agnes_delta_attention", "……" ], "global_attention_interval": 4两类层的规格也写在配置里:全局注意力层是 24 query / 4 KV 头(GQA 6:1)、head dim 256、q/k 带 RMS-norm、输出过 sigmoid 门(attn_output_gate 为 true);delta rule 层是循环结构,16 key / 48 value 头、head dim 128,前置 kernel=4 因果卷积,且 mamba_ssm_dtype 为 float32——循环状态用 fp32 存,长序列递推不漂移。modeling_agnes.py 里能看到对应的完整实现:delta_rule_chunked(prefill 分块递推,chunk=64)与 delta_rule_stepwise(decode 逐步递推)双路径,以及三轴交错 MRoPE(text/height/width,分段 11:11:10,只作用于 head dim 前 25% 的 64 维,base 1e7)。
工程含义一句话:随序列长度线性膨胀的 KV cache 只需为 18 层付费,256K 上下文的显存压力约为同层数全注意力方案的四分之一。头条那句"33B 开源只 18 层吃显存"说的就是这件事——这是 3.0 长上下文能力与部署成本之间最核心的一笔。
2. 每层并联的第二路 FFN,以及它逼出来的 SGLang 补丁
config.json 里除了主分支 intermediate_size 17408(SwiGLU),还有 parallel_ffn_intermediate_size 2048——每一层都并联了一路更窄的第二 FFN。证据链是闭环的:model.safetensors.index.json 显示所有层的 mlp.parallel_ffn 三个投影被单独切进了一个 model-parallel-ffn.safetensors 文件(19 个主分片之外多出的那个文件就是它);modeling_agnes.py 的 AgnesMLP 构造函数同时接受 intermediate_size 与 parallel_size 两个参数。
这个设计对开源推理引擎是个真实适配难题——主流引擎没有"每层并联 FFN"的原生概念。仓库给出的解法在 sglang_patch/,只改三个文件:
| 文件 | 改动 |
|---|---|
| sglang_patch/nightly-dev-20260908-20ca564b/sglang/srt/configs/agnes.py | 新增:把 model_type 为 agnes 的配置翻译成 sglang 内置 hybrid 实现的语言 |
| sglang_patch/nightly-dev-20260908-20ca564b/sglang/srt/utils/hf_transformers/common.py | 末尾 +3 行,注册 AgnesConfig |
| sglang_patch/nightly-dev-20260908-20ca564b/sglang/srt/models/qwen3_5.py | 在 load_weights 权重流前加一个翻译生成器:delta_attn 前缀映射为 linear_attn、global_attn 映射为 self_attn,并把每层并联 FFN 的三个投影合并进主投影(gate/up 沿输出维、down 沿输入维) |
换句话说,3.0 没有等推理框架"原生支持",而是复用 Qwen3.5 已有的 hybrid 实现,一层权重名翻译 + 并联分支合并就打通了 SGLang。serve.sh 直接起官方 stock 镜像、按版本命中预构建补丁目录(nightly-dev-20260908-20ca564b 或 v0.5.19),命中不了就用 apply_patch.py 原地打补丁,全程不需要 fork 镜像。代价在 sglang_patch/README.md 的 Numerics 一节被量化得很清楚:合并并联分支改变了 down projection 的约简维度,served logits 与 transformers 实现不再 bit-identical——H200 TP1 实测全词表 KL 5.9e-4,反而低于 transformers 与 sglang 同一 checkpoint 之间 6.5e-4 的引擎固有差异,困惑度 17.07 对 17.05。把误差预算写得这么细,是给工程社区的质量信号。
3. 推理强度分档 + 工具调用:藏在模板里的产品化
generation_config.json 的默认采样参数 temperature 1.0 / top_p 0.95 / top_k 20,与 README 推荐值一致。chat_template.jinja 暴露了三个能力面:
- 推理强度三档:默认 xhigh,模板按档位向 system 段注入不同强度的思考指令(low 档明确要求"think briefly and move directly to the conclusion"),enable_thinking=False 则渲染空的 think 块——reasoning 是可调预算,不是开关;
- 工具调用:模板把工具定义渲染进 system 段,模型以 XML 风格(tool_call 包裹 function/parameter 标签)输出调用,结果以 tool 角色消息回灌;
- 多模态占位:图片、视频各有独立占位 token 与计数前缀(Picture N: / Video N:),system 消息禁止携带图像视频,processing_agnes.py 负责把占位符替换成视觉塔输出,图像/视频分别走 image_processing_agnes.py 与 video_processing_agnes.py(视觉塔 27 层、hidden 1152、patch 16、2x2 空间合并,见 config.json 的 vision_config)。
部署侧的门槛也被压到了最低:bf16 权重约 66GB(model.safetensors.index.json 的 total_size 为 66.18e9 字节),官方推荐单卡 H200 141GB 或 H100 80GB、--tp 1 起步、serve.sh 一条 docker 命令起 OpenAI 兼容服务,stream、tools、reasoning_effort 全部照 OpenAI 语义透传。对一个带自研混合架构的模型,这份"开箱链路完整度"本身就算升级的一部分。
三、位次分散、下载量偏小:下一步该盯哪些指标
1. 先承认两个短板
一是口径分散。同一个模型名之下,Preview 权重(33B / 256K)与 production API(1M 上下文)成绩互不归属,社区榜单引用、教程文章、本地实测三者各说各话——这次刷屏里已经出现"标称 512K 上下文实测"这类把不同版本混测的帖子,说明命名分裂正在制造新的混淆。二是开源侧的下载/讨论基本盘还薄。从公开情报看,围绕权重本身的下载量、Stars、独立第三方复现,在抓到的样本里都远小于 API 教程的热度;对比表里它的成绩也主要靠官方自测 + 第三方榜单背书,社区独立 harness 的复现数据还很少。"双榜在榜"是势,权重生态是力,目前势能明显领先于力量。
2. 比名次更值得盯的四个指标
- Preview 与 production 的评测收敛度。官方已声明两者不是同一 checkpoint,那么下一版开放权重是否向 API 模型对齐、差距多少,直接决定"双榜名次"能否最终落到开源权重上。看模型卡是否持续更新、Preview 标签是否消失即可。
- 第三方独立复现。官方表已自认"非受控对比",社区用同一 harness 重跑 Preview(尤其 SciCode 38.08 与 GPQA 85.05 这两端)的独立数据,是消除"水分"质疑的最硬通货;目前情报里只有零星上下文压测帖,尚无成体系的复现。
- 推理引擎原生支持的落地。当前 SGLang 走的是 sglang_patch/ 三文件覆盖 + 权重名翻译,误差已量化但毕竟是非原生路径。后续版本补丁是否收敛、VLLM 等引擎是否出现支持,决定了这份 18 层 KV 架构的优势能否被生态完整兑现,也决定了 serve.sh 这类"补丁启动器"能否退役。
- 下载量曲线 vs API 免费流量的转化率。免费 API 是最强获客漏斗,但漏斗下游要看的是"API 用户转开源部署"的比例——本地部署教程(如 FastChat/sglang 起服务)与权重下载量的环比,比任何榜单名次都更能反映开源生态是否真正启动。
3. 回到"含金量"三个字
双榜在榜的含金量,拆开看其实是三份:名次的真实性(可查、在榜,成立);成绩的相对位置(33B dense 在 IFBench、GPQA 上打平或压过 35B 级对照,成立但有限);以及可复现性(开源 Preview 与上榜 API 模型并非同一 checkpoint,这里要打折扣)。前两份撑起了"刷屏",第三份决定了这个项目的长线信誉。从仓库本身看,3.0 真正立得住的技术筹码——3:1 混合注意力把长上下文 KV 成本压到四分之一、每层并联 FFN 配一套误差可量化的 SGLang 适配、三档推理强度与工具调用进 chat template——都是这次开源 Preview 里实实在在写进 modeling_agnes.py 和 sglang_patch/ 的东西。热度会随榜单波动,这些才是接下来几个版本值得跟踪的主线。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考