CrewAI 教程:AI Flowi Workflow 集成
CrewAI 教程介绍 AI Flowi Workflow 中的六个目录组件,用于定义智能体、描述任务,以及组建顺序或层级团队。本参考说明梳理它们的实际字段和输出类型,让你在尝试配置之前,能够区分任务对象与团队的最终消息。
六个 CrewAI 条目,以及单任务示例中使用的 Language Model 和 Chat Output,均已在目录中记录;Ai Flowi 尚未进行生产环境测试。来源是 2026 年 10 月 9 日导出的 AI Flowi Workflow 1.9.2 目录,可通过 CrewAI 目录类别访问。
六个 CrewAI 组件
CrewAI 表格可横向滚动。使用键盘将焦点移至表格,即可阅读可见区域之外的列。
| 组件 | 目录中的操作描述 | 输出名称和类型 |
|---|---|---|
| CrewAI Agent | 表示 CrewAI 的一个智能体。 | output: NoneType |
| Hierarchical Crew | 表示一组智能体,定义它们应如何协作,以及应执行哪些任务。 | output: Message |
| Hierarchical Task | 每个任务必须包含描述、预期输出,以及负责执行的智能体。 | task_output: HierarchicalTask |
| Sequential Crew | 表示一组智能体,其任务按顺序执行。 | output: Message |
| Sequential Task Agent | 创建一个 CrewAI Task 及其关联的 Agent。 | task_output: SequentialTask |
| Sequential Task | 独立的任务配置,要求连接智能体。 | task_output: SequentialTask |
Sequential Task Agent 将任务和智能体配置合并。Sequential Task 则要求连接 agent。Hierarchical Task 的描述提到负责执行的智能体,但导出的输入中没有 agent 字段:不要为了补全描述而臆造字段。
智能体、任务与团队输入
| 组件 | 导出的输入 | 必填字段 |
|---|---|---|
| CrewAI Agent | allow_code_execution, allow_delegation, backstory, goal, kwargs, llm, memory, role, tools, verbose | 未标注必填字段 |
| Hierarchical Crew | agents, function_calling_llm, manager_agent, manager_llm, max_rpm, memory, share_crew, tasks, use_cache, verbose | 未标注必填字段 |
| Hierarchical Task | expected_output, task_description, tools | 未标注必填字段 |
| Sequential Crew | function_calling_llm, max_rpm, memory, share_crew, tasks, use_cache, verbose | 未标注必填字段 |
| Sequential Task Agent | agent_kwargs, allow_code_execution, allow_delegation, async_execution, backstory, expected_output, goal, llm, memory, previous_task, role, task_description, tools, verbose | 未标注必填字段 |
| Sequential Task | agent, async_execution, expected_output, task, task_description, tools | agent |
上述必填标记描述的是导出信息,并不代表完整可运行的团队。尤其是可选的模型字段,不会自动提供服务商访问权限、任务文本或选定模型。凭据机制见连接指南,模型配置见 Language Model 参考。
区分参与者指令与具体任务
用 role 表达预定职责,goal 表达目标,backstory 提供相关背景。将具体任务放在 task_description 中,将期望交付物放在 expected_output 中。两个任务文本字段均接受 Message 连接。这些是指令,并非验证结构或已记录的完成结果。
CrewAI Agent 的 kwargs 和 Sequential Task Agent 的 agent_kwargs 字段类型均为 dict;导出信息未列出受支持的键。不要将未记录的选项复制进去。工具连接的类型为 Tool,但仅凭该类型无法说明工具权限、数据访问或外部影响。
按字段定义理解开关与预算
allow_code_execution、allow_delegation 和 memory 在两个可配置智能体的组件上均为布尔字段。async_execution 在两个顺序任务组件上为布尔值。团队级的 memory、share_crew 和 use_cache 也为布尔值;max_rpm 为整数。默认值、速率范围、缓存有效期和共享目标均未说明。
详细输出设置有一个细微但相关的区别:verbose 在可配置智能体的节点上为布尔值,在团队节点上则为整数。不要假定同一个已保存值能够原样复制到这些字段。共享任何诊断输出之前,请检查其中是否包含任务内容。
任务类型与输出边界
| 边界 | 接受的类型 | 对配置的影响 |
|---|---|---|
| 智能体指令 | role, goal, backstory: Message | 这些字段描述参与者;任务指令应放在任务组件中。 |
| 模型与工具 | llm: LanguageModel; tools: Tool | 使用已配置的模型对象,而非生成的回复。分别检查每个提供的工具。 |
| 顺序依赖 | previous_task 和 task: SequentialTask | 前置任务字段位于 Sequential Task Agent;任务字段位于 Sequential Task。 |
| Sequential Crew | tasks: SequentialTask | 使用顺序任务系列;导出信息未提供集合顺序约定。 |
| Hierarchical Crew | agents, manager_agent: Agent; manager_llm, function_calling_llm: LanguageModel; tasks: HierarchicalTask | 层级配置具有独立的协调字段和不同的任务类型。 |
CrewAI Agent 的输出显示为 Agent,但类型为 NoneType。这与 Sequential Task 及层级智能体字段接受的 Agent 类型存在冲突。应将此视为未解决的接口边界;显示标签不能证明连接兼容。下方方案中的 Sequential Task Agent 避开了这一特定的独立智能体连接,但并未证明运行时成功。
两个团队均将 output 导出为 Message。Chat Output 的 input_value 接受 Message,因此用于展示时,目录中的类型相符。任务输出是任务对象,而非已完成的答案消息;层级任务类型与顺序任务类型并不相同。
可供检查的单任务顺序配置
示例配置,并非已记录的测试
准备一份含标题和检查清单的虚构维护记录。你需要为所选模型准备自己的模型服务商账户和 API 密钥,并另行支付该服务商费用。此建议的纯文本练习无须搜索服务或外部写入工具。
- 按照Language Model 的现有字段参考进行配置,再将
model_output连接到 Sequential Task Agent 的llm。 - 将 Sequential Task Agent 的
role设为“维护记录编辑员”,goal设为“提取提供的检查清单”,backstory设为“仅使用提供的虚构记录”,task_description设为该记录及提取请求,expected_output设为“以纯文本列出检查清单项目”。 - 采用多智能体系统配置指南中的共用任务限制和团队设置。
- 将这一个
task_output连接到 Sequential Crew 的tasks;保留单个任务,可以检查任务对象边界,而无须假定多任务集合如何组装。 - 将团队的
output连接到 Chat Output 的input_value。运行前在编辑器中检查每个边界,再将展示的响应与原始检查清单比较。
预期结果是在 Playground 中显示纯文本检查清单。尚未记录此配置的任何输出。即使回复流畅,也仍需检查是否遗漏或添加了项目;模型或团队步骤失败,不代表提取已经完成。
源记录可使用:“车间复位:拔掉检查灯电源;将扭矩扳手放回盒中。”将整份记录放入 task_description,并要求仅提取这两项操作。expected_output 应保持为交付物描述,不要在其中提供已完成的检查清单。否则无法判断响应是在提取来源,还是仅重复指令中放置的答案。若建议的检查清单添加了“锁好车间”,便包含了无来源支持的操作;若遗漏扳手,则不完整。这些是本示例的人工检查标准,而非示例结果。
选择不同的任务组件会改变检查内容
将 Sequential Task Agent 替换为 Sequential Task,会引入必填的 agent 连接,以及尚未解决的 Agent/NoneType 类型不匹配。替换为 Hierarchical Task,则会把输出改为 HierarchicalTask,应连接到 Hierarchical Crew,而非 Sequential Crew。这两种替换都不是简单改名。先解决变化后的端口问题,再检查任务文本;更改任务无法修复不兼容的对象类型。
将记录改用层级配置时,还有第二个重要区别:Hierarchical Task 有任务文本和工具,但没有模型输入。该系列的模型选择字段位于其他组件中,因此把顺序任务的 llm 设置复制到层级任务,就等于臆造字段。
CrewAI 类别何时不适用?
如果一次普通模型调用就能提取检查清单,请使用更简单的路径。团队配置会增加任务对象边界和权限开关,需要分别检查。多智能体系统指南涵盖架构和交接;本页则提供六个节点的配置约定。
Hierarchical Crew 同时提供 manager_agent 和 manager_llm,但导出信息未说明如何在两者之间选择,或两者均填写时的优先级。其 agents 输入也缺少已记录的集合格式。扩展单任务方案之前,应先解决这些层级配置特有的问题;添加协调字段并不能明确参与者如何被选择。
作者:Ai Flowi · 发布于
官方来源:CrewAI 文档
工作流用量
套餐:Go 年付方案每月 USD8 起(月付 USD10),Plus 年付方案每月 USD16 起(月付 USD20),Pro 100 年付方案每月 USD80 起(月付 USD100),Pro 200 年付方案每月 USD160 起(月付 USD200),Pro 500 年付方案每月 USD400 起(月付 USD500),每月包含 5,000 至 250,000 个 Flowi Tokens,并支持充值;每次节点运行消耗 1 个 token;不包含第三方 API 和模型使用费用。