探索 CrewAI(1)——简介、安装和测试

1,249 阅读5分钟

引言

在 AI 技术快速迭代的今天,如何让多个智能体高效协作已成为行业痛点。

CrewAI 作为新一代自主 AI 编排框架,通过创新的角色分工机制和流程设计,正在重新定义多智能体协作的可能性。

github:github.com/crewAIInc/c…

官方文档:docs.crewai.com/introductio…

本序列的文章,将跟大家一起来学习和理解CrewAI框架的核心特性和使用方法。

这一篇,关于CrewAI的介绍、安装和快速测试。

一、CrewAI是什么?

CrewAI 是一个前沿的自主 AI 智能体协作编排框架,专为设计和协调多个 AI 智能体(Agents)的协作工作流而构建。它通过角色化分工、任务编排和流程控制,让多个 AI 智能体像专业团队一样协同完成复杂任务。这就好比组建一支理想的人类团队,团队里每个成员(智能体)都凭借独特的技能和专业知识,紧密配合达成目标。

image.png

上图是CrewAI Framework的概览图。

二、关键组件和工作原理

如上图所示,关键组件包括:CrewAI AgentsProcessTasks

  • Crew(团队管理层) :作为顶级组织,承担着管理 AI 智能体团队的责任。它要监督整个工作流程,确保团队成员之间有效协作,最终交付工作成果。例如在一个内容创作项目中,Crew 负责分配不同智能体的工作,把控创作进度,保证整个创作流程顺利推进,产出符合要求的内容。
  • AI Agents(智能体成员) :是团队中的专业成员,各自有着特定角色,像研究员、作家等。它们能够使用指定的工具,并且在工作过程中可以自主决策,还能将任务委派给其他智能体。比如在研发新产品时,负责市场调研的智能体(研究员角色),利用数据分析工具收集和分析市场信息,自主判断哪些信息对产品研发更重要,还能把一些数据收集的子任务委派给其他智能体。
  • Process(工作流管理系统) :是一个工作流管理系统,它定义了智能体之间的协作模式,控制任务如何分配,管理它们之间的交互过程,以此确保整个工作高效执行。在电商订单处理流程中,Process 会规定负责库存查询、订单生成、物流安排等不同智能体之间的协作顺序和交互方式,让订单处理快速且准确。
  • Tasks(具体任务) :是个体任务,每个任务都有清晰的目标,会使用特定工具,并且是更大工作流程的一部分,最终要产生可行的结果。以制作一份市场报告为例,收集数据、分析数据、撰写报告章节等都是一个个具体的任务,每个任务都有明确目标,如收集数据任务要明确收集哪些数据、用什么工具收集,完成这些任务最终形成完整的市场报告。

三、协同运作方式

在 CrewAI 的工作过程中,Crew 负责组织整体的运作,为整个团队设定方向和规划;AI Agents 专注于执行自己的专业任务;Process 保障各个环节协作顺畅,避免出现混乱和错误;通过完成一个个 Tasks,逐步实现最终的目标。

四、关键特性

  • 自主运作:智能体可以依据自身所承担的角色和可使用的工具,做出明智的决策,无需过多外部干预,能够灵活应对工作中的各种情况。
  • 自然交互:智能体之间的沟通和协作方式类似人类团队成员,这种自然的交互模式使得团队协作更加流畅高效。
  • 可扩展设计:便于添加新的工具、角色和能力,以适应不断变化的需求和业务场景,让框架的功能和应用范围不断拓展。
  • 适用于实际生产:专为现实世界应用的可靠性和可扩展性而打造,能够在实际的生产环境中稳定运行,处理大量复杂任务。

五、安装和测试

接下来展示在Linux系统中安装和验证的简要过程。

1、创建虚拟环境

通过conda创建一个单独下Python虚拟环境。(关于conda的安装和使用,本文不详细展开,有需要的同学请自行搜索)

注意:目前的CrewAI框架对Python版本有要求。Python >=3.10 and <3.13。

conda create -y -n CrewAI python=3.10
2、安装CrewAI

激活新的虚拟环境,并安装CrewAI。

# 激活刚创建的新虚拟环境
conda activate CrewAI
# 安装 CrewAI 框架
pip install 'crewai[tools]'
3、验证安装情况

执行下面的命令,验证安装是否成功。

如果安装成功,可以看到crewai和crewai-tools的版本信息

pip freeze | grep crewai
4、新建测试工程

使用CrewAI命令行工具,新建一个测试工程

假设我们现在要新建一个名为my_ai_crew的新项目,可以执行下面的命令

crewai create crew my_ai_crew

执行命令时,会弹出一些选项,需要你根据实际情况进行配置。如下图:

image-20250125153349825.png

命令执行完毕后,可以看到当前有一个新增的目录:my_ai_crew

进入该目录,执行tree -a可以看到这些文件和目录:

image-20250125154304865.png

刚才配置的大模型信息,如具体模型名称,API Key等信息,可以在 .env 文件中查看到。

如果刚才执行crewai create crew的时候没有配置这些参数,后续也可以手动添加到 .env 文件中。

例如:

cat .env

MODEL=gpt-4o
OPENAI_API_KEY="你的OpenAI的密钥"
5、快速测试一下

现在,可以先什么都不动,执行下面两个命令。

# 注意,确保当前是在 my_ai_crew 目录下

# 安装依赖项
crewai install

# 运行 CrewAI 智能体
crewai run

如果能看到类似下面的输出,那么恭喜你,已经安装成功了。

image-20250125154632362.png

六、下一步

接下来,就该进一步分析和学习框架源码,并测试更符合业务需求的智能体了。

后续的内容,下一文章继续,敬请期待。