DeepSeek-V4.1-Flash 拆解:1M 上下文,KV cache 只剩 1/4

DeepSeek-V4.1-Flash 拆解:1M 上下文,KV cache 只剩 1/4

原文:MarkTechPost - 《DeepSeek AI Released DeepSeek-V4.1-Flash with 1M Context, FP4 KV Cache, and Cross-Layer Attention Reuse》(https://www.marktechpost.com/2026/09/10/deepseek-ai-released-deepseek-v4-1-flash-with-1m-context-fp4-kv-cache-and-cross-layer-attention-reuse)

一、Agent 变长之后,最先失控的是 KV cache

长任务 Agent 把推理服务从"输出密集"变成了"输入密集":同一段上下文反复 prefill,动辄百万 token 的上下文,KV cache 会把 HBM 容量、SSD 容量和带宽一起吃掉。

这就是 DeepSeek 在 9 月 10 日发布的 V4.1-Flash 的靶心。它不是又一个"分数更高"的模型,而是一次围绕 cache 成本做的架构重构。DeepSeek 官方更新日志里还有一句很直白的话:V4.1 Flash 在性能、费用、速度、总用时等各项指标上已全面超越 DeepSeek V4 Pro,因此计划有序下线 V4 Pro------北京时间 9 月 14 日 12:00 之后到 V4.1 Pro 上线前,访问 deepseek-v4-pro 的请求会全部路由到 V4.1 Flash,并按 V4.1 Flash 单价计费。

这篇把它的关键机制拆开讲:为什么 prefill 能砍一半、cache 是怎么被压到 890 字节每 token 的、以及这对写 Agent 的人意味着什么。

二、先看数字

维度 DeepSeek-V4.1-Flash
结构 多模态 MoE,552B 主干 + 196B Engram 参数
上下文窗口 1M token
激活参数 prefill 每 token 激活 8B,decode 激活 16B
全局 KV cache 890 字节/token,约为 V4-Flash 的 1/4、DeepSeek-V1 的 1/437
许可 MIT,开源权重,Hugging Face 提供 vLLM / SGLang / Transformers 路径
API 模型名改为 deepseek-flash,价格同步下调

890 字节每 token 是个什么量级?可以自己算一下。一个把 1M 上下文塞满的会话,全局 KV cache 大约是:

python 复制代码
# 按官方口径换算(字节数推导,不是实测)
KV_BYTES_PER_TOKEN = 890        # V4.1-Flash 全局 KV cache
TOKENS = 1_000_000              # 1M 上下文

gib = KV_BYTES_PER_TOKEN * TOKENS / 1024 ** 3
print(f"1M token 全量 KV cache ≈ {gib:.2f} GiB")   # 约 0.83 GiB

# 对比上一代:V4-Flash 约 4 倍,V1 约 437 倍
for name, ratio in [("V4-Flash", 4), ("DeepSeek-V1", 437)]:
    print(f"{name}: ≈ {gib * ratio:.1f} GiB")

结果大致是 0.83 GiB;换成 V4-Flash 口径约 3.3 GiB,换成 V1 口径则是几百 GiB 的量级。这就是"长会话能不能放进显存"的分水岭。

三、Causal Encoder-Decoder:prefill 为什么能砍一半

V4.1-Flash 的 40 层主干被拆成 20 层 causal encoder 加 20 层 decoder。

关键在于 decoder 不自己算全局 KV。它通过每层的投影权重,从 encoder 最后一层的 hidden state 里推导出全局 KV。于是 prompt token 在 encoder 就"停住"了,prefill 计算量几乎减半。这个思路受到 YOCO 架构的启发。

每一层仍然跑一个 128 token 窗口的滑动窗口注意力(SWA),所以 decoder 的 SWA 状态可以用"只回放最后 128 个 prompt token"的方式重建。研究团队把这个做法叫 Decoder SWA Bounded Replay。

四、CSA2:沿着"层"这个轴压 cache

V4 系列此前是 CSA 和 Heavily Compressed Attention 混用,V4.1-Flash 换成了纯 CSA2,攻击方向是 cache 的层维度。

每个 CSA2 层被静态分配三种模式之一:

  • Full:自己算主 KV,从中投影出 indexer K,并选出新的 Top-512 索引。
  • Reindex:复用上一个 Full 层的主 KV 和 indexer K,但用自己的 indexer Q 重新打分。
  • Reuse:主 KV 和最新的 Top-K 索引都复用,直接跳过 indexer。

具体分配是:18 个 CSA2 encoder 层,压缩比 2,分 3 组每组 6 层(1 个 Full、5 个 Reuse);20 个 decoder 层,压缩比 1,分 5 组每组 4 层,第一组是 Full 加 3 个 Reuse,其余组是 Reindex 加 3 个 Reuse。decoder 里还有一个 Hierarchical Sparse Indexer,让 Full 层建出一个最多 16,384 个位置(2,048 个块,每块 8 个)的候选池,后面的 Reindex 层就只在这个有界集合上打分,而不是扫全上下文。

说白了,就是让绝大多数层共享少数几层算出来的 KV 和索引,把重复计算摊掉。

五、FP4 KV 与 Bounded Replay:持久化 cache 再降一截

主 KV cache 被量化成 FP4:E2M1 格式,每 16 个通道配一个 E4M3 scale,走 NVFP4 的思路但不带全局 scale。这是在 post-training 阶段用量化感知训练引入的,相比 V4 的 FP8 cache,存储几乎减半。

部署层面还有一个变化:SWA KV 不再持久化到 SSD。它放在一个从主机 DRAM 划出 10% 组成的分布式池里,TTL 是分钟级;全局 KV 则保证 72 小时寿命。一旦命中失败,Encoder SWA Bounded Replay 只需要重算 128 个 token,而不是"层数 × 窗口大小"。

再加上 Single-Pass mHC、第 1 层和第 14 层的 Engram 条件记忆模块、backbone 冻结后训练的 DSpark 投机解码、head-wise Muon 等改动,效果是:上下文从 4K 涨到 1M,单 token decode 的 FLOPs 只增加 1/4。

六、和上一代、和闭源旗舰比一比

MarkTechPost 整理了这张对比表(选摘):

基准 V4.1-Flash V4-Flash Opus-5 GPT-5.6 Sol
Terminal-Bench 2.1 90.6 82.7 89.1 88.8
DeepSWE v1.1 74.2 54.4 74.0 73.0
Terminal-Bench 4.0 31.2 7.0 51.8 39.9
Automation-Bench 54.8 37.7 50.3 45.8
GPQA Diamond 90.9 89.9 93.4 94.1
Codeforces(Rating) 3471 3289 n/a n/a

怎么读这张表?

一是相对上一代 V4-Flash 的提升是全面的,尤其是 Agent 类基准:Terminal-Bench 4.0 从 7.0 到 31.2,Automation-Bench 从 37.7 到 54.8,DeepSWE v1.1 从 54.4 到 74.2。

二是对闭源旗舰,它在 Terminal-Bench 2.1 和 DeepSWE v1.1 上略占上风,但 Terminal-Bench 4.0 明显落后 Opus-5(31.2 对 51.8),世界知识类的 GPQA Diamond 也低于两家(90.9 对 93.4 / 94.1)。也就是说,工程执行类任务强,知识类任务还不是最强。

DeepSeek 官方更新日志里的成绩和这张表基本对得上,还额外给了 HLE 36.8、Codeforces 3471、Terminal-Bench 3.0 30.0、CyberGym 88.1、NL2Repo-Bench 65.4 等分数。

七、训练侧:没有新算法,靠的是任务合成与脚手架

值得注意的一点是,官方说 post-training 没有引入新算法。提升主要来自三件事:大规模合成可验证的 Agent 任务、在异构脚手架(Claude Code、Codex、OpenCode、Pi、mini-SWE、DeepSeek Harness)上做 RL、以及从 40 多个 teacher 模型做 on-policy 蒸馏。

pre-training 侧,45T 多模态 token,文本与多模态比例 7:1;稀疏注意力从 64K 序列长度从零训练,没有 dense warmup;上下文在 34T token 处扩展到 1M。基础模型在世界知识和编码上追平 V4-Pro-Base,但只用了 1/3 的总参数和 1/4 的激活参数。

八、对 Agent 开发者意味着什么

第一,长会话的成本结构变了。890 字节每 token 的 KV cache 让"把上下文留长一点"不再那么贵,这对多轮工具调用、长文档分析这类场景是直接的利好。

第二,选择模型时,要看你的瓶颈在哪。如果你的 Agent 主要在做工程执行(改代码、跑终端、自动化流程),V4.1-Flash 这一代的性价比很有吸引力;如果任务偏重世界知识问答,闭源旗舰仍有优势。

第三,接入方式有变化。模型名要改成 deepseek-flash,旧名 deepseek-v4-flash 会被临时路由;V4 Pro 即将下线,还在用 deepseek-v4-pro 的服务要在 9 月 14 日之前确认路由和计费口径的变化。

第四,部署前先看你的 cache 预算。SWA KV 落在 DRAM 池里、TTL 只有分钟级,全局 KV 才保 72 小时。做多副本、长驻会话的架构时,这个差异会直接影响容量规划。具体部署参数以官方文档和 vLLM / SGLang 的说明为准。

小结

V4.1-Flash 值得学的不是"分数又高了",而是它把优化目标定在了长任务 Agent 的真实瓶颈上:prefill 砍半靠 CED 的层间 KV 复用,cache 变小靠 CSA2 的层间共享和 FP4 量化,持久化成本下降靠 SWA 不进 SSD。

对 Agent 开发者来说,这一代模型带来的变化可以概括成一句话:长上下文从"用不起"变成了"要规划"------用得起,但你要开始认真算 cache 放在哪、活多久、怎么命中。

相关推荐
java_logo4 小时前
Docker 部署 DeepSeek Harness(moelin):轻松搭建带登录的本地 AI Agent 平台
运维·docker·容器·ai agent·deepseek·harness·轩辕镜像
AI_Gump7 小时前
Harness篇|DeepSeek Harness 上手机:五条安卓移植路线与 App 内 Linux 拆解
android·linux·人工智能·智能手机·deepseek
飞哥数智坊1 天前
打造自己的 Personal Agent,从抄大肥鱼作业开始
人工智能·deepseek
可乐ea1 天前
智能体记忆该拆成几层:笔记、记忆表示与注入上下文
服务器·数据库·笔记·ai智能体·提示词工程·上下文工程·记忆系统
东风微鸣1 天前
把 DeepSeek Harness 装进 K8s
kubernetes·deepseek·harness
我才是银古2 天前
把视频生产做成一条可验证的流水线
视频·视频制作·deepseek·dsh·dsh插件
_砖家2 天前
DeepSeek Harness 原来还是我们熟悉的 Webpack 和中间件模型
agent·ai编程·deepseek
NingBo2 天前
别再让 AI「心算」CSV:为 DeepSeek Harness 增加精确的数据分析工具
deepseek
宅小年2 天前
DeepSeek Harness 完全指南,打造你的专属工作台
deepseek
逻辑与温度3 天前
花了三毛六,我把 Claude Code 和 DSH 测了三轮:同一个 DeepSeek,两个壳差距有多大
claude·deepseek