随着各组织越来越多地采用 LLM 进行内容创建、检索增强生成 (RAG) 和数据分析等 AI 驱动的应用程序,SRE 和开发人员面临着新的挑战。监控工作流、分析输入和输出、管理查询延迟以及控制成本等任务变得至关重要。LLM 可观测性通过提供对这些模型性能的清晰洞察来帮助解决这些问题,使团队能够快速识别瓶颈、优化配置并提高可靠性。通过更好的可观测性,SRE 可以自信地扩展 LLM 应用程序,尤其是在 Amazon Bedrock 等平台上,同时最大限度地减少停机时间并控制成本。
Elastic 正在通过 Elastic Observability 新的 Amazon Bedrock 集成来扩展对 LLM 可观测性的支持。这种新的可观测性集成使您可以全面了解来自领先 AI 公司以及通过 Amazon Bedrock 提供的 Amazon 的基础模型的性能和使用情况。新的 Amazon Bedrock 可观测性集成通过简化 Amazon Bedrock 指标和日志的收集来提供开箱即用的体验,从而更容易获得可操作的见解并有效地管理您的模型。该集成易于设置,并附带预构建的开箱即用仪表板。借助实时洞察,SRE 现在可以监控、优化和排除使用 Amazon Bedrock 的 LLM 应用程序的故障。
此博客将介绍 SRE 可用的功能,例如监控跨各种模型的调用、错误和延迟信息,以及 LLM 请求的使用情况和性能。此外,该博客将展示设置的简易程度以及您可以从 Elastic 获得的 LLM 可观测性方面的见解。
先决条件
要跟随此博客进行操作,请确保您已具备以下条件
- 在 Elastic Cloud 上有一个帐户,并且在 AWS 中部署了一个堆栈(请参阅此处的说明)。请确保您使用的是 8.13 或更高版本。
- 一个拥有从 AWS 拉取必要数据的权限的 AWS 账户。请参阅我们文档中的详细信息。
配置 Amazon Bedrock 日志收集
要收集 Amazon Bedrock 日志,您可以从以下选项中选择
- Amazon Simple Storage Service (Amazon S3) 存储桶
- Amazon CloudWatch 日志
S3 存储桶日志收集:从 Amazon S3 存储桶收集日志时,您可以从 Amazon S3 通知事件指向的 Amazon S3 对象中检索日志,这些事件是从 SQS 队列中读取的,或者通过直接轮询 Amazon S3 存储桶中的 Amazon S3 对象列表来检索日志。有关更多详细信息,请参阅 Elastic 的 自定义 AWS 日志集成。
CloudWatch 日志收集:在此选项中,您需要创建一个 CloudWatch 日志组。创建日志组后,请务必记下新创建的日志组的 ARN,因为您将需要它来配置 Amazon Bedrock 设置以及 Amazon Bedrock 日志集成。
配置带有日志组 ARN 的 Amazon Bedrock CloudWatch 日志以开始收集 CloudWatch 日志。
请访问 AWS 控制台并导航到 Amazon Bedrock 下的“设置”部分,然后选择您首选的日志收集方法。根据您从 Amazon Bedrock 设置中的“日志记录目标”中选择的值,您需要输入 Amazon S3 位置或 CloudWatch 日志组 ARN。
配置 Amazon Bedrock 指标收集
配置 Elastic 的 Amazon Bedrock 集成,以在指定的收集间隔从您选择的 AWS 区域收集 Amazon Bedrock 指标。
通过开箱即用仪表板最大化可见性
Amazon Bedrock 集成提供了丰富的开箱即用功能,可以查看 Amazon Bedrock 中模型的性能和使用情况信息,包括文本和图像模型。Amazon Bedrock 概览仪表板提供了跨各种模型的调用、错误和延迟信息的汇总视图。
Amazon Bedrock 概览仪表板中的文本/聊天指标部分提供了对 Amazon Bedrock 中文本模型的令牌使用情况的见解。这包括文本内容生成、摘要、翻译、代码生成、问题回答和情感分析等用例。
Amazon Bedrock 概览仪表板中的图像指标部分提供了有关 Amazon Bedrock 中图像模型使用情况的宝贵见解。
Elastic 中 Amazon Bedrock 概览仪表板的日志部分提供了有关 LLM 请求的使用情况和性能的详细见解。它可以让您监控关键详细信息,例如模型名称、版本、LLM 提示和响应、使用令牌、请求大小、完成令牌、响应大小以及与特定 LLM 请求相关的任何错误代码。
详细的日志可以完全了解原始模型交互,捕获模型生成的输入(提示)和输出(响应)。这种透明度使您可以分析和优化 LLM 如何处理不同的请求,从而更精确地微调提示结构和生成的模型响应。通过密切监控这些交互,您可以改进提示策略并提高模型输出的质量和可靠性。
Amazon Bedrock 概览仪表板提供了初始和最终响应时间的全面视图。它包括一个百分比比较图,突出显示这些响应阶段之间的性能差异,使您可以快速识别 LLM 交互中的效率改进或潜在瓶颈。
创建警报和 SLO 以监控 Amazon Bedrock
与任何 Elastic 集成一样,Amazon Bedrock 日志和指标已完全集成到 Elastic Observability 中,使您可以利用 SLO、警报、自定义仪表板和详细日志探索等功能。
要创建警报,例如监控 Amazon Bedrock 中 LLM 的调用延迟,您可以在 Amazon Bedrock 数据流上应用自定义阈值规则。将规则设置为在 LLM 调用延迟超过定义的阈值时触发警报。这可以确保主动监控模型性能,从而使您能够在延迟问题影响用户体验之前检测并解决这些问题。
当发生违规时,通知中链接的“警报详细信息”视图会提供详细的上下文,包括问题何时开始、当前状态以及类似违规的历史记录。这些丰富的信息可以实现快速分流、调查和根本原因分析,从而高效地解决问题。
同样,要创建一个用于监控 Amazon Bedrock 调用性能的 SLO(服务级别目标),例如,您可以定义一个自定义查询 SLI(服务级别指标),其中良好事件是指那些没有导致客户端错误或服务器错误且延迟小于 10 秒的 Amazon Bedrock 调用。设置适当的 SLO 目标,例如 99%。这将帮助您识别使用 LLM 的应用程序中的错误和延迟问题,使您能够在这些问题影响整体用户体验之前采取及时的纠正措施。
下图突出显示了 Amazon Bedrock 模型的 SLO、SLI 和剩余错误预算。观察到的违规是由于故意创建的长文本生成提示导致的,这些提示导致了较长的响应时间。此示例演示了系统如何根据定义的目标跟踪性能,帮助您快速识别延迟问题和性能瓶颈。通过监控这些指标,您可以获得有价值的见解,从而主动进行问题分流,从而及时采取纠正措施,并改善使用 LLM 的应用程序的用户体验。
立即试用
Amazon Bedrock 游乐场提供了一个控制台环境,您可以在决定在应用程序中使用不同模型和配置之前,先尝试运行推理。通过 AWS Marketplace 注册即可开始您的 7 天免费试用,并在全球 AWS 上的任何 Elastic Cloud 区域中快速启动部署,只需几分钟即可完成。
在我们的 Elasticsearch 服务上部署集群,下载 Elasticsearch 堆栈,或者从 AWS Marketplace 上的 Elastic 运行,然后启动 Amazon Bedrock 集成的新技术预览版,在 Kibana 中打开精选的仪表板,并开始监控您的 Amazon Bedrock 服务!