文档索引
获取完整文档索引: https://docs.crewai.com.cn/llms.txt
在深入了解之前,请使用此文件来浏览所有可用页面。
Weave 概述
Weights & Biases (W&B) Weave 是一个用于追踪、实验、评估、部署和改进基于 LLM 的应用程序的框架。
Weave 为您 CrewAI 应用程序开发的每个阶段提供全面支持:
- 追踪与监控:自动追踪 LLM 调用和应用程序逻辑,以便调试和分析生产系统
- 系统性迭代:优化并迭代提示词 (prompts)、数据集和模型
- 评估:使用自定义或预构建的评分器来系统地评估并提升智能体性能
- 防护栏 (Guardrails):通过用于内容审核和提示词安全的前置及后置安全措施来保护您的智能体
Weave 会自动为您的 CrewAI 应用程序捕获追踪数据,使您能够监控和分析智能体的性能、交互和执行流程。这有助于您构建更好的评估数据集并优化智能体工作流。
设置说明
在您的应用程序中初始化 Weave
将以下代码添加到您的应用程序中import weave
# Initialize Weave with your project name
weave.init(project_name="crewai_demo")
初始化后,Weave 将提供一个 URL,您可以在其中查看追踪数据和指标。 创建您的 Crew/Flow
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)
在 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() 追踪传递给 CrewAI Task 的自定义防护栏。
有关支持内容的详细信息,请访问 Weave CrewAI 文档。