当前位置: 首页 > news >正文

oss可以做视频网站吗凡科建站

oss可以做视频网站吗,凡科建站,东莞专业设计网站,网站下载图标作者:来自 Elastic Bahubali Shetti Langchain 应用程序的使用正在增长。构建基于 RAG 的应用程序、简单的 AI 助手等的能力正在成为常态。观察这些应用程序更加困难。考虑到现有的各种选项,本博客展示了如何将 OpenTelemetry 检测与 OpenLLMetry 结合使…

作者:来自 Elastic Bahubali Shetti

Langchain 应用程序的使用正在增长。构建基于 RAG 的应用程序、简单的 AI 助手等的能力正在成为常态。观察这些应用程序更加困难。考虑到现有的各种选项,本博客展示了如何将 OpenTelemetry 检测与 OpenLLMetry 结合使用并将其导入 Elastic Observability APM。

LangChain 已迅速成为 AI 开发领域的关键框架,特别是用于构建由大型语言模型 (LLM) 支持的应用程序。随着开发人员对其的采用率飙升,对有效调试和性能优化工具的需求也变得越来越明显。其中一种必不可少的工具就是能够从 LangChain 应用程序获取和分析跟踪。跟踪提供了对执行流程的宝贵见解,帮助开发人员了解和改进他们的 AI 驱动系统。

有几种用于 Langchain 的跟踪选项。一种是 Langsmith,非常适合详细跟踪和对大型语言模型 (LLMs) 请求的完整细分。但是,它是特定于 Langchain 的。OpenTelemetry (OTel) 现在被广泛接受为跟踪的行业标准。作为主要的云原生计算基金会 (CNCF) 项目之一,它拥有与 Kubernetes 一样多的提交,正在获得为该框架提供支持的主要 ISV 和云提供商的支持。

因此,许多基于 Langchain 的应用程序将具有多个组件,而不仅仅是 LLM 交互。将 OpenTelemetry 与 Langchain 结合使用至关重要。除了 Langsmith 之外,OpenLLMetry 是跟踪 Langchain 应用的一个可用选项。

本博客将展示如何使用 OpenLLMetry 库 opentelemetry-instrumentation-langchain 将 Langchain 跟踪引入 Elastic。

先决条件:

Elastic Cloud 帐户 — 立即注册,并熟悉 Elastic 的 OpenTelemetry 配置

  • 拥有 Langchain 应用程序进行检测
  • 熟悉使用 OpenTelemetry 的 Python SDK
  • 你最喜欢的 LLM 上的帐户,带有 API 密钥

概述

在强调跟踪时,我创建了一个简单的 LangChain 应用程序,它执行以下操作:

  1. 在命令行上获取客户输入。(查询)
  2. 通过 LangChain 将这些发送到 Azure OpenAI LLM。
  3. 链工具设置为使用 Tavily 进行搜索
  4. LLM 使用输出将相关信息返回给用户。

如你所见,Elastic Observability 的 APM 识别了 LangChain App,并且还显示了完整的跟踪(通过手动检测完成):

如上图所示:

  1. 用户进行查询
  2. 调用 Azure OpenAI,但它使用工具(Tavily)获取一些结果
  3. Azure OpenAI 审核并向最终用户返回摘要

代码是手动检测的,但也可以使用自动检测。

OpenTelemetry 配置

在使用 OpenTelemetry 时,我们需要配置 SDK 以生成跟踪并配置 Elastic 的端点和授权。说明可在 OpenTelemetry Auto-Instrumentation 设置文档中找到。

OpenTelemetry 环境变量:

可以在 Linux 中(或在代码中)按如下方式设置 Elastic 的 OpenTelemetry 环境变量。

OTEL_EXPORTER_OTLP_ENDPOINT=12345.apm.us-west-2.aws.cloud.es.io:443
OTEL_EXPORTER_OTLP_HEADERS="Authorization=Bearer%20ZZZZZZZ"
OTEL_RESOURCE_ATTRIBUTES="service.name=langchainChat,service.version=1.0,deployment.environment=production"

如你所见,OTEL_EXPORTER_OTLP_ENDPOINT 设置为 Elastic,并且还提供了相应的授权标头。这些可以从 OpenTelemetry 下的 Elastic APM 配置屏幕轻松获取:

注意:不需要代理,我们只需将 OTLP 跟踪消息直接发送到 Elastic 的 APM 服务器。

OpenLLMetry 库:

OpenTelemetry 的自动检测功能可以通过检测包进行扩展,以跟踪其他框架。

首先,你必须安装以下包:

pip install opentelemetry-instrumentation-langchain

此库由 OpenLLMetry 开发。

然后,你需要将以下内容添加到代码中。

from opentelemetry.instrumentation.langchain import LangchainInstrumentor
LangchainInstrumentor().instrument()

检测

添加库并设置环境变量后,即可使用自动检测。使用自动检测,可执行以下操作:

opentelemetry-instrument python tavilyAzureApp.py

OpenLLMetry 库确实可以正确提取流程,只需进行最少的手动操作,除了添加 OpenLLMetry 库。

  1. 在命令行上获取客户输入。(查询)
  2. 通过 LangChain 将这些发送到 Azure OpenAI LLM。
  3. 链工具设置为使用 Tavily 进行搜索
  4. LLM 使用输出将相关信息返回给用户。

手动检测

如果你想从应用程序中获取更多详细信息,则需要手动检测。要获得更多跟踪,请遵循我的 Python 检测指南。本指南将引导你完成设置必要的 OpenTeleMemtry ,此外,你还可以查看 OTel 中有关使用 Python 进行检测的文档。

请注意,环境变量 OTEL_EXPORTER_OTLP_HEADERS 和 OTEL_EXPORTER_OTLP_ENDPOINT 的设置如上一节所述。你还可以设置 OTEL_RESOURCE_ATTRIBUTES。

一旦你按照任一指南中的步骤启动跟踪器,你基本上只需添加你想要获取更多详细信息的跨度即可。在下面的示例中,只添加了一行代码用于跨度初始化。

查看下面的 with tracer.start_as_current_span("getting user query") as span: 的位置

# Creates a tracer from the global tracer provider
tracer = trace.get_tracer("newsQuery")async def chat_interface():print("Welcome to the AI Chat Interface!")print("Type 'quit' to exit the chat.")with tracer.start_as_current_span("getting user query") as span:while True:user_input = input("\nYou: ").strip()if user_input.lower() == 'quit':print("Thank you for chatting. Goodbye!")breakprint("AI: Thinking...")try:result = await chain.ainvoke({"query": user_input})print(f"AI: {result.content}")except Exception as e:print(f"An error occurred: {str(e)}")if __name__ == "__main__":asyncio.run(chat_interface())

如你所见,通过手动检测,我们得到以下跟踪:

当我们输入查询函数时会调用它。async def chat_interface()

结论

在本博客中,我们讨论了以下内容:

  • 如何使用 OpenTelemetry 手动检测 LangChain
  • 如何正确初始化 OpenTelemetry 并添加自定义跨度
  • 如何使用 Elastic 轻松设置 OTLP ENDPOINT 和 OTLP HEADERS,而无需收集器
  • 在 Elastic Observability APM 中查看跟踪

希望这能提供一个易于理解的指南,介绍如何使用 OpenTelemetry 检测 Langchain,以及将跟踪发送到 Elastic 是多么容易。

OpenTelemetry 与 Elastic 的其他资源

  • 使用 Elastic 上的 OpenTelemetry 实现独立性
  • 使用 Elastic 和 OpenTelemetry 在 Kubernetes 上实现现代可观察性和安全性
  • 使用 OpenTelemetry 和 Elastic 进行日志记录的 3 种模型
  • 将免费和开放的 Elastic APM 添加为 Elastic Observability 部署的一部分
  • 使用 OpenTelemetry 和 Elastic 监控 OpenAI API 和 GPT 模型
  • 使用 OpenTelemetry 和 Elastic 为你的可观察性平台提供面向未来的保障
  • 检测资源:
    • Python:自动检测、手动检测
    • Java:自动检测、手动检测
    • Node.js:自动检测、手动检测
    • .NET:自动检测、手动检测

还可以登录 cloud.elastic.co 试用 Elastic 的免费试用版。

原文:Tracing Langchain apps with Elastic, OpenLLMetry, and OpenTelemetry — Elastic Observability Labs

http://www.hkea.cn/news/431358/

相关文章:

  • 女性门户网站源码百度指数功能有哪些
  • 怎么帮公司做网站建设谷歌搜索引擎免费入口 香港
  • 请写出网站建设前期需要做的准备外贸定制网站建设电话
  • 南京门户网站建设网络营销优秀案例
  • 2012服务器如何做网站周口网络推广哪家好
  • 贵阳搜索玩的网站网络舆情软件免费入口
  • 前端自己写代码建网站要花多少钱游戏推广在哪里接活
  • 网站建设中+网页代码nba最新排名东西部
  • 东莞企业建设网站官网有限公司百度推广深圳分公司
  • 海外推广工作内容搜索引擎优化seo是什么
  • wordpress 发短信西安网络优化大的公司
  • dreamweaver个人网站南宁求介绍seo软件
  • 网站常用素材企业培训视频
  • 北京市通州区建设委员会网站网站新站整站排名
  • 太原网站推广只选中联传媒推广排名seo
  • 企业网站建设的常见流程为百度互联网营销顾问
  • 养殖企业网站网络营销策划名词解释
  • 如何进行电子商务网站推广?百度网盘app
  • 做情趣网站需要什么资质sem推广外包
  • 国外网站做任务赚钱的最近新闻有哪些
  • 建设部网站查资质中裕隆百度推广登录平台网址
  • 黄页网站大全免费山东网络推广优化排名
  • 网站文字代码常见的网络营销工具
  • 计算机毕设网站建设怎么改长沙网站设计拓谋网络
  • 类似红盟的网站怎么做aso优化推广
  • vs2013做网站怎样制作免费网页
  • b2c网站的开发无锡网络优化推广公司
  • 网站做视频在线观看营销活动推广方案
  • wordpress多站点统计google图片搜索引擎入口
  • 麻章手机网站建设百度网盘提取码入口