STOI 分析原理

专注于量化 AI 编程工具的投资回报率。支持词法层、语义层、架构层、输出层四维分析,让你知道每一个 Token 花得值不值。

三分层效率模型

我们把一次 Claude Code 会话的效率,拆成三个可观测、可干预的维度。这个模型是 STOI 所有诊断和建议的基础。

L1

Cache Efficiency

Anthropic 的 prompt caching 让前缀一致的请求只付 10% 的价格。System Prompt 越稳定,命中率越高;动态注入的时间戳、绝对路径、UUID 是 cache miss 的常见元凶。

L2

Feedback Validity

光是 cache 命中还不够——如果模型输出了长篇大论,用户却没有采纳,这些 token 也是事实上的浪费。STOI 用规则 + 可选 LLM 判断,来标注每一轮 assistant 输出的有效性。

L3

Cost Breakdown

把 cache 命中/未命中的价格差异、有效/无效输出的占比,换算成实际美元。让你看到的不是抽象的 token 数,而是真实的金钱燃烧速度。

2025 关键规则:Anthropic 的缓存基于 精确前缀匹配(exact-prefix matching)。即使只改变一个字符(如时间戳从 14:32:15 变为 14:32:16),整个前缀缓存也会失效。动态内容必须放在 user message 中,不能放在 system prompt 或 tools 里。

含屎量等级

含屎量(STOI Score)越低越好。等级只是一个便于快速理解的标签。

CLEAN
0% ~ 30%
缓存稳定,浪费可控。
🟡MILD_SHIT
30% ~ 50%
有优化空间,关注一下动态字段。
🟠SHIT_OVERFLOW
50% ~ 75%
大量 token 没命中缓存,需要排查 System Prompt。
💩DEEP_SHIT
75% ~ 100%
成本黑洞,建议立即拆分 session 或重写 Prompt。

Context Engineering 核心原则

来自 STOI 知识库的关键洞察:LLM 的注意力分布不均匀,开头和结尾信息被充分利用,中间信息常被忽视(Lost in the Middle 现象)。即使 token 被付费了,被模型忽视的 token 就是浪费。

中段迷失

上下文超过 50K tokens 后质量明显下降。
修复:重要信息最前置,历史做摘要而非全文追加。

在超长上下文中,模型对中间部分的 recall 会显著降低。建议将最关键的系统规则放在 prompt 最前面,历史记录使用层级摘要而非全文保留。

上下文膨胀

4000+ token 的上下文中,30–40% 可被安全删除。
修复:向量检索 top-k、逐层压缩、质量评分截断。

通过 RAG 替换全文检索、对工具结果做层级压缩(文件名 → 摘要 → 全文)、以及按质量评分截断历史记录,可以安全地削减 30% 以上的冗余上下文。

格式冗余

未压缩的 JSON 比紧凑 JSON 多消耗 30–50% token。
修复:系统提示去 Markdown,JSON minify。

在系统提示中明确要求移除 Markdown 装饰、使用最紧凑的 JSON 输出,并避免多余的换行和缩进,能直接降低输入/输出层的 token 消耗。

STOI 四层浪费定位法

在链条分析(chain analysis)中,我们把一次对话里的 token 浪费拆成四个层级,逐层定位、逐层给出可执行建议。

L1

输入层

精简工具调用的语法噪音。JSON 里多余的缩进、Markdown 装饰符、无意义的换行都会被计入 token。

可执行动作:要求 Claude 在工具调用中使用最小化 JSON,去掉不必要的格式字符。
L2

结果层

压缩冗余的上下文返回。重复的文件内容、过长的 grep 结果、大段未被引用的堆栈信息都会挤占上下文窗口。

可执行动作:在 CLAUDE.md 中加入规则——"grep 结果超过 50 行时只返回文件名"。
L3

结构层

消除破坏缓存的动态字段。System Prompt 或 Tool result 中注入的时间戳、UUID、PID、绝对路径是导致 cache miss 的首要元凶。

可执行动作:在 CLAUDE.md 中明确要求过滤掉这些动态内容,或将其移到 user message。
L4

输出层

克制无意义的总结与重复。Yapping、过度解释、已完成任务的冗余总结,都会增加输出长度且对用户无价值。

可执行动作:在 CLAUDE.md 中加入——"完成任务后不要总结已做的事,直接等待下一个指令"。

把理论变成行动

安装 STOI 后,用 stoi dashboard 启动交互式面板,逐轮查看你的会话在哪一层踩了坑。