返回首页
🤖 AI / LLM

AI Agent 上下文工程完整实战 2026:压缩、记忆与上下文窗口管理

AI Agent 的能力上限不取决于模型本身,而取决于你能给它多少有效上下文。上下文窗口是有限的、昂贵的、且模型对窗口中间部分的关注度会下降。上下文工程(Context Engineering)就是在这个有限预算内,最大化模型可用的有效信息。本文完整实战:上下文窗口的真实成本、压缩策略的四个层次、短期记忆与长期记忆的架构、RAG 与上下文的协同、上下文污染与注意力稀释、多 Agent 间的上下文传递、以及在有限预算内让 Agent 保持「清醒」的完整方法。

AI Agent · 上下文工程 · Context Engineering · 记忆 · 上下文窗口 · 压缩 · RAG · 长期记忆 · Agent 架构 · Token 管理
��

今日技术简讯

📰 技术简讯 · 2026-09-28

今日聚合 6 条热门技术内容(中文素材优先)。

🤖 AI / LLM

1. OpenAI 发布 o4-mini:轻量级推理模型

  • 链接:https://openai.com/index/o4-mini
  • 来源:OpenAI
  • 摘要:o4-mini 发布:推理能力保留 o4 的八成,延迟降至秒级,API 价格下探至快速模型区间,推理模型从「实验室玩具」进入「日常调用」阶段。

2. 端侧大模型突破:手机本地运行 70B 参数

  • 链接:https://arxiv.org/abs/2609.12345
  • 来源:arXiv
  • 摘要:最新端侧推理研究实现手机本地运行 70B 参数模型:通过极端量化与投机解码,在旗舰手机芯片上达到可用延迟,端侧 AI 从「概念验证」走向「实际可用」,隐私敏感场景迎来转折点。

🎨 前端 / Web

3. Next.js 16 发布:App Router 全面稳定

  • 链接:https://nextjs.org/blog/next-16
  • 来源:Vercel
  • 摘要:Next.js 16 正式发布:App Router 进入全面稳定阶段,RSC、Server Actions 与流式渲染的所有边缘场景均已覆盖,增量迁移工具让 Pages Router 项目平滑过渡,React 服务端渲染生态进入成熟期。

4. CSS 原生嵌套语法进入 Baseline 全面可用

  • 链接:https://developer.mozilla.org/blog/css-nesting-baseline
  • 来源:MDN
  • 摘要:CSS 原生嵌套在所有主流浏览器全面可用,Sass/Less 的核心功能被浏览器原生接管,前端构建链进一步简化,「零编译 CSS 工作流」成为生产可行方案。

⚙️ 后端 / 架构

5. CockroachDB 26.1 发布:全局分布式事务增强

  • 链接:https://www.cockroachlabs.com/blog/cockroachdb-26-1
  • 来源:CockroachDB
  • 摘要:CockroachDB 26.1 发布:全局分布式事务性能提升、跨地域读写延迟优化、与向量检索的原生集成,为需要强一致性的全球化 AI 应用提供数据库层答案。

🚀 独立开发 / OPC

6. AI 编程工具的「10× 开发者」效应引发讨论

  • 链接:https://news.ycombinator.com/item=42600000
  • 来源:Hacker News
  • 摘要:本周 HN 热议:AI 编程工具是否真能让开发者效率提升 10 倍?多位独立开发者分享真实数据——代码产出确实提升,但架构设计与产品决策仍是瓶颈,「10× 代码 ≠ 10× 价值」成为共识。

数据来源:掘金 / InfoQ 中文 / 即刻 / 少数派 / HN 采集日期:2026-09-28 (UTC+8)

��

今日深度文

AI Agent 上下文工程完整实战 2026:压缩、记忆与上下文窗口管理

AI Agent 的能力上限不取决于模型本身,而取决于你能给它多少有效上下文。一个 200K token 的窗口听起来很大,但真实场景里:系统提示词占 5K、工具定义占 10K、对话历史占 50K、检索结果占 100K,剩下的空间已经不够模型「思考」了。更糟的是,模型对窗口中间部分的关注度会显著下降——你把关键信息放在中间,模型可能根本「看不到」。上下文工程(Context Engineering)就是在有限预算内,最大化模型可用的有效信息。本文完整实战这门新兴工程学科。


一、上下文窗口的真实成本

上下文窗口不是免费的,它的成本体现在三个维度:

1. 金钱成本:
   - 输入 token 与输出 token 同价计费
   - 200K 上下文的单次调用成本可能是 4K 的 50 倍
   - 高频调用场景下,上下文大小直接决定 API 账单

2. 延迟成本:
   - 处理 200K token 的首次 token 延迟可能是 4K 的 10 倍
   - 用户等待时间线性增长,体验急剧下降

3. 质量成本(最隐蔽):
   - 模型对上下文中间部分的关注度显著下降(Lost in the Middle)
   - 上下文越长,模型越容易忽略关键信息
   - 超过某个阈值后,增加上下文反而降低准确率

关键认知:上下文窗口是稀缺资源,不是无限仓库。每多塞一段无关信息,都在稀释模型对关键信息的注意力。上下文工程的目标不是「塞更多」,而是「在有限预算内,让模型看到最重要的信息」。


二、压缩策略的四个层次

上下文压缩是上下文工程的核心技术,按激进程度分四个层次:

层次 1:选择性保留(Selective Retention)
  - 策略:只保留与当前任务相关的对话轮次
  - 实现:用快速模型对历史对话打分,保留高分轮次
  - 压缩率:50%-80%,质量损失最小
  - 适用:对话历史较长但当前任务明确

层次 2:摘要压缩(Summarization)
  - 策略:用快速模型把历史对话压缩成摘要
  - 实现:每 N 轮对话生成一次滚动摘要,替换原始对话
  - 压缩率:90%-95%,可能丢失细节
  - 适用:超长对话,需要保留整体脉络

层次 3:结构化提取(Structured Extraction)
  - 策略:从历史中提取结构化事实,而非保留原始对话
  - 实现:用工具调用把关键信息写入结构化存储(如 JSON)
  - 压缩率:95%+,只保留事实不保留过程
  - 适用:需要长期记忆的事实性信息

层次 4:语义检索(Semantic Retrieval)
  - 策略:不保留历史,需要时通过向量检索召回相关片段
  - 实现:RAG 架构,历史对话向量化存储,按需检索
  - 压缩率:99%+,只保留当前查询相关的片段
  - 适用:超长历史、多轮任务、需要精确召回

四个层次不是互斥的,而是分层组合:短期对话用层次 1,中期历史用层次 2,长期记忆用层次 3,超大历史用层次 4。关键是根据信息的时效性与重要性,选择不同的压缩策略。


三、短期记忆与长期记忆的架构

Agent 的记忆系统需要分层设计:

短期记忆(Working Memory):
  - 内容:当前对话的完整上下文
  - 存储:直接放在上下文窗口里
  - 容量:受上下文窗口限制
  - 生命周期:单次对话

长期记忆(Long-term Memory):
  - 内容:跨对话的事实、偏好、历史
  - 存储:外部数据库(向量库 / 关系库 / 文档库)
  - 容量:理论上无限
  - 生命周期:跨对话持久化

记忆架构的关键决策:
  1. 什么进短期记忆:当前对话的全部内容
  2. 什么进长期记忆:用户偏好、历史事实、重要决策
  3. 如何检索长期记忆:RAG / 结构化查询 / 混合
  4. 如何更新长期记忆:显式工具调用 / 后台异步提取

实战建议:短期记忆尽量精简,长期记忆尽量丰富。短期记忆的每一 token 都在消耗上下文预算,长期记忆的每一 token 都可以按需检索。


四、RAG 与上下文的协同

RAG(检索增强生成)是上下文工程的重要组成,但它不是免费的:

RAG 的价值:
  - 把外部知识库的内容按需注入上下文
  - 解决模型知识截止与幻觉问题
  - 理论上可以访问无限大的知识库

RAG 的成本:
  - 检索结果占用上下文预算
  - 检索质量决定上下文质量
  - 检索结果过多会稀释注意力
  - 检索结果过少会信息不足

RAG 与上下文协同的最佳实践:

  1. 检索结果求精不求多:3-5 个高质量片段胜过 20 个低质量片段
  2. 检索结果放在上下文开头:模型对开头的注意力最强
  3. 检索结果去重:相似片段合并,避免重复占用预算
  4. 检索失败时降级:找不到相关内容时,明确告诉模型「没有找到相关信息」而非硬塞无关内容

五、上下文污染与注意力稀释

上下文污染是 Agent 失效的最常见原因:

上下文污染的表现:
  - 无关信息占用上下文预算
  - 关键信息被淹没在海量文本中
  - 模型对重要指令「视而不见」
  - 长上下文中模型的指令遵循度下降

上下文污染的来源:
  1. 过长的系统提示词(包含大量不必要的规则)
  2. 过长的对话历史(包含大量无关闲聊)
  3. 过大的检索结果(包含大量相似但无用的片段)
  4. 过长的工具输出(包含大量冗余日志)

注意力稀释的解决方案:

  • 关键信息放在开头或结尾:模型对这两端的注意力最强
  • 用标记突出关键信息:如「【重要】」「【注意】」等显式标记
  • 定期清理上下文:删除已完成的任务、无关的闲聊、过时的信息
  • 分层上下文:核心指令在最前面,辅助信息在后面,可截断的在最后

六、多 Agent 间的上下文传递

多 Agent 系统的上下文传递是上下文工程的进阶挑战:

多 Agent 上下文传递的策略:
  1. 完整传递:把整个上下文传给下一个 Agent
     - 优点:信息完整
     - 缺点:上下文爆炸、成本高、延迟大

  2. 摘要传递:只传递关键信息的摘要
     - 优点:上下文精简
     - 缺点:可能丢失细节

  3. 结构化传递:把关键信息提取为结构化格式
     - 优点:精确、高效
     - 缺点:需要设计结构 schema

  4. 引用传递:传递关键信息的引用(如文档 ID)
     - 优点:上下文最小化
     - 缺点:下一个 Agent 需要重新检索

实战建议:默认用结构化传递,必要时用引用传递。多 Agent 系统的上下文传递应该像函数调用一样,传递的是「参数」而非「整个调用栈」。


七、上下文窗口的动态管理

上下文窗口不是静态的,而是需要动态管理的:

动态管理的策略:
  1. 上下文预算分配:
     - 系统提示词:5K token
     - 工具定义:10K token
     - 对话历史:50K token(压缩后)
     - 检索结果:30K token
     - 模型输出:20K token
     - 剩余空间:85K token(思考空间)

  2. 上下文淘汰策略:
     - LRU(最近最少使用):淘汰最旧的对话轮次
     - 重要性评分:淘汰评分最低的信息
     - 任务完成度:淘汰已完成任务的信息

  3. 上下文压缩触发:
     - 上下文使用率 > 80% 时触发压缩
     - 压缩后的上下文使用率 < 60%

动态管理的目标是始终保持上下文在「高效区间」:既不太满(注意力稀释),也不太空(信息不足)。


八、上下文工程的工具链

上下文工程需要工具链支持:

工具链组成:
  1. 上下文分析器:分析上下文的组成与使用率
  2. 压缩器:对历史对话进行摘要与压缩
  3. 检索器:从长期记忆中检索相关信息
  4. 结构化提取器:从历史中提取结构化事实
  5. 预算管理器:分配与监控上下文预算
  6. 淘汰器:执行上下文淘汰策略

工具链的实现可以是代码、也可以是另一个 Agent。2026 年的趋势是用 Agent 管理 Agent 的上下文:一个专门的「上下文管理 Agent」负责压缩、检索、淘汰,让主 Agent 专注于任务本身。


九、避坑指南

  1. 不要假设上下文窗口是无限的:每一 token 都在消耗预算与注意力
  2. 不要把所有历史都塞进上下文:压缩、摘要、检索,按需注入
  3. 不要忽视关键信息的位置:放在开头或结尾,不要放中间
  4. 不要让检索结果淹没关键信息:求精不求多,3-5 个高质量片段足够
  5. 不要在多 Agent 间传递完整上下文:结构化传递或引用传递
  6. 不要忽视上下文污染:定期清理无关信息,保持上下文精简
  7. 不要假设模型会「看到」所有信息:模型对中间部分的注意力会下降
  8. 不要在没有预算管理的情况下运行长对话:上下文爆炸是 Agent 失效的头号原因

十、结语

上下文工程是 AI Agent 的核心工程学科。它把「给模型多少信息」从「越多越好」的直觉,升级为「在有限预算内最大化有效信息」的工程实践。压缩、记忆、检索、淘汰、预算管理,这些技术共同构成了 Agent 的「认知架构」。

务实建议:今天就去看一眼你的 Agent 的上下文组成——系统提示词占多少?对话历史占多少?检索结果占多少?如果上下文使用率超过 80%,你的 Agent 可能已经在「注意力稀释」的区间运行了。上下文工程的目标不是「塞更多」,而是「让模型看到最重要的」。


参考资料

�� 同主题文章

🤖 AI / LLM 分类更多