Agent 发布单元大于代码
一次发布应冻结模型与推理参数、Prompt、Context/Memory 策略、Tool Schema 与权限、索引与 Embedding/Reranker、Workflow、Guardrail、UI 协议和 Runtime。Manifest 记录每项版本、内容哈希、兼容范围与 Owner;只记录 Git SHA 无法重建行为。
影响分析从变化的契约和数据流出发。例如 Tool Schema 修改会影响模型选择、参数生成、审批 UI、执行器和重放;索引更新会影响检索与引用,不必盲跑所有 Runtime 单测。未知影响面进入周期性全量回归,而不是假装静态依赖图完整。
按变更影响选择评测,不盲跑一个总集
最内层运行目标组件的单元、契约与故障测试;向外运行受影响任务和关键切片;再用端到端 Golden Scenario 验证业务后置条件;安全、隐私、权限和重复副作用是不可抵消的硬门禁。周期性全量评测发现依赖图遗漏和跨层耦合。
| 变更 | 必须回归 | 放行证据 |
|---|---|---|
| Prompt/模型 | 模型层、受影响任务、端到端切片 | 质量区间、Tool 决策、安全与成本 |
| Tool Schema/实现 | 契约、幂等、故障注入、审批、E2E | 回执、未知结果对账与兼容测试 |
| 索引/RAG | 召回、权限、Grounding、引用 | 目标切片与越权零失败 |
| Workflow/Runtime | 状态、重试、恢复、在途 Run | 故障演练与状态迁移记录 |
门禁区分硬失败与统计退化
Schema 破坏、越权、数据泄露、错误审批和重复副作用出现即拒绝。概率质量按候选与基线的配对差异、效应量、置信区间和关键切片判断;平均值提升不能掩盖核心场景回退。延迟与成本使用每成功任务口径,并同时看 P95/P99。
阈值来自业务损失和风险容量,而不是为了让当前版本通过。小样本结果标记不确定,可增加重复或转人工;不能用“未显著变差”证明等价。门禁策略本身版本化,任何临时调宽都走豁免流程。
评测环境要可复现又避免真实破坏
固定 Manifest、数据版本、依赖快照和可控随机种子,同时承认模型 API 仍可能非确定。对概率任务多次运行,报告分布和方差。Tool 使用 Sandbox、Fake 或 Record-Replay,但权限、状态机和错误语义应接近生产。
Record-Replay 要脱敏并处理时效,Fake 必须有契约测试证明与真实 Tool 一致。支付、消息发送等副作用默认禁止出测试环境;需要真实验证时使用专用租户、额度、幂等键和自动清理,并由明确责任人批准。
发布逐步扩大真实风险
离线通过后进入 Shadow,验证真实输入与依赖但不产生用户可见副作用;随后内部或低风险租户 Canary,再按任务与风险分层扩大。每阶段预先规定流量、观察窗口、最小样本、护栏和自动停止条件。
Google SRE 的 Canary 指南指出,Canary 通过限制暴露比例与时间来减少错误预算损失。Agent 还需限制能力与副作用范围:5% 流量不代表高风险支付 Tool 也能开放 5%。
线上实验要回答因果问题而非只看涨跌
实验单元与分流
按用户、租户、Session 或任务选择随机化单元,并保持稳定分配。共享 Memory、组织协作和共同 Tool 状态会造成跨组干扰;若干扰无法隔离,应提升随机化层级或明确只做观察性比较。
指标与统计设计
预先确定一个主要指标和安全、质量、延迟、成本护栏,按最小可检测效应与统计功效估算样本。报告效应量、置信区间和显著性,并给出关键切片分母;不能只报告 p 值或相对百分比。
识别实验污染与时序偏差
新奇与学习效应、流量结构、模型/Prompt/索引/Tool 中途漂移、多轮依赖和跨用户协作都会破坏结论。实验期间冻结 Manifest;不得不变更时应停止或分段分析,不能把两个候选版本混成一组。
停止规则与风险回滚
预注册观察窗口与最小样本,避免反复偷看后在有利时停止。安全、合规和核心体验护栏恶化立即停止,不等待统计显著;结论记录适用切片、不确定性和后续验证。
回滚需要覆盖配置、数据和状态
回滚包同时包含代码、Prompt、模型路由、Guardrail、Tool Schema、索引与 Embedding。索引采用双版本切换,Tool 变更遵循消费者兼容窗口。在途 Run 默认固定启动时 Manifest;若旧版本已不可用,迁移必须校验状态、权限与副作用账本。
回滚成功的证据不是部署命令完成,而是新流量命中稳定版本、核心 SLI 恢复、在途任务被明确处置、外部副作用完成对账。定期演练模型 Provider 故障、索引回退和 Tool Schema 回滚,记录恢复时间与缺口。
门禁豁免必须可治理
豁免记录业务理由、失败门禁、风险 Owner、到期时间和关闭条件,并用缩小租户、任务、权限、Tool 或流量作为补偿控制。线上监控、人工容量与回滚责任必须在放行前就绪。
到期自动关闭,不允许无限延期。事后补评不是形式动作:结果要决定扩大、修复或撤回,并进入决策记录。若风险无法被隔离或对账,正确结论是不能豁免。
主动提取:为什么模型不变、只改 Tool 描述也要端到端回归?
回滚判断:候选版本已创建部分新格式状态,切回旧代码就完成了吗?
资料与事实边界
以下以官方文档、标准、论文和原始工程资料为主。厂商 API、价格、限额与模型能力会变化,落地时仍需按目标版本做能力探测和回归。
- Google SRE Workbook:Canarying Releases — Canary 暴露、错误预算与自动评估的工程方法
- Google SRE Workbook:Example Error Budget Policy — 用错误预算约束发布与可靠性投入
- OpenAI API:Backward compatibility — 固定模型版本并为应用建立 Evals 的官方建议