使用 Elastic 实现端到端的大语言模型(LLM)可观测性:洞察生成式 AI 应用这个不透明的世界

作者:来自 Elastic Daniela TzvetkovaBahubali Shetti

在快速发展的人工智能领域,大语言模型(Large Language Models - LLMs)已成为创新的灯塔,为各行各业带来了前所未有的能力。从生成类人文本、翻译语言到提供个性化客户互动,LLMs 的应用场景广泛且日益不可或缺。企业正在部署这些模型来实现多种用途,从自动化客户支持系统到提升创意写作流程。想象一下,一个虚拟助手不仅能回答问题,还能起草商业提案,或者一个客服机器人能理解并带着同理心作出回应------这一切都由 LLMs 驱动。然而,强大的能力也带来了对更强监督的需求。

尽管 LLMs 拥有变革性潜力,但它们也带来了复杂的挑战,迫切需要实现一种全新的可观测性,因为 LLMs 的内部运行机制往往不透明。这时就需要引入 LLMs 可观测性:它是 LLMs 生命周期管理中的关键组成部分。对于负责确保系统平稳运行、控制成本并尽量降低 LLMs 响应不可预测性风险的服务可靠性工程师(Service Reliability Engineers - SRE)和其他关键角色而言,这一点至关重要。SREs 需要洞察性能指标、错误频率、延迟问题、运行这些复杂模型的成本,以及与模型的 prompt 和响应交互。传统的监控工具在这种高风险环境下显得力不从心;我们需要一种更细致的方法来应对 LLMs 所带来的独特可观测性挑战。

Elastic 的 LLM 可观测性功能解决了这些挑战

通过 Elastic 的端到端 LLM 可观测性,你可以覆盖多种使用场景。为实现这一目标,你可以引入两种类型的集成方式 ------ 基于 API 的日志与指标采集,以及通过 APM 自动探针进行监控。根据你的具体需求,你也可以选择使用 LLM 专属集成。

  1. 高级概览:基于 API 的日志与指标,通过引入服务指标与日志(如延迟、调用频率、tokens、错误、prompt 与 response 等)来监控由第三方提供商托管的 LLM 服务。每个 LLM 集成都配有开箱即用的仪表板。
  2. 应用程序故障排查:通过 APM 自动探针,Elastic 的 OpenTelemetry 发行版(EDOT)提供完全 OTel 原生的跟踪与自动探针功能,可对基于 LLM 的应用程序进行深入监控。此外,你还可以结合第三方库(如 Langtrace、OpenLit、OpenLLMetry)与 Elastic 一起使用,扩展对更多 LLM 相关技术的可观测性覆盖。

有关支持的 LLM 可观测性的更多详情,请查阅官方文档

高级概览:主流 LLM 提供商的可观测性支持

Elastic 为四大主流 LLM 托管平台提供了定制的 API 集成:

  • Azure OpenAI

  • OpenAI

  • Amazon Bedrock

  • Google Vertex AI

这些集成提供了适用于每个提供商的精选日志与指标采集方案。对 SRE 来说,这意味着可以直接访问预配置的仪表板,快速查看 prompt 与 response、使用模式、性能指标和成本等信息。

例如,SRE 可以轻松识别哪个 LLM 产生的错误最多,或者根据延迟、成本、调用频率等指标获取不同模型的洞察。想象一下,能够实时看到哪个 LLM 正在拖慢流程或导致成本飙升,从而做出数据驱动的优化决策。

应用故障排查:对 OpenAI、Amazon Bedrock 和 Google Vertex AI 模型进行追踪与自动探针

Elastic 在其 EDOT(Elastic 发行版 OpenTelemetry)中支持 OTLP 追踪能力,可用于使用 OpenAI 模型以及托管在 Amazon Bedrock 和 Google Vertex AI 上的模型的应用。此外,Elastic 也支持来自第三方库的 LLM 追踪(如 Langtrace、OpenLIT、OpenLLMetry)。

追踪提供了应用请求流程的完整映射,能精确定位系统中每一次调用的详细信息。对于每个请求的 transaction 和 span,追踪可展示关键数据,如所用模型、请求持续时间、遇到的错误、每次请求使用的 tokens,以及 LLM 的 prompt 与 response。

追踪有助于 SRE 排查使用 Python、Node.js 和 Java 等语言开发的应用性能问题。如果 SRE 需要调查延迟或错误问题,LLM 追踪可深入查看请求生命周期,并帮助判断问题是出在应用层、模型本身,还是整个部署系统中存在的系统性问题。

使用场景:让 Elastic 的可观测性功能真正发挥作用

下面我们来看几个 Elastic 可观测性工具在实际中的应用场景:

理解 LLM 的性能与可靠性

一个希望优化由 Azure OpenAI 提供支持的客户支持系统的 SRE 团队,可以使用 Elastic 的 Azure OpenAI 集成,快速了解哪些模型变体存在更高的延迟或错误率。这有助于团队基于性能指标做出更明智的部署决策,甚至在必要时更换模型提供商。

同样地,SRE 也可以同时使用针对 Google Vertex AIAmazon BedrockOpenAI 的集成,用于其他使用这些平台托管模型的应用。

排查基于 OpenAI 的应用问题

设想一家企业使用 OpenAI 模型进行实时用户交互。遇到无法解释的延迟时,SRE 可以利用 OpenAI 的追踪功能来剖析事务路径,判断是否某个特定的 API 调用或模型调用是瓶颈。SRE 还可以查看 OpenAI 集成提供的开箱即用仪表板,确认延迟是否只影响该应用,还是影响了整个组织的所有模型调用。

正在排查基于 LLM 的应用的工程师还可以查看该请求期间与 LLM 的提示词和响应内容,从而排除输入内容对性能可能产生的影响。

解决成本和使用方面的顾虑

SRE 通常非常清楚哪些 LLM 配置的性价比不高。Elastic 的集成仪表板预配置显示模型的使用模式,有助于有效降低不必要的支出。你可以找到 Azure OpenAI、OpenAI、Amazon Bedrock 和 Google VertexAI 模型的开箱即用仪表板。这些仪表板展示了关键的成本和使用信息,例如调用总数和 token 数量,以及按模型和端点的时间序列分解。此外,一些集成还显示更高级的使用信息,如预配置吞吐量单位(provisioned throughput units - PTU)以及计费成本。

理解 LLM 合规性

借助 Elastic 针对 Guardrails 的 Amazon Bedrock 集成以及针对内容过滤的 Azure OpenAI 集成,SRE 可以迅速应对安全问题,比如确认某些用户交互是否触发了策略违规。Elastic 的可观测性日志能够清楚显示 Guardrails 是否正确拦截了潜在的有害响应,从而增强合规性保障。

结论

随着 LLM 不断革新现代应用的能力,可观测性的重要性也日益凸显。Elastic 提供的全面可观测性框架,使企业能够充分发挥 LLM 的潜力,同时保持强大的运维洞察力和控制力。通过与主流 LLM 托管服务提供商的集成,以及对 OpenAI、Amazon Bedrock 和 Google Vertex AI 模型的高级追踪支持,Elastic 为 SRE 提供了应对 LLM 驱动应用复杂性所需的强大工具,确保应用的安全性、可靠性、高效性和成本效益。

在这个 AI 的新时代,创新与可观测性的平衡不仅是优势,更是必需。无论是优化性能、排查问题,还是管理成本与合规性,Elastic 始终走在前沿,确保你的 LLM 之旅既顺畅又突破性十足。

原文:End to end LLM observability with Elastic: seeing into the opaque world of generative AI applications --- Elastic Observability Labs

相关推荐
fallwind_of_july9 小时前
java项目分享-分布式电商项目附软件链接
java·redis·分布式·mongodb·elasticsearch·微服务·rabbitmq
爱编程的王小美9 小时前
Elasticsearch详解
大数据·elasticsearch·搜索引擎
小诸葛的博客12 小时前
es中节点类型有哪些
大数据·elasticsearch·jenkins
死磕java的孤行者12 小时前
Git 分布式版本控制工具
分布式·git·elasticsearch
Red丶哞1 天前
Stitching Together Multiple Input and Output Plugins
elasticsearch
2401_897930061 天前
Kibana 连接 Elasticsearch(8.11.3)教程
大数据·elasticsearch·jenkins
Elastic 中国社区官方博客2 天前
Elasticsearch:使用机器学习生成筛选器和分类标签
大数据·人工智能·elasticsearch·机器学习·搜索引擎·ai·分类
Elasticsearch3 天前
Elasticsearch:使用机器学习生成筛选器和分类标签
elasticsearch
浮尘笔记3 天前
go-zero使用elasticsearch踩坑记:时间存储和展示问题
大数据·elasticsearch·golang·go