理解进程

流程通过代理协调任务的执行,类似于人类团队中的项目管理。 这些流程确保任务按照预定义的策略高效分配和执行。

流程实现

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

流程在团队合作中的作用

流程使个体代理能够作为一个有凝聚力的单位运作,简化他们的努力,以高效和一致的方式实现共同目标。

将流程分配给团队

要将流程分配给团队,请在创建团队时指定流程类型以设置执行策略。对于分层流程,确保为管理代理定义manager_llmmanager_agent

from crewai import Crew
from crewai.process import Process
from langchain_openai import ChatOpenAI

# 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=ChatOpenAI(model="gpt-4")
    # or
    # manager_agent=my_manager_agent
)

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

顺序流程

此方法反映了动态团队的工作流程,以深思熟虑和系统化的方式推进任务。任务执行遵循任务列表中预定义的顺序,一个任务的输出作为下一个任务的上下文。

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

分层过程

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

进程类:详细概述

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

结论

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

这个页面有帮助吗?