Introduction
CrewAI 提供了一个灵活的框架,用于以结构化方式执行任务,支持顺序和分层流程。 本指南概述了如何有效实施这些流程,以确保高效的任务执行和项目完成。顺序流程概览
顺序流程确保任务按照线性进展逐一执行。 这种方法非常适合需要按特定顺序完成任务的场景。主要特性
- 线性任务流: 通过按预定顺序处理任务,确保有序推进。
- 简洁性: 最适合具有清晰、逐步任务的项目。
- 简易监控: 便于轻松追踪任务完成情况和项目进展。
实现顺序流程
要使用顺序流程,请按执行顺序组建您的团队并定义任务。代码
注意:
在顺序流程中,每个任务必须分配一个智能体。确保每个Task都包含一个agent参数。
Workflow in Action
- 初始任务: 在顺序流程中,第一个智能体完成任务并发出完成信号。
- 后续任务: 智能体根据流程类型执行任务,前序任务的结果或指令将指导其执行。
- 完成: 一旦最终任务被执行,该过程即告结束,项目随之完成。
高级功能
任务委派
在顺序流程中,如果智能体将allow_delegation 设置为 True,他们可以将任务委派给crew中的其他智能体。
当crew中有多个智能体时,此功能会自动设置。
异步执行
任务可以异步执行,在适当情况下实现并行处理。 要创建异步任务,请在定义任务时设置async_execution=True。
记忆与缓存
CrewAI 支持记忆和缓存功能:- 记忆: 在创建Crew时通过设置
memory=True来启用。这使得智能体能够在多个任务间保留信息。 - 缓存: 默认情况下,缓存是启用的。设置
cache=False来禁用它。
回调函数
您可以在任务和步骤级别设置回调:task_callback: 在每个任务完成后执行。step_callback: 在智能体执行的每个步骤之后执行。
使用指标
CrewAI 追踪所有任务和智能体的令牌使用情况。您可以在执行后访问这些指标。顺序流程的最佳实践
- 顺序至关重要: 按照逻辑顺序安排任务,确保每个任务都建立在前一个任务的基础上。
- 清晰的任务描述: 为每个任务提供详细的描述,以有效指导智能体。
- 合适的智能体选择: 将智能体的技能和角色与每项任务的要求相匹配。
- 使用上下文: 利用先前任务的上下文来指导后续任务。
