主题
Weave 集成
了解如何使用 Weights & Biases (W&B) Weave 来追踪、试验、评估和改进你的 CrewAI 应用。
Weave 概览
Weights & Biases (W&B) Weave 是一个用于追踪、试验、评估、部署和改进基于 LLM 应用的框架。
Weave 为 CrewAI 应用开发的每个阶段提供全面支持:
- 追踪与监控:自动追踪 LLM 调用和应用逻辑,以调试和分析生产系统
- 系统化迭代:优化并迭代提示词、数据集和模型
- 评估:使用自定义或预置的评分器,系统地评估并提升智能体表现
- 护栏:通过前置和后置防护措施保护你的智能体,实现内容审核和提示词安全
Weave 会自动为你的 CrewAI 应用捕获追踪,使你能够监控和分析智能体的表现、交互和执行流程。这有助于你构建更好的评估数据集并优化智能体工作流。
设置说明
Install required packages
shell
pip install crewai weaveSet up W&B Account
如果你还没有 Weights & Biases 账号,请先注册。你需要用它来查看追踪和指标。
Initialize Weave in Your Application
将以下代码添加到你的应用中:
python
import weave
# Initialize Weave with your project name
weave.init(project_name="crewai_demo")初始化之后,Weave 会提供一个 URL,你可以在其中查看追踪和指标。
Create your Crews/Flows
python
from crewai import Agent, Task, Crew, LLM, Process
# Create an LLM with a temperature of 0 to ensure deterministic outputs
llm = LLM(model="gpt-4o", temperature=0)
# Create agents
researcher = Agent(
role='Research Analyst',
goal='Find and analyze the best investment opportunities',
backstory='Expert in financial analysis and market research',
llm=llm,
verbose=True,
allow_delegation=False,
)
writer = Agent(
role='Report Writer',
goal='Write clear and concise investment reports',
backstory='Experienced in creating detailed financial reports',
llm=llm,
verbose=True,
allow_delegation=False,
)
# Create tasks
research_task = Task(
description='Deep research on the {topic}',
expected_output='Comprehensive market data including key players, market size, and growth trends.',
agent=researcher
)
writing_task = Task(
description='Write a detailed report based on the research',
expected_output='The report should be easy to read and understand. Use bullet points where applicable.',
agent=writer
)
# Create a crew
crew = Crew(
agents=[researcher, writer],
tasks=[research_task, writing_task],
verbose=True,
process=Process.sequential,
)
# Run the crew
result = crew.kickoff(inputs={"topic": "AI in material science"})
print(result)View Traces in Weave
运行 CrewAI 应用后,访问初始化时提供的 Weave URL 以查看:
- LLM 调用及其元数据
- 智能体交互和任务执行流程
- 延迟和 token 用量等性能指标
- 执行期间发生的任何错误或问题

特性
- Weave 会自动捕获所有 CrewAI 操作:智能体交互和任务执行;带元数据和 token 用量的 LLM 调用;工具使用情况及结果。
- 该集成支持所有 CrewAI 执行方法:
kickoff()、kickoff_for_each()、kickoff_async()和kickoff_for_each_async()。 - 自动追踪所有 crewAI-tools。
- 通过装饰器补丁(
@start、@listen、@router、@or_、@and_)支持 Flow 功能。 - 使用
@weave.op()追踪传递给 CrewAITask的自定义护栏。
关于支持内容的详细信息,请访问 Weave CrewAI 文档。