跳到主要内容

生产上线清单

核对日期:2026-05-09。

1. 定义与边界

生产上线清单是 Agent 系统从 staging 进入生产前的工程验收表,覆盖功能、可靠性、评测、安全、成本、观测、部署和事故响应。它不是形式化文档;每一项都应能被链接到测试结果、配置、仪表盘或负责人。

2. 为什么重要

Agent 的失败可能表现为错误回答、错误工具调用、数据外泄、成本异常、队列堆积或业务副作用。上线清单的作用是把这些风险前置暴露,而不是等用户发现。

3. 核心机制

上线决策建议采用 gate:

4. 上线前必检项

类别检查项验收证据
版本代码、Prompt、工具 schema、模型策略有版本号release note / trace 样例
评测核心任务回归通过,红队用例通过eval report
状态run 状态可恢复,schema 迁移验证chaos/replay report
会话TTL、隔离、上下文裁剪策略生效测试记录
队列重试、死信、worker 扩缩容验证压测报告
幂等高风险工具有幂等键和审计契约测试
缓存缓存键含租户/权限/版本,失效策略明确配置审查
成本单 run 预算、租户配额、告警配置dashboard
重试超时、退避、熔断、降级配置故障演练
回放trace 可脱敏回放,副作用默认禁用replay report
部署staging、灰度、回滚路径验证runbook
安全prompt injection、数据外泄、权限绕过测试security report

5. 工程实现

发布模板:

release:
agent_version: support-agent@1.8.0
prompt_versions:
- support_agent.system@2026-05-09.3
tool_schema_versions:
- crm.lookup_customer@v2
model_policy: support_standard@v4
eval_report: reports/evals/2026-05-09-support.html
canary:
tenants: [internal]
traffic_percent: 5
rollback_trigger:
task_success_rate_drop: 0.03
cost_increase: 0.25
safety_event_rate: 0.001

上线命令不应直接跳过检查:

release create -> run evals -> deploy staging -> run smoke -> canary -> monitor -> promote

6. 生产实践

  • 清单项必须有负责人,不能只写“已完成”。
  • 每次发布保留可回滚的上一版 Prompt、配置和镜像。
  • 先开放低风险租户或内部用户,再扩大范围。
  • 线上指标至少观察任务成功率、拒答率、工具失败率、P95 延迟、单 run 成本、安全事件。
  • 上线后 24 到 72 小时内保留更高采样率 trace。

7. 常见反模式

  • 只测“正常问题”,不测工具失败、恶意输入和权限边界。
  • 代码上线走 CI,Prompt 和模型策略手工热改。
  • 没有回滚标准,等业务投诉后才处理。
  • 安全评审只看最终回答,不看工具调用参数。
  • 只看平均成本,忽略长尾 run。

8. 评测方法

上线前评测至少包含:

  • Golden task regression:核心任务不能倒退。
  • Tool contract tests:工具 schema、权限和幂等测试。
  • Safety suite:prompt injection、数据外泄、越权工具调用。
  • Load test:同步 API 和异步 worker 分别压测。
  • Replay suite:历史事故和高价值 trace 回放。

9. 安全与治理

  • 高风险能力上线需要审批记录和回滚 owner。
  • 用户数据、trace、评测集和缓存都要覆盖数据删除策略。
  • 对新工具、新 MCP server、新外部 SaaS 做权限和网络审查。
  • 安全事件告警接入值班流程,不只写在文档里。

10. 权威资料

11. 二次精修:上线 Gate 模板

上线清单要变成 gate,而不是发布前临时勾选。每一项都应该有 evidence 链接和 owner。

Gate通过标准Evidence
功能回归核心任务 TSR 不低于基线CI eval report
工具准确率高危工具选择和参数正确tool accuracy report
安全评测注入、越权、泄露样本通过safety eval report
成本预算单成功任务成本在阈值内cost simulation
延迟预算P95/P99 不超过 SLOload test
可观测性trace/log/metric 字段完整staging trace
回滚方案代码、prompt、模型路由可回滚rollback drill
运维手册告警有 runbook 和 ownerrunbook link

12. 上线控制流

13. 上线清单 YAML 示例

release_gate:
release_id: "agent_1.8.2_20260509"
owner: "agent-platform"
risk_level: "high"
checks:
offline_eval:
suite: "evals/regression/core.yaml"
min_task_success: 0.86
max_unsafe_action_rate: 0
online_canary:
traffic_percent: 5
duration_minutes: 60
rollback_on:
p95_latency_ms: 8000
cost_per_success_usd: 0.4
user_negative_feedback_rate: 0.03
observability:
required_fields: ["trace_id", "run_id", "prompt_version", "model", "tool_name"]
approvals: ["security", "platform_sre"]

14. 主控关注的风险点

  • 没有足够线上 shadow 数据时,不要直接全量发布高自治 Agent。
  • prompt 变更、工具变更、模型变更不要混在一次发布中,除非有强回滚能力。
  • 生产准入要包含“失败是否可解释”,否则事故后很难恢复信任。
  • 高危工具必须验证人类审批不能被 prompt 或状态恢复绕过。
  • 上线后 24 小时要观察成本、失败、人工接管和用户负反馈,而不是只看 HTTP 500。

15. 补充权威资料

16. 主控验收清单

  • 发布包是否明确代码、prompt、模型路由、工具和安全策略版本。
  • 是否有灰度指标和自动回滚条件。
  • 是否有上线后 24 小时观察项。
  • 是否所有 page 级告警都有 runbook。
  • 是否保留发布审批和例外记录。
  • 是否验证回滚不会破坏状态兼容。