Hermes Agent是如何在有限窗口内保持无限对话的?
跟 AI 聊久了会感觉它突然"失忆"了,这种情况并不是因为它笨,大概率是因为上下文窗口满了。
Hermes 的压缩系统用三段式解决这个问题:
1. 先省钱:把几千行的工具输出替换成一行摘要——"[terminal] ran 'npm test' -> exit 1, 47 lines output",信息不丢,空间省了 90%。
2. 再动刀:用便宜的辅助模型把中间对话压缩成结构化摘要——当前任务、已完成操作、待处理问题,一目了然。压缩比 5:1。
3. 防抖动:连续两次压缩省不到 10% 空间就自动停手,避免死循环。
最精妙的是边界保护设计:绝不切断工具调用和结果的配对,最后一条用户消息永远留在安全区。即使摘要模型挂了,也有冷却期+静态标记兜底,不会让对话裸奔。
hermes 不是简单的"让 AI 自己总结",而是从触发时机、压缩策略、边界保护到错误恢复的全链路工程设计。
