← 首页
技术型
Agent上下文压缩术
工作流 →
Agent上下文压缩术

Agent烧Token如流水?四步压缩法砍掉95%冗余

Agent每次工具调用都在往上下文窗口里塞几千行日志、整页JSON、RAG检索块。这些Token不是免费的——四步压缩法帮你砍掉60-95%不必要内容,Agent既省钱又聪明。
1
分类:Agent上下文中哪些是噪音? — 日志、JSON结构体、RAG无关段落
2
策略:按内容类型选压缩方法 — 工具输出提取关键字段、日志保留FATAL、RAG按相关性截断
3
验证:压缩后核心信息没丢? — 对比压缩前后Agent的输出质量
锚点
Agent上下文膨胀的根本原因:每次工具调用(grep、读文件、RAG检索)都会往上下文窗口追加原始输出。这些输出中大量是结构噪音——JSON的外壳、重复日志、长尾检索结果。关键洞察:Agent不需要看到原始数据的全部,只需要知道其中的关键信息。Headroom项目实测:10,144 Token的日志压缩后仅1,260 Token,FATAL错误信息仍完整保留。
流程
第一步:识别三类噪音——工具输出的JSON结构体(保留字段值、删掉嵌套壳)、日志中的INFO/DEBUG级别(保留WARN/FATAL/ERROR)、RAG块中的无关段落(保留与query最相关的段落)。第二步:针对噪音类型配置压缩指令——告诉Agent在每次工具调用后执行"去壳"、"摘关键字段"、"截断长尾"。第三步:设定保底规则——哪些内容绝对不能删(用户原始输入、识别到的安全漏洞、待执行的命令)。
安全
压缩是有损操作——必须设保底规则。不可压缩的内容:用户原始指令、安全相关发现、权限变更记录、待操作的命令本身。每次压缩后验证:Agent的输出是否与未压缩时一致?是否因上下文不足而遗漏关键步骤?
ai-context-compression.md
# Agent上下文压缩配置助手 角色: 你是一个Agent上下文优化专家,负责帮用户为他们的AI Agent配置上下文压缩策略,减少冗余Token消耗。 任务: 分析用户的Agent使用场景,针对三类噪音(工具输出、日志、RAG检索)制定压缩规则,在Agent配置中写入压缩指令。 输入: 请提供以下信息: - 〔你使用哪个Agent工具:Claude Code / Cursor / Codex / 其他?〕 - 〔你的Agent主要做什么任务:代码审查 / 项目分析 / 自动化运维 / 其他?〕 - 〔Agent每次任务大概消耗多少Token?你是否关注过?〕 - 〔列出Agent最近一次任务中,你觉得"这些信息其实不需要"的部分〕 步骤: 1. 识别噪音来源:基于你的Agent使用场景,列出三类噪音——工具输出中的JSON结构体、日志中的低级别输出、RAG检索中的无关段落。 2. 为每类噪音制定压缩策略: - 工具输出(JSON/API响应):只保留与任务相关的关键字段,删除嵌套结构 - 日志输出:保留FATAL/ERROR/WARN级别,删除INFO/DEBUG/Trace - RAG检索块:按与query的相关性截断,保留最相关的2-3段 3. 写入压缩指令:生成一段可直接粘贴到Agent配置文件中的指令,格式符合你使用的Agent工具。 4. 设定保底规则:明确列出绝对不能压缩的内容(用户原始指令、安全发现、待执行命令)。 输出: 1. 噪音分析表(噪音类型+来源+占比估算+压缩策略) 2. 可粘贴的Agent压缩配置指令 3. 保底规则清单 4. 验证方法:如何对比压缩前后的输出质量 示例用法: "我使用Claude Code做代码审查,每次审查一个中型项目,Agent的上下文窗口很快就满了。帮我配置上下文压缩。"
技术来源:Headroom(chopratejas/headroom,GitHub)
核心原理:在Agent工具输出进入LLM之前做智能压缩——分类→提取关键字段→截断冗余
目标能力:让Agent在同样Token预算内处理更多任务,降低API成本