LLMs之Agent:crewAI的简介、安装和使用方法、案例应用之详细攻略
LLMs之Agent:crewAI的简介、安装和使用方法、案例应用之详细攻略
目录
crewAI的简介
2023年11月,CrewAI是一个用于编排角色扮演式自主AI智能体的生产级框架。它通过促进协作式智能,使智能体能够无缝协同工作,从而解决复杂的任务。CrewAI 从底层构建,不依赖于Langchain或其他代理框架,旨在使AI代理能够承担角色、共享目标并在一个紧密结合的单元中运行,就像一个运作良好的团队一样。无论您是构建智能助手平台、自动化客户服务团队还是多智能体研究团队,CrewAI 都能为复杂的智能体交互提供支持。
CrewAI 的核心在于其灵活的生产就绪架构,它平衡了自主性和精确控制,能够处理复杂的现实场景,并保持清晰易维护的代码结构。CrewAI 还提供了 Crews 和 Flows 的详细比较,以及与其他 AI 编排工具(LangGraph、Autogen、ChatDev)的对比,突出了其在生产环境中的优势,例如更高的执行速度和更灵活的定制能力。
GutHub地址:https://github.com/crewAIInc/crewAI
crewAI的安装和使用方法
1、安装
确保你的系统已安装 Python 3.10 到 3.13 版本。CrewAI 使用 UV 进行依赖管理和包处理。
# 基本安装
pip install crewai
# 包含可选工具的安装(需要更多依赖项):
pip install 'crewai[tools]'
# 如果安装过程中遇到 ModuleNotFoundError:No module named 'tiktoken' 错误,请单独安装 tiktoken:
pip install 'crewai[embeddings]'
# 如果遇到其他依赖问题,请参考文档中的“Troubleshooting Dependencies”部分。
2、使用方法
(1)、创建项目
使用以下命令创建一个新的 CrewAI 项目:
crewai create crew <project_name>
这将创建一个包含以下结构的项目文件夹:
stylus
my_project/
├── .gitignore
├── pyproject.toml
├── README.md
├── .env
└── src/
└── my_project/
├── __init__.py
├── main.py
├── crew.py
├── tools/
│ ├── custom_tool.py
│ └── __init__.py
└── config/
├── agents.yaml
└── tasks.yaml
你需要修改 src/my_project 文件夹中的文件来开发你的 Crew。main.py 是项目的入口点,crew.py 定义你的 Crew,agents.yaml 定义你的 Agent,tasks.yaml 定义你的任务。 .env 文件中设置环境变量,例如 OPENAI_API_KEY 和 SERPER_API_KEY。
(2)、定义 Agents 和 Tasks:
在 agents.yaml 中定义 Agents 的角色、目标和背景故事,在 tasks.yaml 中定义任务的描述、预期输出和负责的 Agent。 以下是一个示例:
# src/my_project/config/agents.yaml
researcher:
role:>
{topic} Senior Data Researcher
goal:>
Uncover cutting-edge developments in {topic}
backstory:>
You're a seasoned researcher...
reporting_analyst:
role:>
{topic} Reporting Analyst
goal:>
Create detailed reports...
backstory:>
You're a meticulous analyst...
# src/my_project/config/tasks.yaml
research_task:
description:>
Conduct a thorough research about {topic}...
expected_output:>
A list with 10 bullet points...
agent:researcher
reporting_task:
description:>
Review the context you got...
expected_output:>
A fully fledge reports...
agent:reporting_analyst
output_file:report.md
(3)、定义 Crew 和 Process
在 crew.py 中使用 @CrewBase、@agent、@task 和 @crew 装饰器定义你的 Crew、Agents 和 Tasks,并指定流程(Process.sequential 或 Process.hierarchical)。
(4)、运行 Crew
使用以下命令运行你的 Crew:
crewai run
或者
python src/my_project/main.py
运行前,确保已安装所有依赖项 (crewai install)。
crewAI的案例应用
CrewAI 提供了多个示例,这些示例展示了 CrewAI 如何使用 Crews 和 Flows 结合来构建复杂的自动化流程。 例如,AdvancedAnalysisFlow 示例展示了如何在一个 Flow 中编排多个 Crews,并使用结构化状态、条件分支和任务委托来实现复杂的市场分析。 此外,文档中还详细介绍了如何将 CrewAI 连接到各种 LLM 模型,包括本地模型。
Landing Page Generator:生成落地页。
Trip Planner:行程规划器。
Stock Analysis:股票分析工具。
Write Job Descriptions:编写工作描述。
原文地址:https://blog.csdn.net/qq_41185868/article/details/145250013
免责声明:本站文章内容转载自网络资源,如侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!