理解流程

流程协调代理的任务执行,类似于人类团队的项目管理。这些流程确保任务得到有效分配和执行,并与预定义的策略保持一致。

流程实现

  • 顺序:按顺序执行任务,确保任务按有序进度完成。
  • 层级:在管理层级中组织任务,任务的委派和执行基于结构化的指挥链。必须在团队中指定经理语言模型(manager_llm)或自定义经理代理(manager_agent)来启用层级流程,以便经理创建和管理任务。
  • 共识流程(计划中):旨在促进代理之间在任务执行上的协作决策,此流程类型引入了 CrewAI 中任务管理的民主方法。它计划在未来开发,目前尚未在代码库中实现。

流程在团队协作中的作用

流程使个体代理能够作为一个有凝聚力的单元运作,优化其工作以高效且协调地实现共同目标。

为团队分配流程

要为团队分配流程,请在创建团队时指定流程类型以设定执行策略。对于层级流程,请务必为经理代理定义 manager_llmmanager_agent

from crewai import Crew, Process

# Example: Creating a crew with a sequential process
crew = Crew(
    agents=my_agents,
    tasks=my_tasks,
    process=Process.sequential
)

# Example: Creating a crew with a hierarchical process
# Ensure to provide a manager_llm or manager_agent
crew = Crew(
    agents=my_agents,
    tasks=my_tasks,
    process=Process.hierarchical,
    manager_llm="gpt-4o"
    # or
    # manager_agent=my_manager_agent
)

注意:在创建 Crew 对象之前,请确保已定义 my_agentsmy_tasks,对于层级流程,还需要 manager_llmmanager_agent

顺序流程

此方法模仿动态团队工作流,以周全且系统的方式推进任务。任务执行遵循任务列表中的预定义顺序,一个任务的输出作为下一个任务的上下文。

要自定义任务上下文,请使用 Task 类中的 context 参数来指定应作为后续任务上下文使用的输出。

层级流程

模仿公司层级结构,CrewAI 允许指定自定义经理代理或自动创建一个,需要指定经理语言模型(manager_llm)。此代理负责监督任务执行,包括规划、委派和验证。任务并非预先分配;经理根据代理的能力分配任务,审查输出,并评估任务完成情况。

流程类:详细概述

Process 类被实现为一个枚举(Enum),确保类型安全并将流程值限制为定义的类型(sequential, hierarchical)。共识流程计划在未来纳入,这强调了我们对持续开发和创新的承诺。

结论

CrewAI 中由流程促进的结构化协作对于实现代理之间的系统化团队协作至关重要。本文档已更新,以反映最新的功能、增强功能以及计划中的共识流程集成,确保用户能够获取最新且最全面的信息。