开发框架教程(5):CrewAI —— 组建你的 AI 团队
如果说 LangGraph 是让你像程序员一样精确控制流程,那么 **CrewAI** 则是让你像**老板**一样管理公司。
5分钟
2025-12-26
框架开发SDK开发框架教程(5):CrewAI
开发框架教程(5):CrewAI —— 组建你的 AI 团队
1. 什么是 CrewAI?
如果说 LangGraph 是让你像程序员一样精确控制流程,那么 CrewAI 则是让你像老板一样管理公司。
CrewAI 的核心理念是:Role-Playing (角色扮演) 和 Multi-Agent Collaboration (多智能体协作)。
你不再写 if-else,而是写 Job Description(职位描述):
- "你是一个资深研究员,负责搜集资料。"
- "你是一个毒舌评论家,负责挑之前那个人写的内容的刺。"
- "你是一个项目经理,负责协调他们俩。"
CrewAI 会自动协调这几个 Agent 说话的顺序和协作的方式。
2. 核心概念
Agent (员工)
每个 Agent 都有:
- Role (角色): 比如 "Senior Python Engineer"。
- Goal (目标): "写出完美无 Bug 的代码"。
- Backstory (背景故事): "你拥有20年谷歌开发经验,最讨厌不写注释的人..."(背景故事越丰富,AI 扮演得越好)。
Task (任务)
你需要完成的具体工作。
- "分析这份财报"
- "写一篇博客"
Process (流程)
- Sequential (顺序): 员工 A 做完给 B,B 给 C。
- Hierarchical (层级): 有一个 Manager Agent 会自动派活给下面的人。
3. 实战代码:写博客流水线
# pip install crewai
from crewai import Agent, Task, Crew, Process
# 1. 定义员工
researcher = Agent(
role='Tech Researcher',
goal='分析最新的 AI 趋势',
backstory='你是 HackerNews 的重度用户,对新技术极其敏锐。',
verbose=True
)
writer = Agent(
role='Tech Writer',
goal='基于分析写出爆款文章',
backstory='你曾是《纽约时报》的专栏作家,擅长把复杂技术讲得通俗易懂。',
verbose=True
)
# 2. 定义任务
task1 = Task(
description='搜索 2024 年关于 LLM Agent 的最新突破。',
agent=researcher
)
task2 = Task(
description='根据研究员的报告,写一篇 1000 字的博客文章。',
agent=writer
)
# 3. 组建团队 (Crew)
crew = Crew(
agents=[researcher, writer],
tasks=[task1, task2],
process=Process.sequential # 顺序流程
)
# 4. 开工!
result = crew.kickoff()
print(result)
4. 总结
CrewAI 非常适合 "创意生成" 和 "复杂文案工作"。 比如写长篇小说、生成市场分析报告、自动化新闻简报。 它不如 LangGraph 精确,但它不仅更简单,而且往往能涌现出意想不到的创意火花(因为 Agent 之间会"吵架"和讨论)。