AWS 上的 GenAI 可观测性
概述
生成式 AI 工作负载在多个方面与传统应用不同,这使得从第一天起可观测性就至关重要。响应是非确定性的,延迟随提示复杂度急剧变化,成本直接与 token 使用量挂钩,单个 Agent 调用可以在几秒内跨 Bedrock、S3、Lambda 和 KMS 链接数十个 API 调用。
如果没有适当的可观测性,团队会面临可预见的问题:
- 成本超支 — 未跟踪的 token 使用导致意外账单。单个失控的 Agent 循环可以在几分钟内消耗数百美元。
- 性能下降 — 慢响应影响用户体验,而您无法修复看不到的问题。Agent 工作流可能在编排层静默失败,而模型调用却成功。
- 质量差距 — 错误、幻觉和 意外输出在用户投诉之前一直未被检测到。
- 合规和审计风险 — 没有记录模型说了什么、使用了什么参数或哪个 IAM 角色进行了提问。
本指南将引导您完成监控 AWS 上 GenAI 工作负载的策略、AWS 实施、启用模式和 dashboard 设计。它与配套的为 GenAI 遥测数据创建自定义 Dashboard 指南配对,该指南展示了如何将相同的遥测数据转化为面向 DevOps、FinOps 和其他利益相关者的基于角色的 dashboard。
为什么 GenAI 可观测性不同
独特挑战
非确定性行为 — 相同的输入可以产生不同的输出。传统的"是否返回了正确值"测试不适用。您需要质量 metrics,而不仅仅是成功/失败。
可变延迟 — 响应时间取决于提示复杂度、输出长度、模型负载和跨区域路由。P50 和 P95 的差异比传统 API 大得多。
基于 Token 的定价 — 成本随使用模式而非仅请求数量扩展。平均提示长度的小幅增加可能使您的月度账单翻倍。
多服务复杂性 — Agent 跨多个 AWS 服务链接 API 调用。没有单一的日志源能讲述完整的故事。
快速迭代 — 模型和提示频繁变化。您的可观测性必须跟踪模型版本、提示模板和配置随时间的 变化。
业务影响
将可观测性视为事后考虑的组织通常在事后发现这些模式:
- 单个未调优的提示消耗了每月 Bedrock 预算的 80%
- Agent 工作流在工具层失败,而模型 metrics 看起来正常
- PII 泄漏到 logs 中,因为未提前配置脱敏
- 由于未应用团队标签,成本归因无法实现
尽早做好可观测性可以避免日后昂贵的改造。
GenAI 的核心支柱
Metrics
回答"我的 AI 表现如何?"的运营遥测数据
需要跟踪的关键 metrics:
- Token 用量 — 每次请求的输入 token 数、每次请求的输出 token 数、按模型和用户统计的总 token 数、token 成本计算
- 延迟 — 首 token 时间 (TTFT)、总响应时间、P50/P95/P99 百分位数、按模型和区域统计的延迟
- 请求量 — 每秒/每分钟/每小时请求数、成功率与错误率、并发请求数
- 成本 — 每次请求成本、按模型/用户/团队统计的成本、每日/每月趋势、成本效率(每美元输出 token 数)
Logs
回答"我的 AI 说了 什么,对谁说的?"的内容和上下文
需要记录的内容:
- 请求/响应对(需进行 PII 脱敏)
- 提示模板和变量
- 模型参数(temperature、max_tokens、top_p)
- 错误消息和堆栈跟踪
- 用户上下文和会话 ID
- A/B 测试变体
Log 级别:
DEBUG— 详细的提示工程迭代INFO— 成功请求及其元数据WARN— 重试、降级、速率限制ERROR— 失败、超时、无效响应
Traces
回答"请求如何在我的系统中流转?"的分布式流
需要捕获的内容:
- 端到端请求流
- 提示预处理步骤
- 模型调用 span
- 工具和函数调用 span
- 后处理和验证
- 与下游服务的集成
- 多跳 Agent 工作流
战略最佳实践
- 尽早插桩 — 在构建时就添加可观测性,而不是上线之后。使用 OpenTelemetry 使您的插桩与供应商无关且可移植。
- 多维度标签 — 为每个 metric 添加
model、environment、application、team和region维度标签,以便后续可以按维度切分成本和性能。 - 先建立基线再设告警 — 在生产环境中运行至少一周以建立正常行为基线,然后再设置告警阈值。没有基线的告警会造成告 警疲劳。
- 关注业务 metrics,而非仅技术 metrics — 除延迟和错误率之外,还要跟踪输出质量、用户满意度(点赞/点踩)和每功能成本。
- 从第一天起就规划 PII 处理 — 在数据落盘之前就对 logs 中的敏感数据进行脱敏。使用 CloudWatch Logs 数据保护策略 进行自动遮蔽。
- 设置保留策略 — log 量增长迅速。按用途区分保留期:
- 运维 logs:7 天
- 模型调用记录:30-90 天
- 审计/合规:按监管要求(通常 7 年)
- 跟踪模型版本和提示模板 — 当出现变化时,您需要能够关联当时生产环境中运行的具体版本。
AWS 上的两个数据管道
Amazon CloudWatch 通过两个互补的数据管道为 GenAI 提供端到端的可观测性。它们服务于不同的目的,捕获不同的数据,并以不同的方式启用。大多数生产环境需要两者兼备。
