跳转到主要内容

文档索引

获取完整文档索引: https://docs.crewai.com.cn/llms.txt

在深入了解之前,请使用此文件来浏览所有可用页面。

将 Langfuse 与 CrewAI 集成

本笔记本演示了如何通过 OpenLit SDK 使用 OpenTelemetry 将 LangfuseCrewAI 进行集成。学完本笔记本后,你将能够使用 Langfuse 对 CrewAI 应用程序进行追踪,从而实现更好的可观测性和调试。
什么是 Langfuse? Langfuse 是一个开源的 LLM 工程平台。它为 LLM 应用程序提供追踪和监控功能,帮助开发者调试、分析和优化其 AI 系统。Langfuse 通过原生集成、OpenTelemetry 以及 API/SDK 与各种工具和框架进行集成。
Langfuse Overview Video

开始使用

我们将通过一个简单的示例来介绍如何使用 CrewAI,并将其通过 OpenTelemetry 使用 OpenLit 与 Langfuse 进行集成。

步骤 1:安装依赖项

%pip install langfuse openlit crewai crewai_tools

步骤 2:设置环境变量

设置你的 Langfuse API 密钥并配置 OpenTelemetry 导出设置,以便将追踪数据发送到 Langfuse。请参阅 Langfuse OpenTelemetry 文档,了解有关 Langfuse OpenTelemetry 端点 /api/public/otel 和身份验证的更多信息。
import os
 
# Get keys for your project from the project settings page: https://cloud.langfuse.com
os.environ["LANGFUSE_PUBLIC_KEY"] = "pk-lf-..." 
os.environ["LANGFUSE_SECRET_KEY"] = "sk-lf-..."
os.environ["LANGFUSE_HOST"] = "https://cloud.langfuse.com" # 🇪🇺 EU region
# os.environ["LANGFUSE_HOST"] = "https://us.cloud.langfuse.com" # 🇺🇸 US region
 
 
# Your OpenAI key
os.environ["OPENAI_API_KEY"] = "sk-proj-..."
设置好环境变量后,我们现在可以初始化 Langfuse 客户端。get_client() 使用环境变量中提供的凭据初始化 Langfuse 客户端。
from langfuse import get_client
 
langfuse = get_client()
 
# Verify connection
if langfuse.auth_check():
    print("Langfuse client is authenticated and ready!")
else:
    print("Authentication failed. Please check your credentials and host.")

第 3 步:初始化 OpenLit

初始化 OpenLit OpenTelemetry 工具 SDK,开始捕获 OpenTelemetry 追踪数据。
import openlit

openlit.init()

第 4 步:创建一个简单的 CrewAI 应用程序

我们将创建一个简单的 CrewAI 应用程序,其中多个代理协作回答用户的问题。
from crewai import Agent, Task, Crew

from crewai_tools import (
    WebsiteSearchTool
)

web_rag_tool = WebsiteSearchTool()

writer = Agent(
        role="Writer",
        goal="You make math engaging and understandable for young children through poetry",
        backstory="You're an expert in writing haikus but you know nothing of math.",
        tools=[web_rag_tool],  
    )

task = Task(description=("What is {multiplication}?"),
            expected_output=("Compose a haiku that includes the answer."),
            agent=writer)

crew = Crew(
  agents=[writer],
  tasks=[task],
  share_crew=False
)

第 5 步:在 Langfuse 中查看追踪数据

运行代理后,你可以在 Langfuse 中查看 CrewAI 应用程序生成的追踪数据。你应该能看到 LLM 交互的详细步骤,这将有助于你调试和优化 AI 代理。 CrewAI example trace in Langfuse Langfuse 中的公共示例追踪

参考资料