桃子桃子快讯
返回首页
工具

Seismograph:开源检测 LLM API 静默漂移

开源工具 Seismograph 通过持续探针监测第三方大模型 API 的行为变化,在回测中提前 38 天发现 Clau…

2026.07.03 · 周五4 分钟阅读

第三方大模型 API 经常在没有公告的情况下悄然更新行为:接口名与端点不变,但输出质量已发生变化,给依赖生产环境的团队带来排查困难。开源工具 Seismograph 正是为解决这一「静默漂移」问题而设计——通过持续向目标模型发送固定 canary 探测集,提取隐私保护特征并做变化点检测,在模型行为偏离基线时发出预警。

项目概述与回测结果

Seismograph 由 Python 探针 SDK 与 FastAPI 接入网关构成,整体采用 Apache-2.0 协议开源。作者公开了一个可复现的回测实验:以 2025 年 9 月 17 日 Anthropic 发布的 Claude Sonnet 4 事后分析报告为参照,模拟 Seismograph 在该事件中的检测能力。

  • 在 SEED=42 的可复现条件下,系统于 2025-08-10 首次触发预警;
  • 相比用户可见的症状升级(2025-08-29)提前 19 天;
  • 相比官方 postmortem 发布(2025-09-17)提前 38 天。

检测发生在路由错误率仅为 0.8% 的阶段,意味着在没有任何可感知异常的窗口期即可捕获漂移。

技术架构

Seismograph 的核心技术组件包括:

  • 冻结 canary 探测集:不超过 200 条 prompt,以 temperature=0 调用任意 OpenAI 兼容端点,确保基线可比;
  • 隐私保护特征提取:仅上传响应 SHA-256 哈希与 Laplace 差分隐私(ε=2.0)加噪后的聚合统计量(输出长度、JSON 成功率、结果数),原始 prompt 与输出不离开用户边界;
  • Page-CUSUM 变化点检测:对每个 (model_tuple, metric_name) 元组维护上行与下行累计统计量 S+ 与 S-,参数 h=5.0、k=0.5,基线窗口为前 30 个观测;
  • 跨观察者仲裁(Quorum Agreement Scorer):单一组织的 CUSUM 告警不会升级为公共漂移告警,需至少 2 个独立组织 ID 确认,过滤探针 bug、网络抖动与 Sybil 攻击;
  • Ed25519 签名:每个批次由探针私钥签名,保证数据来源可验证。

解决的问题

传统监控关注延迟、错误率与可用性,对语义层面的行为漂移几乎无感知。Seismograph 针对的场景正是「端点返回 200,但输出质量已下降」——例如 JSON 解析成功率突然下降 12%,但延迟与可用性完全正常。此类问题在 2 点的生产告警中常被误判为代码改动或 prompt 改动,而实际上模型已在背后被替换或路由错误。

开源资源与复现方式

项目提供以下资源:

  • pip 包名:seismograph-probe(需 Python 3.11+);
  • 公共实时仪表盘:seismograph-weather.onrender.com/dashboard,覆盖 4 个生产模型的实时漂移状态;
  • 白皮书、架构文档、威胁模型与路线图均已公开;
  • 回测脚本:scripts/anthropic_backtest.py,附带完整 notebook 报告;
  • Zenodo DOI:10.5281/zenodo.21045518。

CI 流程包含 ruff 与 pytest,共 122 个测试。顺序组合(sequential composition)的隐私预算追踪被标注为 Phase 2 设计项(REQ-PRIV-010),当前尚未实现。

信源