Observability: LLM 可观测性与 Elastic Observability 中的新 Amazon Bedrock 集成

185 阅读6分钟

作者:来自 Elastic Agi K Thomas

Elastic 正在通过 Elastic Observability 的新 Amazon Bedrock 集成扩展对 LLM Observability 的支持。这种新的可观察性集成为你提供了对 Amazon Bedrock 基础模型的性能和使用情况的全面可见性。随着越来越多基于 LLM 的应用程序的开发,SRE(Site Reliability Engineer - 网站可靠性工程师)和开发人员必须监控 GenAI 应用程序的性能以及 LLM 性能和成本。新的 Amazon Bedrock Observability 集成通过简化 Amazon Bedrock 指标和日志的收集来提供开箱即用的体验,让你更容易获得可操作的见解并有效地管理你的模型。该集成设置简单,并附带预构建的开箱即用仪表板。借助实时见解,SRE 现在可以监控、优化和排除使用 Amazon Bedrock 的 LLM 应用程序的故障。

本博客将介绍 SRE 可用的功能,例如监控各种模型中的调用、错误和延迟信息,以及 LLM 请求的使用和性能。此外,该博客将展示设置是多么简单,以及你可以从 Elastic 获得哪些关于 LLM Observability 的见解。

先决条件

要关注本博客,请确保你拥有:

配置 Amazon Bedrock 日志收集

要收集 Amazon Bedrock 日志,你可以从以下选项中进行选择:

  • S3 存储桶
  • CloudWatch 日志

S3 存储桶日志收集:从 S3 存储桶收集日志时,你可以从 S3 通知事件指向的 S3 对象中检索日志,这些对象是从 SQS 队列中读取的,或者直接轮询 S3 存储桶中的 S3 对象列表。有关更多详细信息,请参阅 Elastic 的自定义 AWS 日志集成。

CloudWatch 日志收集:在此选项中,你需要创建一个 CloudWatch log group。创建日志组后,请务必记下新创建的日志组的 ARN,因为你将需要它来进行 Amazon Bedrock 设置配置和 Amazon Bedrock 日志集成配置。

使用日志组 ARN 配置 Amazon Bedrock CloudWatch 日志以开始收集 CloudWatch 日志。

请访问 AWS 控制台并导航到 Amazon Bedrock 下的 “Settings” 部分,然后选择你喜欢的日志收集方法。根据你在 Amazon Bedrock 设置中的日志记录目标中选择的值,你需要输入 S3 位置或 CloudWatch 日志组 ARN。

配置 Amazon Bedrock 指标收集

配置 Elastic 的 Amazon Bedrock 集成,以按照指定的收集间隔从你选择的 AWS 区域收集 Amazon Bedrock 指标。

使用开箱即用的仪表板最大限度地提高可见性

Amazon Bedrock 集成提供了丰富的开箱即用的可见性,可以查看 Amazon Bedrock 中模型(包括文本和图像模型)的性能和使用情况信息。Amazon Bedrock Overview 仪表板提供了各种模型的调用、错误和延迟信息的汇总视图。

Amazon Bedrock Overview 仪表板中的 “Text / Chat metrics” 部分提供了有关 Amazon Bedrock 中文本模型的 token 使用情况的见解。这包括文本内容生成、摘要、翻译、代码生成、问答和情绪分析等用例。

Amazon Bedrock Overview 仪表板中的 “Image metrics” 部分提供了有关 Amazon Bedrock 中图像模型的使用情况的宝贵见解。

Amazon Bedrock Overview  仪表板的 Logs 部分提供了有关 LLM 请求的使用情况和性能的详细见解。它使你能够监控关键详细信息,例如模型名称、版本、LLM 提示和响应、使用令牌、请求大小、completion tokens、响应大小以及与特定 LLM 请求相关的任何错误代码。

详细日志提供对原始模型交互的完整可见性,捕获模型生成的输入(提示)和输出(响应)。这种透明度使你能够分析和优化 LLM 处理不同请求的方式,从而可以更精确地微调提示结构和生成的模型响应。通过密切监控这些交互,你可以改进提示策略并提高模型输出的质量和可靠性。

Amazon Bedrock Overview 仪表板提供了初始和最终响应时间的全面视图。它包括一个百分比比较图,突出显示了这些响应阶段之间的性能差异,使你能够快速识别 LLM 交互中的效率改进或潜在瓶颈。

创建警报和 SLO 以监控 Amazon Bedrock

与任何 Elastic 集成一样,Amazon Bedrock 日志指标完全集成到 Elastic Observability 中,让你能够利用 SLO、警报、自定义仪表板和详细日志探索等功能。

要创建警报,例如监控 Amazon Bedrock 中的 LLM 调用延迟,你可以在 Amazon Bedrock 数据流上应用自定义阈值规则。设置规则以在 LLM 调用延迟超过定义的阈值时触发警报。这可确保主动监控模型性能,让你能够在延迟问题影响用户体验之前检测并解决它们。

发生违规时,通知中链接的 “Alert Details” 视图会提供详细的背景信息,包括问题开始的时间、当前状态以及任何类似违规的历史记录。这些丰富的信息可实现快速分类、调查和根本原因分析,从而高效解决问题。

同样,要创建用于监控 Amazon Bedrock 调用性能的 SLO,你可以定义自定义查询 SLI,其中良好事件是那些不会导致客户端错误或服务器错误且延迟小于 10 秒的 Amazon Bedrock 调用。设置适当的 SLO 目标,例如 99%。这将帮助你使用 LLM 识别应用程序中的错误和延迟问题,从而使你能够在它们影响整体用户体验之前及时采取纠正措施。

下图突出显示了 Amazon Bedrock 模型的 SLO、SLI 和剩余错误预算。观察到的违规行为是故意制作的长文本生成提示的结果,这导致响应时间延长。此示例演示了系统如何根据定义的目标跟踪性能,帮助你快速识别延迟问题和性能瓶颈。通过监控这些指标,你可以获得宝贵的见解,以便主动进行问题分类,从而及时采取纠正措施并改善使用 LLM 的应用程序的用户体验。

立即试用

Amazon Bedrock playgrounds 提供了一个控制台环境,可以在决定在应用程序中使用它们之前尝试对不同的模型和配置运行推理。在我们的 Elasticsearch Service 上部署集群或下载 Elasticsearch 堆栈,启动 Amazon Bedrock 集成的新技术预览,在 Kibana 中打开精选的仪表板并开始监控你的 Amazon Bedrock 服务!

原文:LLM Observability with the new Amazon Bedrock Integration in Elastic Observability — Elastic Observability Labs