上下文为何越聊越长?CANNBot-Sentry上下文增长曲线与/compact标记可视化完整指南

发布时间:2026/9/26 0:13:02
上下文为何越聊越长?CANNBot-Sentry上下文增长曲线与/compact标记可视化完整指南 上下文为何越聊越长CANNBot-Sentry上下文增长曲线与/compact标记可视化完整指南【免费下载链接】cannbot-sentryCANN 生态中面向 Agent 工作流的“哨兵”观测 · 审计 · 评测三位一体的质量基础设施项目地址: https://gitcode.com/cann/cannbot-sentry用 CANNBot-Sentry 观察 LLM 编码 Agent 时你是否发现会话越跑越贵CANNBot-Sentry 是 CANN 生态中面向 Agent 工作流的观测·审计·评测三位一体质量基础设施其 insight 包的上下文增长曲线功能可以逐轮还原上下文 Token 的累积过程并在曲线上标注/compact 压缩点帮你直观回答上下文到底为什么越聊越长。为什么上下文会越聊越长理解曲线的形状之前先搞懂上下文增长的三个来源历史消息累积每一轮对话都会把此前的完整会话历史用户输入、助手回复、工具调用结果重新发送给模型input_tokens因此逐轮上升工具调用结果回填读文件、跑命令等工具的输出会被追加进上下文一次批量读文件就可能让曲线出现陡坡System 固定开销系统提示、Agent 定义等稳定开销每轮都会计入属于底座部分当上下文接近模型窗口上限如 128K、200K时Claude Code 等 Agent 会触发/compact压缩命令把长对话总结成一份摘要以 This session is being continued from a previous conversation... 开头的续接轮随后上下文断崖式回落再从摘要基线继续爬升。所以理想的增长曲线不是一条直线而是锯齿形——爬升、压缩、再爬升。上下文增长曲线长什么样导入会话后进入 Session 详情页的Context上下文Tab 即可查看。该页面由 ContextTracker.tsx 实现设计思路见 design.md主要包含四个视图视图看什么顶部概览卡片每个 Agent 的峰值、平均上下文、缓存命中率、轮次增长时间线主图每个 Agent 一条曲线主 Agent 各 subagentX 轴为真实时间上下文事件时间线按轮次列出开始 / 显著增长 / 峰值 / 警告 / 结束 / compact六类事件Agent 对比表峰值、每轮平均增长率、缓存节省 Tokens 横向对比几个实用细节曲线悬停可看到该轮的 turn 编号、时间、input/cache/output tokens 明细警告事件会在接近模型限制如超过 80%时自动标记提前预警快爆窗的 Agentsubagent 有独立上下文可逐条曲线分开追踪不会被主 Agent 的曲线淹没/compact 压缩点是如何被识别和标注的这是本功能最容易被低估的部分。Claude Code 执行 /compact 时会在日志中留下三组特征文本command-parser.ts 会做两件事识别命令轮解析command-name、command-args、local-command-stdout等标记确认是 /compact 命令识别续接轮只有以固定摘要标记开头的轮才判定为压缩摘要用 startsWith 而非 includes避免误判只是在引用这句话的普通轮识别成功后曲线图上会在压缩点画出一个compact 标记并记录压缩前后的 Token 数preCompactTokens/postCompactTokens你可以一眼看出这次压缩救回来了多少上下文空间。事件数据结构定义在 ContextTracker.tsx 的ContextEvent接口中。 小技巧曲线上的每一次垂直跌落都值得点开看看——如果跌落之后紧接着又快速回升说明摘要基线里塞了过多内容或后续轮次立即产生了大量工具输出。三步跑起来从安装到看曲线# 1. 一键安装 insightnpm 公开包无需克隆源码 npm install -g cannbot-insight # 2. 启动自动完成构建 数据库迁移并打开浏览器 cannbot-insight # 3. 在导入对话框选择会话日志opencode.db 或 Claude JSONL 目录导入完成后打开目标 Session切到ContextTab 即可看到增长曲线与 compact 标记。会话数据全程保存在本地~/.cannbot-insight/不离开你的机器。这张曲线图能帮你做什么成本分析缓存命中率低、上下文持续爬升的会话往往意味着费用在悄悄上涨对比缓存节省量可量化优化收益调试异常增长定位是某一轮工具调用回填空洞大还是整体基线过高预警模型窗口接近限制前收到警告事件可提前拆分任务或手动压缩Agent 行为对比哪个 subagent 每轮增长最快、哪个最省用对比表一目了然上下文增长曲线不是玄学而是可测量、可回放、可归因的过程——这正是 CANNBot-Sentry 作为哨兵的本职Agent 在前线跑它在场边记录、回放事实、判断质量。【免费下载链接】cannbot-sentryCANN 生态中面向 Agent 工作流的“哨兵”观测 · 审计 · 评测三位一体的质量基础设施项目地址: https://gitcode.com/cann/cannbot-sentry创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考