作者:来自 Elastic Daniela Tzvetkova 及 Bahubali 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 专属集成。
- 高级概览:基于 API 的日志与指标,通过引入服务指标与日志(如延迟、调用频率、tokens、错误、prompt 与 response 等)来监控由第三方提供商托管的 LLM 服务。每个 LLM 集成都配有开箱即用的仪表板。
- 应用程序故障排查:通过 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 AI、Amazon Bedrock 和 OpenAI 的集成,用于其他使用这些平台托管模型的应用。
排查基于 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 之旅既顺畅又突破性十足。