跳转至

针对列表启动团队

简介

CrewAI提供了为列表中的每个项目启动一个crew的能力,允许您对列表中的每个项目执行crew。当您需要对多个项目执行相同的任务集时,此功能特别有用。

为每个项目启动Crew

要为列表中的每个项目启动crew,请使用kickoff_for_each()方法。此方法为列表中的每个项目执行crew,允许您高效地处理多个项目。

下面是如何为列表中的每个项目启动crew的示例:

from crewai import Crew, Agent, Task

# 创建一个启用代码执行的agent
coding_agent = Agent(
    role="Python数据分析师",
    goal="使用Python分析数据并提供见解",
    backstory="您是一位经验丰富的数据分析师,拥有强大的Python技能。",
    allow_code_execution=True
)

# 创建一个需要代码执行的任务
data_analysis_task = Task(
    description="分析给定数据集并计算参与者的平均年龄。年龄:{ages}",
    agent=coding_agent,
    expected_output="从数据集中计算出的平均年龄"
)

# 创建一个crew并添加任务
analysis_crew = Crew(
    agents=[coding_agent],
    tasks=[data_analysis_task],
    verbose=True,
    memory=False,
    respect_context_window=True  # 默认启用
)

datasets = [
  { "ages": [25, 30, 35, 40, 45] },
  { "ages": [20, 25, 30, 35, 40] },
  { "ages": [30, 35, 40, 45, 50] }
]

# 执行crew
result = analysis_crew.kickoff_for_each(inputs=datasets)

以上代码展示了如何为每个数据集执行crew。datasets列表包含了多个数据集,每个数据集都有一个ages键,其值是一个年龄列表。通过调用analysis_crew.kickoff_for_each(inputs=datasets),我们可以为每个数据集中的年龄列表执行之前定义的数据分析任务,从而计算出每个数据集的平均年龄。这种方法使得批量处理数据变得高效且简便。