输入“/”快速插入内容

深入CrewAI,手把手教你快速构建多智能体系统

2024年8月30日修改
作者:猕猴桃 | 探索AGI
嘿,大家好!这里是一个专注于AI智能体的频道!
今天,聊聊CrewAI,这个Python中的多智能体系统构建工具,简直是自动化领域的扛把子。想象一下,一群AI Agent各司其职,协同作战,解决复杂问题,是不是听起来就很酷炫?
在 CrewAI 中,每个 Agent 都被赋予了不同的角色和能力,使他们擅长处理不同的任务。比如角色为“作家”,则擅长撰写吸引人的的故事,角色为“算法工程师”,则擅长搜集前沿的科技信息。清晰的角色定义确保每个智能体都能有效地贡献自己的力量。
多智能体有什么用呢?比如说一个具体的应用场景,市场研究和分析,一个市场研究团队可能包括收集市场趋势数据、分析竞争对手、生成综合报告和提供可操作见解的智能体。这使公司能够根据最新的市场动态做出明智的决策。
接下来,实战一个简单的例子:
1.
安装
代码块
pip install crewai
pip install 'crewai[tools]'
2.
构建智能体,角色
代码块
import os
from crewai import Agent
from crewai_tools import SerperDevTool
os.environ["SERPER_API_KEY"] = "Your Key"
os.environ["OPENAI_API_KEY"] = "Your Key"
search_tool = SerperDevTool()
researcher = Agent(
role='Researcher',
goal='探索{topic}中的突破性技术',
verbose=True,
memory=True,
backstory="在好奇心的驱使下,你站在科技前沿,渴望探索和分享能够改变世界的知识。",
tools=[search_tool],
allow_delegation=True
)
writer = Agent(
role='Writer',
goal='讲述关于{topic}的吸引人的技术文章',
verbose=True,
memory=True,
backstory="你凭借化繁为简的天赋,以引人入胜的叙述方式吸引读者,以通俗易懂的方式写出你的思考和观点",
tools=[search_tool],
allow_delegation=False
)
3.
定义任务
代码块
from crewai import Task
research_task = Task(
description="确定{topic}中的下一个大趋势。专注于优缺点以及整体概况。你的最终报告应清楚地阐述关键点、市场机会和潜在风险。",
expected_output=关于最新人工智能趋势的综合三段式报告。',
tools=[search_tool],
agent=researcher,
)
write_task = Task(
description="撰写一篇关于{topic}的有见地的文章。关注最新趋势以及它如何影响行业。这篇文章应该通俗易懂、引人入胜且积极向上。",
expected_output='一篇关于{topic}进展的4段式文章,格式为Markdown。',
tools=[search_tool],
agent=writer,
async_execution=False,
output_file='new-blog-post.md'
)