Hermes-agent | 第八篇:长会话如何压缩而不破坏上下文
本文是 Hermes Agent 系列的第 8 篇。上一篇分析了 Tool Registry、Toolset、Tool Executor 与六类执行环境,这一篇继续处理工具型 Agent 必然遇到的另一个问题:随着用户消息、模型回答和 Tool Result 不断累积,Hermes Agent 如何在有限 Context Window 中压缩历史,同时保留任务目标、执行证据和合法的消息结构。
本篇目标
完成本文后,你应该能够:
- 区分 Context Window、Output Reservation 与 Effective Input Budget。
- 说明长会话为什么不能只依赖无限追加或简单截断。
- 理解 Agent 内部压缩与 Gateway 高水位保护的职责差异。
- 说明
ContextEngine与默认ContextCompressor的边界。 - 理解压缩触发点、阈值和预压缩流程。
- 掌握头部、中段与尾部的分区策略。
- 解释
protect_first_n、protect_last_n与 Token Tail Budget。 - 理解为什么 Tool Call 和 Tool Result 必须作为结构单元处理。
- 说明大型 Tool Result、图片与重复内容如何提前清理。
- 理解多次压
