我如何构建了一个 Go proxy,在 cloud quota 用尽时保持你的 LLM 对话活跃
发布: (2026年5月3日 GMT+8 09:23)
2 分钟阅读
原文: Dev.to
Source: Dev.to
介绍
Trooper 是什么
真正的问题:回退时的上下文丢失
解决方案:三层上下文压缩
锚点
对话的前两轮始终会被保留。这两轮确立了最初的意图并设定了基调。
SITREP
中间的轮次会被压缩成一个结构化的摘要,称为 SITREP。它提取意图、实体、未完成的循环、最近的操作以及已解决的事项。本地模型获得的是情境感知,而不是原始历史记录。
尾部
最近的轮次会在可配置的 token 预算内被保留。
示例 SITREP 日志
📦 Context compaction triggered — 538 tokens exceeds 500 budget
📦 Context compaction complete
Total turns : 7
Anchor turns : 2 (~43 tokens)
Middle turns : 2 → SITREP (~71 tokens)
Recent turns : 3 (~323 tokens)
Tokens used : 437 / 500
SITREP : intent="trooper" stage=unclear confidence=0.60 open=1 actions=0 resolved=0
本地模型知道你在做什么、哪里出了问题、哪些已经解决,以及最近几次的交流内容。这已经足以让对话保持连贯。
为什么选择 Go
提供商支持
接下来
试一试
希望大家对上下文压缩方法提供反馈——尤其是使用更大本地模型的朋友。回退时的冷启动延迟是多少?