指南/变化记录怎么读
如何读懂一条 LinkyMonitor 变化记录
一条变化记录先回答「同一监控配置的近期表现和过去哪里不同」。它不会凭一个标签认证渠道身份。按比较对象、时间、信号组合、原始证据的顺序阅读,才能把变化缩小成可处理的问题。
先确认比较的是不是同一件事
打开变化记录后,先看模型、协议、监控配置和时间范围。只有这些条件一致,「历史基线」与「近期表现」才可直接比较。模型迁移、prompt 版本更新、输出上限调整或监控区域变化,都应当另起基线。
这一项经常比异常数字本身更早给出答案。若输入 token 增加,同时 prompt 版本也变了,先检查计划内改动;若监控配置未动,输入 token 突然跳变,才需要检查请求改写、tokenizer 或计费字段。
怎样设计可比较的监控配置,见中转站行为基线怎么建立。模型字符串相同仍可能对应不同版本规则,见模型名称没变,后端行为为什么会漂移。
时间线比当前状态多一层信息
「行为已变化」描述当前窗口与历史范围不同。时间线还要回答四件事:首次出现时间、持续时长、影响频率、是否已经恢复。
一个孤立样本常见于网络抖动、上游过载或单次输出随机性。连续多个窗口偏离,或者每天只在固定时段出现,处理顺序会不同。恢复也不能把历史覆盖掉;需要保留发生区间,才能和模型发布、配置修改、账单异常或业务故障的时间放在一起核对。
记录中的日期代表观测时间,不自动等于原因发生时间。中转站可能更早修改配置,只是在下一次探针运行时才被看见。
按信号组合读,不要盯一个红点
每个指标都有多个可能来源。把相关字段放在一起,能减少过早归因。
| 记录里看到的组合 | 优先复核 | 不能直接得出的结论 |
|---|---|---|
| TTFT 升高,输出 token 与终止原因稳定 | 网络过程、上游排队、客户端重试 | 模型被换成更差的版本 |
| 输入 token 升高,缓存读取降为 0 | prompt 前缀、缓存门槛、参数透传 | 中转站一定在偷 token |
| HTTP 200,但流式响应没有正常结束 | SSE 错误事件、客户端断开、上游中断 | 请求完整完成 |
stop_reason 构成改变,输出经常触顶 | max_tokens、thinking 设置、上下文窗口 | 模型能力下降 |
| Usage、资源特征与响应结构同期变化 | 请求改写、渠道路由、模型版本 | 已确认后端的具体身份 |
Anthropic 的错误文档明确说明,SSE 可以在服务器已经返回 HTTP 200 后再产生错误事件。因此,状态码正常仍要检查流是否完整结束。stop_reason 和 Usage 的字段定义则应回到 Messages API核对,不能凭界面名称猜含义。
涉及 token 数和扣费时,使用Token 虚标与倍率对账里的官方直连方法复查。变化记录提供时间与样本,官方对照提供第二个数据源。
回到请求与响应,确认字段从哪来
变化摘要适合定位,结论要回到原始上下文。复核一条记录时,至少把下面几组信息对应起来:
- 请求:端点、模型字符串、协议版本、prompt 版本、主要参数、工具定义。密钥和敏感正文应脱敏,不应出现在共享截图里。
- 响应:HTTP 状态、响应头、模型字段、终止原因、错误体、流式结束事件。字段缺失也是事实,但要先确认所用协议是否承诺返回该字段。
- Usage:输入、输出、缓存、thinking 或 reasoning 等分项。不同厂商和接口的字段结构不同,不能把一个协议的公式套到另一个协议。
- 网络过程:TTFT、总耗时、重试与连接错误。TTFT 变慢可能发生在客户端到中转站、中转站排队或上游生成之前,单凭总数无法定位哪一段。
请求标识也要一起保存。Anthropic 每个响应包含 request-id;OpenAI 的请求调试文档列出了 x-request-id 和 openai-processing-ms,并建议在生产环境记录请求 ID。中转站若没有透传这些响应头,仍可保存自己的请求标识和准确时间,便于和服务方日志核对。
把「事实、线索、判断」分开写
复核记录时,可以用三栏记笔记,避免把观察直接写成指控:
| 层级 | 写法示例 | 证据要求 |
|---|---|---|
| 事实 | 「8 月 15 日 10:00–11:00,固定探针的缓存读取字段连续缺失」 | 原始请求、响应、时间与监控配置 |
| 线索 | 「请求可能没有透传缓存配置,或上游渠道发生变化」 | 多个相邻样本、其他字段与官方对照 |
| 判断 | 「变化来自中转站在该时段的响应重组」 | 排除客户端改动和官方同期变化,最好有服务方日志 |
表中的时间和内容只是写法示例,不来自 LinkyMonitor 生产数据或客户记录。它演示的是证据层级:事实可以复查,线索允许多个解释,判断必须写清排除过程。
复核之后选择下一步
变化记录不要求每次都升级成事故。处理动作取决于影响范围和证据完整度:
- 监控配置发生计划内变化:标注变更时间,让旧基线过期,再为新版本收集基线。旧数据保留用于说明切换前后的差异。
- 只有一个延迟样本越界:检查网络错误和重试,继续采样。若相邻窗口恢复,记录为短时波动;若尾部延迟持续抬高,再联系服务方排查排队与区域路由。
- HTTP 错误连续出现:保存状态码、错误类型、请求 ID 和准确时间。厂商支持通常需要请求 ID 才能查到对应调用;只有截图中的错误文案,定位信息往往不够。
- Usage 或扣费出现差异:冻结相关时间段的请求与账单,用官方端点重放固定探针。对账结果要按输入、输出、缓存与推理分项比较。
- 多项行为信号持续变化:核对厂商发布和模型别名,运行官方同期对照。仍只有中转站偏离时,再增加模型指纹或任务评测样本。
涉及敏感 prompt 时,分享证据前要删掉密钥、客户数据和完整正文,但保留字段名称、长度、哈希、时间与请求标识。脱敏过度也会损坏证据,例如把模型字符串、协议版本和 Usage 一起抹掉,服务方就无法复现。
变化记录适合回答的四个问题
一条记录整理完后,应当能回答:
- 哪份监控配置变了?模型、协议、prompt 与参数能否和旧基线比较。
- 什么时候开始,影响多大?首次出现时间、持续区间、异常频率和恢复情况是否清楚。
- 哪些字段共同变化?行为、Usage、响应结构与网络数据是否指向同一排查方向。
- 原始证据在哪里?能否回到对应请求、响应、错误体和请求标识复查。
它仍然不能单独回答运营方意图、渠道纯度或未来是否稳定。若变化指向模型身份问题,再使用模型掉包的学术审计方法做独立验证;若只是延迟异常,先按 AI API 错误排查手册检查网络和错误记录。异常标签的作用是缩小范围,结论由后续证据决定。
LinkyMonitor 把变化摘要、时间线、请求、响应、Usage 与网络过程放在同一记录中,方便确认变化从何时开始以及前后差异。