首页/新闻资讯/正文详情

claudecode,deepseek,codex上下文压缩方式

发布时间:2026/11/6 1:36:24 来源:云帆数科 栏目:资讯中心
claudecode,deepseek,codex上下文压缩方式
Claude (Anthropic)系统化的压缩流水线Anthropic将上下文管理纳入了其 “Harness Engineering” 体系设计了一套系统化的压缩流水线。五层压缩流水线这是其核心策略会优先执行成本低的本地操作将昂贵的LLM调用作为最后手段。KV Cache优化据称通过引入轻量级Token重要性评估器在预填充阶段就标记可压缩内容以减少显存占用。其新架构甚至尝试用语义压缩替代部分显存缓存。显式的压缩指令提供了如 /compact 这样的手动指令方便用户在会话间歇时主动压缩历史以节省Token。缓存感知的压缩压缩时会考虑Prompt Cache的影响优先压缩靠后的内容以保护缓存前缀最大化缓存命中率。包括何时压缩历史、何时重置会话等。一个有力的佐证是LangChain 团队曾实验发现仅优化 Harness不换模型任务完成率就能从 52.8% 提升至 66.5%。https://cloud.tencent.cn/developer/article/2689185?policyId1004#1五层压缩流水线Layer 1 Budget Reduction — 这是“预算岗”。当单条消息中的工具回执总量超过 20万字符时系统会将最大的回执存到本地磁盘仅在上下文中保留文件路径和少量预览【一个3000行的文件只取前N行进入context】【原始数据仍然在】Layer 2: Snip — 裁剪最早的历史片段 (按时间删除老消息)给context的变少了【原始数据仍然在】Layer 3 Microcompact — 这一层特别考虑了prompt cache的影响。Anthropic的API有prompt caching机制前缀不变的请求可以复用cache。如果压缩改动了靠前的内容会导致cache miss。Microcompact优先压缩靠后的内容保护cache prefix。这是一种更精细的本地操作。它不改变对话结构主要针对旧的、冗长的工具输出进行压缩或清理例如将其替换为简短的标记。【原始数据仍然在】Layer 4 Context Collapse — 最精妙的一层。它生成一个「只读投影」给模型看但不修改底层的JSONL存储。实际效果是,模型看到的context变小了(性能恢复)但你随时可以/rewind到任何历史checkpoint因为原始数据还在。当对话很长时将部分长对话总结为“剧情简介”式的摘要在保留核心信息的同时大幅缩短长度。【原始数据仍然在】Layer 5: Auto-compact 调用模型生成完整摘要 (高开销,最终兜底方案)当上下文占用达到阈值如 95%时触发由 LLM 驱动的完整压缩。系统会调用模型将旧历史总结为“一页工作总结”然后用摘要替换原始内容使对话得以继续。【原始数据被压缩为摘要总结】⚠️ 限制Auto-compact(Layer 5)之后路径特定的rules和子目录CLAUDE.md会丢失直到Claude再次读到对应文件才会重新加载。如果某条指令必须在compact后存活要么放在项目根CLAUDE.md里要么在compact时用/compact focus on XXX显式指定保留。KV Cache优化核心机制提示词缓存 (Prompt Caching)Claude优化的基石是其提示词缓存Prompt Caching 机制。它缓存的并非原始文本而是预填充Prefill阶段计算出的KV张量Key和Value矩阵。当新请求的前缀与历史请求完全一致时Claude会直接读取缓存的KV状态跳过昂贵的重复计算。这一机制带来了惊人的收益。有开发者观察到在实际使用中Claude Code的缓存命中率高达99.97%42亿tokens从缓存读取仅130万tokens为新计算。在长会话场景下后续请求的缓存命中率也能稳定在85%-97%大幅降低了延迟和成本。 关键实现前缀哈希与缓存控制为了保证缓存的有效性Anthropic采用了一项名为累积前缀哈希Cumulative Prefix Hashing 的技术。它将提示词按工具定义 → 系统提示 → 消息历史的固定顺序拼接并为每个块生成一个包含之前所有块内容的累积哈希值。这意味着任何前缀部分的微小变动都会导致后续所有块的哈希值改变从而使缓存失效。【把“前缀有没有变”这件事变成一个可以快速比对的数字。】基于此开发者可以通过 cache_control 字段来显式指定需要缓存的内容块并选择5分钟或1小时的TTL生存时间。Claude Code等官方工具则会自动在系统提示和最近的消息上应用此控制。你的请求┌─────────────────────────────────┐│ [工具定义] [系统提示] [消息1] [消息2] [消息3] ││ ↑ ↑ ↑ ↑ ↑ ││ 哈希A 哈希B 哈希C 哈希D 哈希E ││ (含A) (含AB) (含A~C) (含A~D) (含A~E) │└────────────────────────────────┘缓存命中规则改了[消息3] → A~D 全命中只重算 E改了[系统提示] → A 命中B~E 全失效什么都没改 → A~E 全命中零重算 架构级创新动态状态压缩层除了提示词缓存Anthropic还在推理引擎底层集成了一个动态状态压缩与稀疏化调度机制。这个在2024年中后期静默上线的模块代号state_squash_v2可以理解为一个“智能内存管家”。它的工作原理是实时分析对话中的token识别出哪些是影响下一步决策的“活跃神经元”哪些是已沉淀为常识的“休眠记忆”。然后它会自动将后者从高频访问路径中移除只保留最小必要的状态集。有实测数据显示在处理一份127页的PDF时启用该机制后峰值显存从38.2GB降至21.6GB首token延迟降低了41%而输出质量完全一致。这表明Anthropic在不损失精度的前提下实现了对运行时“认知状态”的精准压缩。识别与标记Prefill阶段当你把长文档比如127页PDF发给模型时这个机制会在模型第一次处理这些内容时用一个极轻量的“评分器”仅0.3M参数快速扫描。它会给每个信息片段打分哪些是“关键线索”活跃神经元哪些是“背景信息”休眠记忆。动态调度Decode阶段在模型开始逐字生成回答时这个管家就会动态地调整策略。对于那些被标记为“休眠”的历史信息它会从“高频访问通道”中移走放到一个“低频通道”里。这样模型在生成每一个新字时只需要快速访问那些“活跃”的关键信息而不用去翻整个“仓库DeepSeek模型架构级别的深度优化DeepSeek的压缩策略更为激进直接在模型架构层面进行了深度优化尤其在KV Cache方面。架构层面的KV Cache压缩DeepSeek V4系列通过引入重度压缩注意力HCA 等创新架构从源头减少了KV Cache的大小。FlashMemory技术其FlashMemory-DeepSeek-V4方案可将KV Cache物理占用压缩到全量基线的13.5%在500K超长上下文下开销能减少超过90%。例如在512K上下文长度下KV Cache开销可从1.87GB降至0.18GB。多层级压缩结合了Token级压缩、章节摘要和稀疏索引等多种技术并采用CSAHCA混合注意力机制能根据不同注意力路径采用不同压缩策略。DeepSeek的KV Cache优化并非单一技术而是一条清晰的架构级演进路径MLA在存储层面进行“静态压缩”低秩投影存储而非完整的K和V矩阵使用时重建出K和VDSA在计算层面进行“动态选择”Lightning Indexer 和Top-k选择器, 计算量O(L²)降到了O(L·k)CSA/HCA在序列层面进行“混合压缩”DeepSeek的KV Cache优化是一场从“存”到“算”再到“序列”的降维打击MLA通过低秩投影压缩了单个token的KV表示DSA通过稀疏选择减少了需要计算的token数量而CSA/HCA则直接压缩了token序列本身的长度。这三层优化叠加共同构成了DeepSeek在长上下文场景下极致的成本控制能力。 DeepSeek-V2/V3: MLA (Multi-Head Latent Attention) — 存储层面的“静态压缩”MLA是DeepSeek系列KV Cache优化的基石其核心思想是不再存储完整的Key和Value矩阵而是存储一个高度压缩的“潜在向量”Latent Vector。它的工作原理借鉴了低秩投影Low-Rank Projection的思路压缩将输入通过一个下投影矩阵压缩成一个低维的潜在表示Latent Representation。缓存在推理时只缓存这个低维的潜在向量而非完整的K和V矩阵。这直接将KV Cache的大小压缩到了原来的1/4到1/8。解压当需要进行注意力计算时再通过上投影矩阵从这个潜在向量中动态重建出K和V。效果在DeepSeek-V3中MLA将KV Cache压缩了28.5倍数学上等价非近似每个token仅需约70 KB是传统模型的1/7到1/4大幅降低了长文本处理的显存压力。 DeepSeek-V3.2: DSA (DeepSeek Sparse Attention) — 计算层面的“动态选择”MLA解决了存什么的问题但注意力计算仍需与所有缓存的KV进行交互。DSA则解决了算什么的问题。它的核心是引入了一个轻量级的“闪电索引器”Lightning Indexer 和Top-k选择器打分闪电索引器会快速为当前查询Query与所有历史token计算一个相关性得分。选择Top-k选择器只保留得分最高的k个token例如在V3.2中k2048其余全部被掩码屏蔽。计算后续的注意力计算只在这k个被选中的token上进行将计算复杂度从O(L²)降到了O(L·k)。效果DSA将注意力计算的复杂度从二次方降到了近似线性极大地提升了长上下文场景下的计算效率。 DeepSeek-V4: CSA/HCA — 序列层面的“混合压缩”DSA解决了计算量的问题但KV Cache的绝对大小依然会随序列线性增长。V4的混合注意力架构CSA HCA 则从更根本的序列维度入手通过对序列本身进行压缩来同时控制缓存大小和计算量。V4在模型的不同层交替使用CSA和HCA并辅以滑动窗口注意力SWA处理最近的局部信息实现了“略读”与“精读”的结合。效果在100万token的极端场景下V4-Pro的KV Cache仅为DeepSeek-V3.2的10%推理FLOPs降至27%V4-Flash更是将KV Cache降至7%FLOPs降至10%。V4并非在同一层内混合这两种机制而是在不同层之间交替使用它们。以V4-Pro的61层为例其配置大约为 30个CSA层 31个HCA层交替出现【见下图】HCA先“扫视全貌”CSA再“聚焦线索”V4的完整注意力流水线是MLA先将单个条目“变瘦”然后CSA/HCA在序列维度上将许多条目“合并”成更少的大条目其中CSA再利用DSA式的稀疏选择来“精挑细选”。HCA的压缩权重就是“原装”的模型权重他们消费的都是MLA得到的隐藏向量 DeepSeek-V4.: CSA升级/HCA 弃用CSA2通过为每一层静态分配以下三种模式之一实现了跨层的KV Cache和索引复用Full模式计算自己的主KV并选择全新的Top-512稀疏索引。Reindex模式复用上一Full层的主KV但用自己的索引器Query重新评分。Reuse模式直接复用上一层的Top-512索引。这种设计使得只有Full层需要完整计算并存储KVReindex和Reuse层通过复用将层维度上的冗余降到了最低这是V4.1 Flash能在V4 Flash基础上将KV Cache体积再压缩至约1/4降至890 bytes/token的关键结构性原因。 Codex (OpenAI)应用层的实用主义策略它的策略并非单一技术而是一套由自动压缩、智能摘要和成本控制共同组成的组合拳。以实用和低成本为首要考虑。自动历史压缩Codex会在上下文窗口接近上限时例如达到90万Token自动触发压缩。智能摘要与删除其策略是保留所有用户消息不变但会对助手回复和工具结果进行摘要或物理删除以摘要替代。默认限制上下文窗口曾将GPT-5.6的默认上下文窗口从372K缩减至272K这是一种主动的成本控制策略。可配置的压缩允许用户通过配置文件调整自动压缩的触发阈值。自动历史压缩何时触发如何工作Codex的自动压缩机制其核心是在上下文窗口接近上限时自动触发历史摘要为后续对话腾出空间。触发阈值与“基数错配”问题自动压缩的默认阈值是模型原始上下文窗口的90%。然而Codex实际可用的上下文窗口只有原始窗口的95%预留了系统提示、工具开销等空间。这导致压缩实际发生在可用窗口的约94.7% 处此时剩余空间非常有限有时甚至不足以完成压缩操作本身从而引发压缩卡住或失败。https://news.qiniu.com/archives/1788416847658#1触发时机默认情况下压缩会在会话接近上下文限制时自动触发。例如在GPT-5.6 Sol模型上当上下文达到约90万Token时会自动开始压缩历史内容。 智能摘要与删除压缩后模型还能看到什么这是Codex压缩策略最核心的部分其原则是 “保留用户摘要助手清理工具”。保留用户消息所有用户消息User Messages都会被原样保留不会被摘要或删除。在压缩时客户端会优先选择最近的用户文本保留总预算约为20K Token超出部分可能被截断。摘要助手回复与工具结果旧的助手回复Assistant Responses 、工具调用Tool Calls 和工具结果Tool Results 不再原样放回上下文。它们会被一个文字摘要Summary 所替代这个摘要由模型生成旨在为后续任务提供“交接信息”。摘要的呈现方式生成的摘要会被包装成一条用户消息User Message 的形式重新注入到上下文中以延续对话。https://news.qq.com/rain/a/20260909A0CZAF00?id20260909A0CZAF00pathaappnewssuidredirect_pc1 默认限制上下文窗口一种主动的成本控制你提到的“将GPT-5.6的默认上下文窗口从372K缩减至272K”是OpenAI一项主动的成本控制策略。调整原因OpenAI官方解释默认上下文长度是在性能和成本之间精心调校的结果。将上下文限制从272K提高到372K后会导致实际使用量超出预期token消耗速度可能直接翻倍。性能考量支持更长的上下文窗口不代表模型在长上下文下能保持同样的利用能力。例如GPT-5.6 Sol在处理256K-512K上下文时成绩为91.5%但在512K-1M区间则降至73.8%。开发者反馈这一调整引发了开发者的广泛讨论有人认为这会更频繁地触发压缩影响大型代码仓库的长时间会话体验。⚙️ 可配置的压缩开发者如何控制Codex提供了灵活的配置选项允许开发者根据自身需求调整压缩行为。核心配置参数在 ~/.codex/config.toml 文件中可以设置以下参数model_context_window设置模型的上下文窗口大小最高可达1M。model_auto_compact_token_limit设置触发自动压缩的Token阈值。官方建议将此值设为 model_context_window 的约90%以预留安全余量。重要限制需要注意的是model_auto_compact_token_limit 只能调低不能调高。其配置值会与“原始窗口的90%”取较小者因此试图通过调高此值来减少压缩频率在当前实现下是无效的。配置示例要启用1M上下文并将压缩阈值设为90万Token可以在 config.toml 文件开头添加以下配置

相关推荐

5 分钟把硬盘写进群晖 DSM 兼容数据库:第三方硬盘“不受支持“警告清除指南
5 分钟把硬盘写进群晖 DSM 兼容数据库:第三方硬盘“不受支持“警告清除指南

5 分钟把硬盘写进群晖 DSM 兼容数据库:第三方硬盘"不受支持"警告清除指南 【免费下载链接】Synology_HDD_db Add your HDD, SSD and NVMe drives to your Synologys compatible drive database and a lot more 项目地址: https://gitcode.com/GitHub_Tr… · 2026/11/6 1:36:24

MySQL约束条件一览
MySQL约束条件一览

文章目录1 前言2 空属性 null/not null3 默认值 default4 列描述 comment5 零填充 zerofill6 主键 primary key7 自增长 auto_increment8 唯一键 unique9 外键 foreign key1 前言 约束:数据库通过技术手段限制用户插入的数据,保证数据合法、正确、完整、… · 2026/11/6 1:36:24

二修板越修越烂?避开这几个前人挖的坑,少赔不少钱
二修板越修越烂?避开这几个前人挖的坑,少赔不少钱

干维修这行,最头疼的活不是炸得黢黑的新故障板,是被别人修过一遍的二修板。上家挖的坑全藏在焊锡底下,看不见摸不着。新手没经验,拿过来就上电、就拆件,钱没赚到不说,炸了零件、搞坏焊盘,最后锅… · 2026/11/6 1:35:24

Folia 歌词动画播放器 4 个关卡零基础上手:第一次播通你的第一首歌
Folia 歌词动画播放器 4 个关卡零基础上手:第一次播通你的第一首歌

Folia 歌词动画播放器 4 个关卡零基础上手:第一次播通你的第一首歌 【免费下载链接】folia-major 专注于绚丽的歌词动画效果的本地音乐/navidrome/第三方多平台在线音乐播放器 A multi-platform music player for local files, Navidrome, and online streaming ser… · 2026/11/6 1:38:26

AgentCraft的Minecraft Mod是如何造出来的:把AI日志变成实时办公室场景全解析
AgentCraft的Minecraft Mod是如何造出来的:把AI日志变成实时办公室场景全解析

【免费下载链接】agentcraft Manage your real AI agents, using Minecraft as your interface! 项目地址: https://gitcode.com/gh_mirrors/agen/agentcraft 点击查看 免费下载 AgentCraft 是一个开源 Minecraft Mod(配合 Foreman 编排器)&… · 2026/11/6 1:38:26

Terra Packages 完全指南:Fedora 滚动更新仓库如何让你一键用上 1300+ 软件包的最新版本
Terra Packages 完全指南:Fedora 滚动更新仓库如何让你一键用上 1300+ 软件包的最新版本

【免费下载链接】packages Monorepo for Terra Packages 项目地址: https://gitcode.com/gh_mirrors/packages28/packages 点击查看 免费下载 Terra Packages 是一个面向 Fedora 用户的滚动更新软件仓库(rolling-release repository)&#x… · 2026/11/6 1:38:26

如何 10 分钟把微信聊天记录做成网页存档:留痕(WeChatMsg)导出工具全流程
如何 10 分钟把微信聊天记录做成网页存档:留痕(WeChatMsg)导出工具全流程

如何 10 分钟把微信聊天记录做成网页存档:留痕(WeChatMsg)导出工具全流程 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: http… · 2026/11/6 1:38:26

水电费收到了反馈
水电费收到了反馈

水电费水电费水电费首付款水电费 收到 · 2026/11/6 1:38:26

把“怎么做研究”写进文件:从 scientific-agent-skills 看科研 Agent 的程序性知识层
把“怎么做研究”写进文件:从 scientific-agent-skills 看科研 Agent 的程序性知识层

目录 一、一个没有运行时的仓库为什么会登上周榜 (一)从一周七千余星说起 (二)问题与结论说明 二、科研 Agent 工具化的三代路径 (一)第一代:领域工具集 (二)第二代… · 2026/11/6 1:37:26

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:27:59

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:03

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:07

三菱PLC数据采集到数据库的时序设计:Python+MC协议实战
三菱PLC数据采集到数据库的时序设计:Python+MC协议实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 1:02:11

ASIC主模式RTL设计:状态机与三态驱动的流片级实现
ASIC主模式RTL设计:状态机与三态驱动的流片级实现

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 1:02:11

STM32嵌入式C++开发:GDB调试与Renode仿真实战指南
STM32嵌入式C++开发:GDB调试与Renode仿真实战指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 1:02:11

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:27:59

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:03

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:07

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码