CrewAI – 开源多智能体协作框架,AI Agent编排平台使用教程:从入门到精通
从选型到落地的可执行指南,适合个人与团队快速上手。
教程正文
从选型到落地的实战步骤。
一、CrewAI 是什么?
CrewAI 是一个轻量级、开源的多智能体协作框架,专为 AI Agent 的编排与任务分配而设计。它允许你将多个具有独立角色(如研究员、写手、审查员)的 AI Agent 组织成一个“团队”,通过定义角色、目标、任务和工具,让它们协同完成复杂工作流。你无需手写复杂的异步代码或管理底层通信,CrewAI 会自动处理 Agent 之间的对话和任务委派。

二、快速开始:安装与第一个 Crew
1. 安装 Python 包
确保你已安装 Python 3.10 及以上版本。使用 pip 安装:
pip install crewai
如需使用高级特性(如嵌入模型),可安装可选依赖:
pip install crewai[embedchain]
2. 准备 API Key
CrewAI 默认使用 OpenAI 模型,需要设置环境变量 OPENAI_API_KEY。也可以在代码中直接传入 llm 参数(例如使用 Ollama 本地模型)。
export OPENAI_API_KEY="sk-xxxxxxxx"
3. 编写第一个 Crew
创建一个 Python 文件 first_crew.py:
from crewai import Agent, Task, Crew, Process
# 定义 Agent
researcher = Agent(
role='高级研究员',
goal='发现关于AI Agent的最新趋势',
backstory='你是一位技术分析师,擅长从海量信息中提炼洞见',
verbose=True,
allow_delegation=False
)
writer = Agent(
role='科技博主',
goal='将研究结果写成一篇通俗易懂的博客文章',
backstory='你是一位拥有10万粉丝的技术博主,擅长用故事化语言解释复杂概念',
verbose=True,
allow_delegation=True
)
# 定义 Task
task1 = Task(
description='搜索并整理2025年AI Agent的五个重要趋势',
expected_output='一个包含五个趋势的列表,每个趋势附带简要说明',
agent=researcher
)
task2 = Task(
description='基于研究结果撰写一篇500字的博客文章,标题要吸引人',
expected_output='完整的博客文章Markdown格式',
agent=writer
)
# 组装 Crew
crew = Crew(
agents=[researcher, writer],
tasks=[task1, task2],
verbose=2, # 输出详细信息
process=Process.sequential # 顺序执行
)
# 启动
result = crew.kickoff()
print('最终输出:', result)
运行脚本:
python first_crew.py
你会看到 Agent 之间在终端中对话,最终输出博客文章。

三、核心概念详解
3.1 Agent(智能体)
每个 Agent 需要定义以下属性:
role:角色名称,影响 LLM 的行为风格goal:具体目标backstory:背景故事,进一步塑造角色allow_delegation:是否允许将子任务委派给其他 Agent(需配合 Manager Agent)tools:可以调用的工具,如搜索、计算、API 调用等(见下节)
3.2 Task(任务)
任务包含清晰的描述和预期输出格式。任务可以指定 agent(强制分配),也可以留空让系统自动分配。任务支持 context 参数传递历史信息。
3.3 Crew(团队)与 Process(流程)
Crew 管理多个 Agent 和 Task。Process 有几种模式:
Process.sequential:顺序执行,每个 Agent 依次完成自己的任务Process.hierarchical:层级模式,需要一个 Manager Agent 来分配和协调任务Process.plane:自定义工作流(需更高级的编排)
四、进阶:使用工具与自定义 LLM
4.1 内置工具
CrewAI 自带一系列工具,例如 SerperDevTool(Google 搜索)、ScrapeWebsiteTool(网页抓取)、FileReadTool、PDFSearchTool 等。安装工具包:
pip install crewai[tools]
示例:让研究员使用搜索工具获取实时数据。
from crewai_tools import SerperDevTool
search_tool = SerperDevTool()
researcher = Agent(
...
tools=[search_tool]
)
4.2 自定义工具
你可以通过继承 Tool 基类构建自己的工具。比如一个计算器工具:
from crewai.tools import tool
@tool('Calculator')
def calculator(expression: str) -> str:
"""计算数学表达式,例如 '2+3*4'"""
try:
return str(eval(expression))
except:
return '表达式错误'
# 在 Agent 中使用
agent = Agent(
...
tools=[calculator]
)
4.3 使用本地模型(Ollama)
如果想完全离线运行,可以搭配 Ollama:
from langchain_community.llms import Ollama
llm = Ollama(model='llama3')
agent = Agent(
...
llm=llm
)
注意:本地模型可能不适合复杂任务,建议先用 GPT-4 测试逻辑。
五、实战案例:自动生成竞品分析报告
目标:每周自动生成一份行业竞品分析简报,包含市场动态、功能对比、趋势预测。
步骤:
- 定义 3 个 Agent:
- DataCollector:使用搜索工具收集竞品新闻和更新
- Analyzer:分析收集到的数据,生成对比表格和关键发现
- ReportWriter:将分析结果转化为结构化报告(含图表占位)
- 创建 3 个 Task,分别指派给对应 Agent
- 设置 Crew 的 Process 为
sequential,确保数据先收集再分析最后撰写 - 使用
crew.kickoff()运行
from crewai import Agent, Task, Crew, Process
from crewai_tools import SerperDevTool, ScrapeWebsiteTool
search_tool = SerperDevTool()
scrape_tool = ScrapeWebsiteTool()
# Agent 定义略…
# Task 定义略…
crew = Crew(
agents=[collector, analyzer, writer],
tasks=[task_collect, task_analyze, task_write],
process=Process.sequential,
verbose=True
)
result = crew.kickoff()
# 输出结果保存为文件
with open('report.md', 'w') as f:
f.write(result)

六、常见问题与技巧(Tips)
- Tip 1: 角色设定越详细,输出质量越高。 给 Agent 丰富的 backstory 和明确的约束(如“只能使用中文回复”)。
- Tip 2: 使用
verbose=2调试。 可以查看每个 Agent 的思考过程和工具调用。 - Tip 3: 任务描述中明确
expected_output。 比如“输出 JSON 格式”或“输出 Markdown 列表”,能减少幻觉。 - Tip 4: 处理大任务时,拆分成多个小任务。 一个 Agent 只干一件事,让大模型聚焦。
- Tip 5: 如需并行处理,使用
Process.plane并自定义 DAG。 或者用多个 Crew 分别启动。 - Tip 6: 注意 Token 消耗。 多轮对话会大量消耗上下文窗口,建议定期清空或使用
max_tokens限制。
七、总结
CrewAI 让多智能体协作变得简单易懂。只需定义角色、分配任务,就能构建出强大的自动化工作流。从个人博客自动化到企业级市场分析,CrewAI 都能胜任。下一步可以尝试集成 LangChain 的更多工具,或接入自己的数据库 API。开始动手吧!
参考资源: 官方文档 https://docs.crewai.com | GitHub https://github.com/joaomdmoura/crewai
相关教程推荐
继续学习相关主题。
Cursor(光标AI)深度评测:2025年AI编程助手的智能代码编辑与多模型协作革命使用教程:从入门到精通
全方位掌握Cursor 2025版:从安装配置到多模型协作,通过实战TODO应用学习AI驱动的智能代码编辑与重构,附高阶技巧与常见问题指南。
Aider(艾德AI)深度评测:2025年开源AI编程助手的智能代码编辑与终端协作革命使用教程:从入门到精通
2025年开源AI编程助手Aider的完整使用教程,涵盖安装、基础命令、多文件重构、终端协作及实用技巧,适合所有开发者快速上手。
Sudowrite(苏多写)深度评测:2025年AI创意写作助手的小说创作与故事智能引擎使用教程:从入门到精通
Sudowrite 2025深度评测与实战教程:从注册到利用Story Engine写小说,覆盖大纲生成、改写扩写、风格模仿等核心功能,附避坑指南与截图标注。
Windsurf(风帆AI)深度评测:2025年AI原生IDE的智能编程与Flow模式革命使用教程:从入门到精通
深入评测2025年AI原生IDE Windsurf,详解革命性Flow模式从安装到高阶实战。通过8个步骤掌握智能编程、多文件上下文、自动修复等核心技巧,让AI成为你的主动协作者。