每日成本 + 行为效率审查 2026-09-24¶
- 审查日期:2026-09-24(完整一天)
- 数据来源:
./venv/bin/python cost_audit/daily_review.py --date 2026-09-24(只读,单次执行)
① 汇总¶
- 成本 12.931 元(基线 6.863,+88%)| 1,368 请求(+171%)| 22 会话 | 82 轮 | 0.158 元/轮(-49%)| 16.7 步/轮(-28%)
- 四段:输出 55.1%(7.126 元,其中思考 4.186 元)> 输入·命中 26.1%(3.381 元)> 输入·未命中 18.7%(2.424 元)
- token:命中 169,050,880 | 未命中 2,423,758(+56%)| 输出 2,019,168(+164%)| 思考 1,149,137
- 上下文:中位 87,948,最大 467,349(prompt)
- 方向:总量(请求/输出/未命中)大幅上升推高总成本;率指标(元/轮、元/请求、步/轮)全面优于基线——成本涨是使用量增加,不是单位效率劣化
② 异常判定¶
| 项 | 判定 | 依据 |
|---|---|---|
| [1] 整段失效 miss>10,000 | 需关注(深挖后由异常修正,见 ⑥) | 32 条、合计 1.201 元(占 9.3%);深挖取证 top5 失效条全部为轮首边界/中段的一次性前缀重建(下一条 hit 均回升),无「反复出现且 hit 不回升」的持续失效 |
| [2] 单请求最贵 5 条 | 前 2 条需关注(与 [1] 同源,一次性重建:0.307 / 0.208 元未命中段);后 3 条正常(out 10,143~15,247,hit 198k~278k,miss≤5,886) | |
| [3] 单会话成本 top5 | 正常 | 最高 2.324 元(e300e8aa4e61,125 请求/13 轮),折 0.019 元/请求 |
| [4] 单轮步进 top5 | 需关注 | 最高 45.8 步/轮(bb9638799e15,275 请求/6 轮),偏离当日整体 16.7 与基线 23.0;次高 40.5、38.0 |
| [5] 同会话重复提问 | 正常 | 仅 e300e8aa4e61「好的,执行吧」2 轮,确认类短语 |
| [6] 输出截断嫌疑 | 正常 | 无(当日输出 max 15,247) |
| [7] 上下文规模最大 | 正常 | prompt 467,349,对应 miss 仅 194~1,301,命中良好 |
| [8] 会话未命中占比 top5 | 需关注 | 最高 10.5%(eec69474c021,22 请求),叠加 [1] 的 32 条整段失效 |
| [9] 长会话 | 需关注 | 6 个;top5 合计 2.324+1.659+1.539+1.531+1.285 ≈ 7.34 元 ≈ 当日 57% |
余额对账:真实扣费 11.950 元(43.55 → 31.60)| 自算 12.931 元 | 偏差 +0.981 元(+8.2%)→ 需关注(单日样本,待次日对照)。
③ 评估¶
整体合理。深挖后 [1] 由「异常」降档为「需关注」(见 ⑥):无持续失效。
- [1] 需关注:32 条整段失效(1.201 元、9.3%)经深挖取证,top5 失效条全部为轮首边界/中段的单次前缀重建,下一条 hit 即回升;与代理重启无时间关联(当日唯一重启 12:34:56,不在失效时段);无「改规则后续用旧会话」的直接时间证据。属一次性重建,观察即可。
- 成本 +88% 构成合理:请求 +171%、输出 +164%(输出单价最高,是成本第一杠杆),而元/轮 0.158(-49%)、元/请求 0.0095(-30%)、步/轮 16.7(-28%)均优于基线,总量涨源于使用量而非效率劣化。
- [4] 需关注:bb9638799e15 单轮 45.8 步(275 请求/6 轮)明显偏离整体 16.7 与基线 23.0,属单点密集探索;与 [9] 的 6 个长会话共同构成行为面的主要改进空间。
④ 改进建议(按预估收益排序,仅提出、未执行)¶
- 整段失效转观察,暂不改动 —— 针对 [1][2]:根因已排查为轮首边界一次性前缀重建(⑥),无持续失效、与重启无关;维持观察,若后续出现「同会话反复 + hit 不回升」再升级排查。当前 1.201 元(9.3%)中大部分为单次重建、无法通过改配置避免。零成本,无需确认。
- 高步数轮次拆分、长会话及时新开 —— 针对 [4][9]:45.8 步/轮的 275 请求轮与 6 个长会话(top5 计约 7.34 元占 57%);「读全部文档再动手」类任务拆小、长会话完结即重开,按当日数据折算预计省 0.3~0.5 元/天。属使用习惯,无需改配置。
- 复核余额偏差是否持续 —— 四段对账 +8.2%(+0.981 元);单日样本不足定性,下次 /cost 对照次日快照,连续 ≥2 天同向再深挖。当前为零成本观察项。
⑤ 会话归因¶
来源:session_deep_dive.py --date 2026-09-24。注意:折算总成本 13.881 元 vs 台账 12.931 元,偏差 +7.3%(超 ±2% 校验),系默认 prices(0.02,1.0,4.0)与实际价目不完全一致,占比仅供排序参考,绝对值以台账为准。
| conv | 开场 | 请求 | 轮 | 步/轮 | 成本(占比) | 触发 | 开场提问 |
|---|---|---|---|---|---|---|---|
| e300e8aa4e61 | 20:30 | 125 | 13 | 9.6 | 2.324(16.7%) | 成本+中段失效 | 对于HPC |
| 815a862e1974 | 19:53 | 132 | 6 | 22.0 | 1.659(11.9%) | 成本+步/轮+中段失效 | 说出你现在对此项目的了解 |
| b896b28cd6b1 | 01:52 | 114 | 3 | 38.0 | 1.539(11.1%) | 成本+步/轮+中段失效 | 现在要实际改造部署工具了… |
| 9a12e6e1207c | 21:59 | 109 | 4 | 27.2 | 1.531(11.0%) | 成本+步/轮+中段失效 | 进行后续的升级 FP15(cgroup v2 / RHEL9) |
| c16e41b01391 | 22:40 | 117 | 4 | 29.2 | 1.285(9.3%) | 步/轮 | 做第5条吧 |
| bb9638799e15 | 12:56 | 275 | 6 | 45.8 | 1.110(8.0%) | 步/轮 | 请读取本项目目录下的docx与pdf… |
| ec8fb437d3d6 | 01:58 | 81 | 2 | 40.5 | 1.081(7.8%) | 步/轮+中段失效 | 当前我有两个需求… |
| (无) | 02:00 | 49 | 1 | 49.0 | 0.416(3.0%) | 步/轮+中段失效 | (无 prompt) |
| 18c79d19f40b | 01:19 | 48 | 4 | 12.0 | 0.403(2.9%) | 中段失效 | 调整后效果如何了? |
| 9551aac4536f | 00:34 | 28 | 2 | 14.0 | 0.374(2.7%) | 步/轮 | 继续聊 develop-python-deploy-scrip… |
| 300836662340 | 01:12 | 26 | 1 | 26.0 | 0.374(2.7%) | 步/轮+中段失效 | 我又来看skill 的效果了 |
| 07540f27ae49 | 01:03 | 34 | 4 | 8.5 | 0.301(2.2%) | 中段失效 | 想知道上轮的skill 调整情况如何了 |
| e8263b2a5520 | 00:53 | 20 | 1 | 20.0 | 0.268(1.9%) | 步/轮 | 继续聊上个会话的动作 |
| e8076a97eb26 | 23:12 | 39 | 4 | 9.8 | 0.265(1.9%) | - | 项目下有IC25.10 看下能装不? |
| eec69474c021 | 02:17 | 22 | 4 | 5.5 | 0.261(1.9%) | 中段失效 | 我要处理traeide上的任务 |
| f4b44a840fff | 00:00 | 15 | 4 | 3.8 | 0.225(1.6%) | 中段失效 | 你知道我们接下来要做什么么? |
| da5a945205a9 | 16:40 | 65 | 3 | 21.7 | 0.194(1.4%) | 步/轮 | 添加 192.168.31.18-20 进挂载客户端 |
| 88341d6751fb | 12:54 | 34 | 5 | 6.8 | 0.168(1.2%) | - | /cost |
| 其余 7 个短会话 | — | ≤9 | — | — | 合计 0.140(1.0%) | - | — |
当日轮粒度步/轮中位 = 6(触发阈值:步/轮 > 12 或成本占比 > 10%)。
⑥ 深挖取证:整段失效根因¶
结论:需关注 —— 32 条整段失效为「轮首边界/中段的一次性前缀重建」,非持续失效;与代理重启无时间关联,无「改规则后续用旧会话」的直接证据。 抽样 4 会话、覆盖可疑项 top5 失效条全部(20:30:54 / 21:30:43 / 21:44:18 / 22:33:33 / 02:20:52)。
- 成本构成(抽样 4 会话):命中重放为主,失效未命中段合计约 0.75 元;当日 [1] 全部 32 条计 1.201 元(9.3%)。
- 折算校验:归因表 13.881 vs 台账 12.931(+7.3%,prices 口径差,见 ⑤ 注)。
关键证据:
- 最贵两条均为轮首一次性重建:e300e8aa4e61 turn9
21:30:43 miss=300,132 hit=6,656 prompt=306,788 → 下一条 hit 回升:是;9a12e6e1207c turn322:33:33 miss=204,409 hit=2,176 → 下一条 hit 回升:是。下一步即恢复,属单次前缀重建。 - 无反复且不回升的持续失效:其余取证点全部回升——9a12e6e1207c 另 3 处中段(22:00:11 / 22:00:30 / 22:23:50 / 22:39:43)、eec69474c021 的 02:20:52 / 02:22:00 / 02:25:12、18c79d19f40b 的 01:39:04,均标「一次性重建」。仅 e300e8aa4e61 turn2(20:30:54,距会话首条 33 秒,属首条重建延续)与 turn11(21:44:18,单步轮无后继,「否」为数据缺失)未回升,不构成反复模式。
- 时间关联排除:journalctl 当日唯一重启
12:34:56,失效簇在 00:00~02:25 与 20:30~22:39,无重叠 → 与重启无关。session-start 日志显示失效均发生在轮首(会话内新消息边界)而非会话首条;21:59 / 22:40 两次新会话开档与 21:30 / 22:33 失效点不重合 → 非新会话结构必然,也无改规则后续用旧会话的时间证据(日志不含规则改动时间戳)。凌晨簇 lustre_ins 连续 6 次开档、提问含「skill 调整」(07540f27ae49、300836662340、18c79d19f40b),当晚确有 skill 调整活动,但对应失效仍全部一次性回升。
覆盖度声明:取证覆盖 11 个触发会话中的 4 个(含失效 top5 全部条目,约占 [1] 成本的 60%+);其余 7 个会话未逐一取证,如需完整归因可对其逐个跑 session_deep_dive.py --conv <ID>(只读,零改动)。
抽样会话逐轮起始时间与费用(--conv 深挖输出,费用为该轮三段合计):
| 会话 | 轮 | 起始 | 步数 | 费用(元) | 备注 |
|---|---|---|---|---|---|
| e300e8aa4e61 | 1~13 | 20:30:21 / 20:30:54 / 20:31:37 / 20:34:22 / 20:55:39 / 20:56:58 / 21:04:03 / 21:11:08 / 21:30:43 / 21:40:11 / 21:44:18 / 21:48:23 / 21:49:59 | 1/1/6/5/2/8/9/40/6/6/1/1/39 | 0.000/0.031/0.032/0.048/0.057/0.164/0.109/0.607/0.393/0.071/0.046/0.016/0.749 | 失效轮:20:30:54、21:30:43、21:44:18 |
| 9a12e6e1207c | 1~4 | 21:59:22 / 22:22:35 / 22:33:33 / 22:34:49 | 37/12/3/57 | 0.412/0.122/0.238/0.758 | 失效轮:22:33:33(system 变化) |
| eec69474c021 | 1~4 | 02:17:36 / 02:20:52 / 02:22:00 / 02:24:43 | 9/3/4/6 | 0.082/0.065/0.061/0.052 | 失效轮:02:20:52、02:22:00 |
| 18c79d19f40b | 1~4 | 01:19:00 / 01:32:22 / 01:34:56 / 01:40:18 | 9/13/7/19 | 0.064/0.136/0.051/0.152 | 失效轮:01:34:56(中段 01:39:04) |
各轮提问原文:脚本未逐轮输出,仅有会话开场提问(⑤ 表);如需逐轮提问与费用一一对照,需扩展 session_deep_dive.py 增加逐轮提问摘要输出——需确认后执行。
补充取证一:历史对比——轮首重建非 09-24 新现象¶
session_deep_dive.py 跑 09-21/22/23 归因表,标「中段失效」的会话数:09-21=3、09-22=5、09-23=8、09-24=11,与当日请求量(241/546/1317/1368)同步,无突变拐点,属每日常态背景现象。
补充取证二:空档假设否定——「回复慢导致缓存过期」不成立¶
逐轮间隔与失效对照(抽样 4 会话):
- 有失效的轮首,间隔都很短:12s(miss=204,409)、33s、49s、81s(miss=300,132)、83s、160s;
- 等得更久的反而不失效:19s/96s/245s/553s 轮首均无 >10k 失效;19min、41min 空档后也无失效。
结论:空档时长与失效无正相关,TTL/过期假设被反例否定。
补充取证三:责任方指纹判定——上游缓存侧 2 例、客户端 system 变化 1 例¶
依据 logs/req_shape.jsonl 的 shape.head(前 8 条消息 role:len:hash),对比失效步与相邻步指纹:
- e300e8aa4e61 21:30:43(miss=300,132):失效步与前后 7 步 head 指纹逐条完全一致(
3109542180 9b5100fa33 …),前部内容一字未变、上一步还 hit=305,280,本步却近乎全 miss → 内容未变却未命中,责任在上游缓存侧。 - eec69474c021 02:20:52(miss=46,606):同上,head 指纹与相邻步完全一致却全 miss → 上游缓存侧。
- 9a12e6e1207c 22:33:33(miss=204,409):head[0](system 消息)指纹由
bb1c80f47e变为59112dab18,其余 7 条不变 → system prompt 在轮首被改动,从第 1 条消息起前缀分叉、全量 miss,责任在客户端/注入侧(Trae 动态注入或 Hook);下一条起按新 system 恢复命中。
局限:head 仅覆盖前 8 条消息,中间分叉不可见;但 miss≈全量本身说明分叉(或未命中点)在前部,上述判定成立。抽样 3 例 = 2 例上游 + 1 例客户端,均与网络 IO、空档、旧会话延续无关。
同日重复执行本审查会覆盖本文件。
来源:
/home/rain/Documents/services/token_proxy/reports/daily-review-20260924.md| 最后更新:2026-09-25 00:59(由build/sync.py同步,请勿在站点侧修改)