crewAI-examples
CrewAI官方示例库,16+实战案例展示多Agent协作与工作流编排
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
CrewAI官方示例库,16+实战案例展示多Agent协作与工作流编排
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象一下,你是一家营销公司的负责人。以前你要完成一套完整的营销方案,需要分别找文案、设计师、数据分析师——每人各司其职,但协调成本极高,常常出现"文案写的方向和设计出的风格对不上"这种尴尬。
CrewAI 正是为解决这一痛点而生的框架。它让多个 AI Agent 像真实团队一样协作:每个 Agent 有自己的"角色"(role)、"背景故事"(backstory)和"目标"(goal),Agent 之间可以分工、委托、甚至互相审核输出。而 crewAI-examples 则是这个框架的"实战教科书"——不是一个玩具演示,而是从营销、游戏、金融到旅行的完整生产级应用集合。
crewAI-examples 是 CrewAI 官方维护的示例代码库,目前在 GitHub 上拥有超过 6,100 颗星,涵盖 3 大核心模块:
| 模块 | 示例数量 | 说明 |
|---|---|---|
| Crews(传统多 Agent) | 16+ | 多 Agent 协作完成复杂任务 |
| Flows(工作流编排) | 6+ | 带状态管理的进阶工作流 |
| Integrations(生态集成) | 3 | 与 LangGraph、Azure、NVIDIA 的集成 |
每个示例都是独立可运行的项目,使用 uv 包管理器管理依赖,统一要求 Python 3.10+,统一依赖 crewai>=0.152.0 和 crewai-tools。
CrewAI 的设计哲学建立在三个核心概念之上:
Agent(智能体):每个 Agent 拥有独特的角色定位。以 starter_template 为例:
Agent(
role="市场研究员",
backstory="你是一名资深市场分析师,擅长从公开数据中提炼洞察",
goal="收集并整理目标用户画像",
llm=ChatOpenAI(model_name="gpt-4"),
verbose=True # 输出推理过程
)
Task(任务):定义具体工作单元,包含描述和期望输出:
Task(
description="基于输入的 {var1} 和 {var2} 生成市场分析报告",
expected_output="结构化的市场洞察 Markdown 文档",
agent=researcher_agent
)
Crew(团队):将 Agent 和 Task 组装起来,设置协作流程(顺序或并行):
crew = Crew(
agents=[researcher_agent, writer_agent],
tasks=[task1, task2],
verbose=True
)
result = crew.kickoff() # 启动协作
marketing_strategy这是最接近生产环境的示例之一。它包含完整的 src/ 模块结构:
src/main.py:入口,支持 run 和 train 两个命令(后者用于微调 Agent 行为)src/crew.py:核心编排逻辑,定义 Agent 团队和工作流src/config/:角色和任务配置文件(YAML 结构,方便调整)marketing_posts = "marketing_posts.main:run"
train = "marketing_posts.main:train"
安装后可直接通过命令行调用,体现了框架向应用层延伸的设计思路。
stock_analysis集成 SEC(美国证券交易委员会)数据 API,展示如何将外部数据源引入 Agent 工作流:
这展示了 CrewAI 处理结构化外部 API 的能力,而非仅限通用对话。
email_auto_responder_flowFlows 模块代表了 CrewAI 的进阶能力——带状态管理的工作流编排。区别于传统 Crew 的"一次执行完毕",Flows 支持:

图1:Email Auto Responder Flow 工作流示意图,展示了从邮件监控到自动回复生成的完整链路。
CrewAI-LangGraphCrewAI 不仅可以独立使用,还能与 LangGraph 深度集成,实现更复杂的图状工作流:

图2:CrewAI-LangGraph 集成架构图,展示了两种框架的融合方式——CrewAI 负责高层 Agent 编排,LangGraph 负责细粒度的状态机控制。
此外,仓库还包含 Azure OpenAI 和 NVIDIA NIM 的接入示例,方便企业用户在自有云环境中部署。
| 层次 | 技术选型 | 说明 |
|---|---|---|
| 核心框架 | crewai >= 0.152.0 | 多 Agent 编排引擎 |
| 工具生态 | crewai-tools >= 0.58.0 | 内置工具集(DuckDuckGo搜索等) |
| LLM 集成 | LangChain (ChatOpenAI, Ollama) | 支持 OpenAI/Azure/Ollama 多后端 |
| 包管理 | uv | 现代化 Python 包管理器,速度极快 |
| 配置管理 | python-decouple | 环境变量分离(.env) |
| 构建系统 | Hatchling | 项目打包发布 |
部署难度:⭐⭐(2/5)
克隆仓库后,进入具体示例目录,执行 uv sync 即可完成环境搭建。但有几点需要注意:
.env 中配置 OpenAI/Azure 等 API key,这是CrewAI 的核心依赖对于有 Python 基础的开发者,10 分钟内可以让一个示例跑起来。
每个 Agent 的每次调用都涉及 LLM API 调用。在复杂工作流中,多个 Agent 可能产生数十次 API 请求。以 GPT-4 为例,一个包含 5 个 Agent 的完整营销方案生成,成本可能达到 $0.5-2.0。这对小规模应用是个门槛。
当 Agent 需要委托任务给其他 Agent 时(allow_delegation=True),系统依赖 LLM 自己判断"谁来做什么"。在复杂场景下,这可能导致任务分配不合理,需要通过详细的 role 描述来约束。
仓库包含一些"占位"性质的模板(如 starter_template),实际价值有限。而真正有深度的示例(如 stock_analysis、marketing_strategy)需要深入阅读源码才能理解其设计思路。
CrewAI 的崛起反映了 AI 应用开发的一个关键趋势:从单 Agent 对话向多 Agent 协作演进。随着 GPT-4、Claude 等大模型能力提升,单一 Agent 的能力边界逐渐清晰,而让多个专业化 Agent 协作完成复杂任务,成为下一代 AI 应用的主流范式。
从 GitHub 6,100 星的体量来看(主库已达 56,000 星),CrewAI 已经度过了早期采用阶段,开始进入开发者社区主流工具库的行列。crewAI-examples 作为官方示例库,承担着降低入门门槛、展示最佳实践的重要使命。
入门推荐顺序:
crews/starter_template → 理解 Agent/Task/Crew 基本概念crews/instagram_post → 看一个完整的内容生成流程flows/email_auto_responder_flow → 理解 Flows 进阶能力integrations/azure_model → 学习企业级集成方式