跳到正文
SGSteven Guan

原子概念 / Context Compaction

上下文压缩

以摘要或提供商原生状态降低活跃上下文占用。

要解决的问题怎样缩短上下文而保留限制、证据和未完成动作?

检索别名:上下文压缩 · 自动摘要

BLUEPRINT局部蓝图

01 输入

  1. 历史事件范围
  2. 当前模型能力
  3. 目标、约束和待执行状态
→

02 处理机制

  1. 选择近期原文和可总结历史
  2. 生成带版本摘要
  3. 校验历史及授权代次
  4. 测试约束和证据不变量
→

03 输出与证据

  1. 可回查摘要
  2. 保留原文窗口
  3. 兼容性与压缩记录

以摘要或提供商原生状态降低活跃上下文占用。

压缩解决的是活跃窗口容量,不是把所有历史变成永久事实。常见方式是保留近期原文、将较早内容总结,或使用供应商原生压缩状态。原始事件与产物应仍可回查;摘要是用于下一步推理的视图。金融数值、法律引证和待执行承诺尤其不能只剩一段自由文本概述。

Codex公开源码将后台压缩尝试绑定history_version、model_slug、compaction_hash与授权代次。只有结果仍与当前状态兼容时才可采用。这提示异步压缩存在竞态:用户补充了新限制、切换模型或权限发生变化后,刚完成的旧摘要未必有效。OpenCode研发源码则区分summary、近期原文与provider原生context,显示不同压缩策略需要不同迁移合同。

压缩输入应明确已完成与未完成范围,并保留原目标、用户修订、否定条件、证据指针、审批参数、操作状态和资源版本。当前授权必须从服务端重新获得,摘要里的权限只能作为历史记录。压缩后应检查这些不变量;不能为腾出空间删掉“尚未发送”中的否定词,再把草稿当已交付。

换模型时,opaque reasoning或compaction token可能无法跨供应商解释,应从可移植事件与证据重新构造上下文。压缩本身还会产生模型调用与缓存重建成本。可在自然任务边界执行,避免频繁压缩造成抖动。验证使用同一长任务的压缩前后对照,检查约束、引用和副作用状态,而不是只看摘要长度是否下降。

对关键字段可建立压缩检查表:当前公司和报表期、使用的合同版本、用户禁止动作、尚未完成的批准以及最近一次外部操作状态。检查表从结构化状态生成,再与摘要对照。若不一致,就重新构造输入或回到原事件,不能让模型用措辞更顺的摘要覆盖可验证记录。

实践重点:原始事件保持可回查;摘要带来源范围、模型与版本;换模型先检查兼容性。

验证抓手:比较压缩前后目标、待审批动作、数值与证据指针不变量。

常见误区:把摘要当原始事实,或把过期后台压缩结果用于新历史。

Codex:异步压缩兼容性源码;OpenCode:摘要与近期原文。

RELATIONSHIP MAP

与其他节点的关系

箭头从本节点指向目标;关系是工程分析映射,不代表厂商合作或已披露的内部实现。

哪些节点指向本页 · 5
  • Claude Code — 实现 → 上下文压缩

    公开能力或可见源码体现上下文压缩的具体产品路线。

  • OpenAI Codex — 实现 → 上下文压缩

    公开能力或可见源码体现上下文压缩的具体产品路线。

  • 模型故障切换 — 依赖 → 上下文压缩

    本节点的设计需要先明确上下文压缩。

  • Pydantic AI — 实现 → 上下文压缩

    公开能力或可见源码体现上下文压缩的具体产品路线。

  • OpenCode — 实现 → 上下文压缩

    公开能力或可见源码体现上下文压缩的具体产品路线。

PRIMARY SOURCES

来源与阅读边界

来源按研究截止日整理。官方文档说明能力和约束,代码只证明对应版本,论文与讲座不自动证明生产效果。 资料截止:2026-10-15。

  1. Codex:异步压缩兼容性源码 ↗公开代码

    观察基线:2026-10-15;固定源码与具体发行版本分别核验。

  2. OpenCode:摘要与近期原文 ↗公开代码

    观察基线:2026-10-15;固定源码与具体发行版本分别核验。