模块 7评测与生产可靠性
Agent Trace
Trace 首先回答因果问题
- 用户要完成什么任务
- 系统做了哪些决策与外部行动
- 状态何时改变、由谁改变
- 哪里失败、是否恢复、最终业务结果是什么
建立 Agent 语义的 Trace 模型
Run/Workflow Trace
- 租户、会话、任务和版本
- Model、Tool、Guardrail、Handoff、Retrieval、Approval 与自定义业务 Span
- 流式里程碑、状态迁移、重试和取消
- 异步队列、父子 Agent 和跨 Trace 因果链接
用 OpenTelemetry 语义约定连接 Agent 与通用观测体系
操作映射
- invoke_agent、invoke_workflow、execute_tool、retrieval 与模型生成
- 已有 HTTP、RPC、Messaging、Database Span 不重复包装成同义层
Span、Event 与 Link 各自表达合适关系
- 有持续时间的远程或关键操作使用 Span
- 状态迁移和流式里程碑使用 Event
- 异步、重放和跨 Agent 因果关系使用 Link
标准属性与业务属性分层
- Provider、模型、Usage 和 Tool 身份使用可互操作语义
- 业务结果、风险等级和策略原因保留内部命名空间
- 完整 Prompt、参数和结果不因标准字段存在就默认采集
语义约定仍会演进
- 记录采用的 Convention 与 Instrumentation 版本
- 升级前验证字段语义、基数、看板和告警兼容
- 必要时双写并设明确迁移和下线窗口
属性要支持检索但控制基数
- 模型、Provider、Prompt/Tool/Workflow 版本
- Token、费用、TTFT、延迟和重试
- 状态、错误类别、策略原因码和业务结果
- 用户输入和完整输出通常不应作为高基数属性
可观测性不能成为最大数据泄露面
- Prompt、Tool 参数、文件和模型输出按分类处理
- 默认脱敏、摘要、哈希或只留 Artifact 引用
- 租户隔离、访问审计和保留期
- Zero Data Retention 等约束下调整 Exporter 能力
采样要保留关键失败和长尾
- 错误、高风险、超预算和人工接管 100% 保留
- 正常流量按租户/场景/版本分层采样
- Tail Sampling 依赖完整终态信号
- 评测样本与运营监控的采样目的不同
从症状沿调用链定位失败层
- 模型选择/输出
- Context 和检索
- Tool/外部服务
- 策略/审批
- 状态提交和事件消费
Trace 数据需要可运营
- 按 Workflow/版本/租户聚合看板
- 异常步骤数、循环和未知结果告警
- 从线上失败一键进入评测样本候选
- Trace Schema 版本和成本预算