
Aitrainee | 公众号:AI进修生
🌟Crew AI: 一个前沿AI框架,使用它便可部署一支由你指挥的人工智能代理大军,创建强大数字劳动力。

Hello,大家好,我是Aitrainee,今天要给大家介绍一个超酷的新AI框架——Crew AI(Crew:船员,顾名思义:机组人员人工智能)。
该框架使代理能够通过角色扮演无缝协作和协同工作。可以将其视为协调一支高效、有凝聚力的 AI 代理团队,每个代理都有自己独特的角色和目标。所以 Crew AI 就是让一群 AI 代理像一个团队一样协同工作。

最简单入门教程:
一个例子:CrewAI LLaMa 3:如何创建AI代理来实现新闻机构自动化
利用 Groq 和 Llama 3 API支持Crew AI 以创建 AI 代理。🤖✨ 我们将首先设置数据库并创建 API,然后将这些元素与 Crew AI 集成,为新闻机构开发自定义工具和 AI 代理。
🔥 您将学到什么:为体育新闻设置自己的数据库。开发与数据库交互的 API。在 Crew AI 中创建自定义工具以利用您的 API。为体育领域的研究和新闻构建 AI 代理。
股票分析人工智能团队:CrewAI 旨在促进角色扮演 AI 代理的协作。在此示例中,这些代理共同提供完整的股票分析和投资建议
默认使用 GPT-4,因此您需要具备 GPT-4 的访问权限来运行它。
免责声明: 这将使用 GPT-4,除非您更改设置,否则将花费您费用。
.env.example 并设置 Browseless、Serper、SEC-API 和 OpenAI 的环境变量。poetry install --no-root。python main.py 并输入您的想法。python main.py 并在提示时输入要分析的公司。脚本将利用 CrewAI 框架来分析公司并生成详细报告。./main.py:主脚本文件。./stock_analysis_tasks.py:包含任务提示的主要文件。./stock_analysis_agents.py:包含代理创建的主要文件。./tools:包含代理使用的工具类。CrewAI 允许您将 llm 参数传递给代理构造函数,使其成为代理的大脑。因此,将代理更改为使用 GPT-3.5 而不是 GPT-4 只需在您希望使用该 LLM 的代理(在 main.py 中)传递该参数。
from langchain.chat_models import ChatOpenAI
llm = ChatOpenAI(model='gpt-3.5') # 加载 GPT-3.5
def local_expert(self):
return Agent(
role='最佳金融分析师',
goal="""以您的财务数据和市场趋势分析
给所有客户留下深刻印象""",
backstory="""最有经验的金融分析师,拥有丰富的股票市场分析和
投资策略经验,正在为一个非常重要的客户工作。""",
verbose=True,
llm=llm, # <----- 在这里传递我们的 llm 引用
tools=[
BrowserTools.scrape_and_summarize_website,
SearchTools.search_internet,
CalculatorTools.calculate,
SECTools.search_10q,
SECTools.search_10k
]
)CrewAI 框架支持与本地模型(如 Ollama)的集成,以增强灵活性和定制化。这使您能够利用自己的模型,这对于专门任务或数据隐私问题特别有用。
Observation 作为停用词,并调整 top_p 和 temperature。from langchain.llms import Ollama
ollama_openhermes = Ollama(model="openhermes")
# 将 Ollama 模型传递给代理:在 CrewAI 框架内创建代理时,您可以将 Ollama 模型作为参数传递给代理构造函数。例如:
def local_expert(self):
return Agent(
role='最佳金融分析师',
goal="""以您的财务数据和市场趋势分析
给所有客户留下深刻印象""",
backstory="""最有经验的金融分析师,拥有丰富的股票市场分析和
投资策略经验,正在为一个非常重要的客户工作。""",
verbose=True,
llm=ollama_openhermes, # 在这里传递 Ollama 模型
tools=[
BrowserTools.scrape_and_summarize_website,
SearchTools.search_internet,
CalculatorTools.calculate,
SECTools.search_10q,
SECTools.search_10k
]
)下面提供官方的文档介绍、相关资源、部署教程等,进一步支撑你的行动,以提升本文的帮助力。
官方教程
要开始使用CrewAI,请按照以下简单步骤操作:
pip install crewai如果您希望安装带有可选功能(包括代理额外工具)的‘crewai’包,可以使用以下命令:pip install 'crewai[tools]'。此命令安装基本包并添加需要更多依赖项才能运行的额外组件。
pip install 'crewai[tools]'import os
from crewai import Agent, Task, Crew, Process
from crewai_tools import SerperDevTool
os.environ["OPENAI_API_KEY"] = "YOUR_API_KEY"
os.environ["SERPER_API_KEY"] = "Your Key" # serper.dev API key
# 您可以选择通过Ollama使用本地模型。更多信息请参阅https://docs.crewai.com/how-to/LLM-Connections/
# os.environ["OPENAI_API_BASE"] = 'http://localhost:11434/v1'
# os.environ["OPENAI_MODEL_NAME"] ='openhermes' # 根据可用模型进行调整
# os.environ["OPENAI_API_KEY"] ='sk-111111111111111111111111111111111111111111111111'
# 您可以传递一个可选的llm属性来指定您想要使用的模型。
# 它可以是通过Ollama / LM Studio的本地模型,或是远程模型
# 如OpenAI、Mistral、Antrophic等(https://docs.crewai.com/how-to/LLM-Connections/)
#
# import os
# os.environ['OPENAI_MODEL_NAME'] = 'gpt-3.5-turbo'
#
# 或
#
# from langchain_openai import ChatOpenAI
search_tool = SerperDevTool()
# 定义具有角色和目标的代理
researcher = Agent(
role='高级研究分析师',
goal='发现AI和数据科学的最新发展',
backstory="""你在一家领先的科技智库工作。
你的专长在于识别新兴趋势。
你擅长解析复杂数据并提出可行的见解。""",
verbose=True,
allow_delegation=False,
# 您可以传递一个可选的llm属性来指定您想要使用的模型。
# llm=ChatOpenAI(model_name="gpt-3.5", temperature=0.7),
tools=[search_tool]
)
writer = Agent(
role='科技内容策划师',
goal='撰写引人入胜的科技进展内容',
backstory="""你是一位著名的内容策划师,以洞察力和引人入胜的文章而闻名。
你将复杂概念转化为引人入胜的叙述。""",
verbose=True,
allow_delegation=True
)
# 为你的代理创建任务
task1 = Task(
description="""对2024年AI的最新进展进行全面分析。
识别关键趋势、突破性技术及潜在行业影响。""",
expected_output="要点形式的完整分析报告",
agent=researcher
)
task2 = Task(
description="""利用提供的见解,撰写一篇引人入胜的博客
文章,突出最重要的AI进展。
你的文章应该既信息丰富又易于理解,面向技术精通的观众。
使其听起来很酷,避免使用复杂的词汇以免听起来像AI。""",
expected_output="至少四段的完整博客文章",
agent=writer
)
# 用顺序流程实例化你的crew
crew = Crew(
agents=[researcher, writer],
tasks=[task1, task2],
verbose=2, # 您可以设置为1或2以不同的日志记录级别
)
# 让你的crew开始工作吧!
result = crew.kickoff()
print("######################")
print(result)除了顺序流程,您还可以使用层级流程,它会自动分配一个经理给已定义的crew,以通过委派和结果验证来正确协调任务的规划和执行。了解更多关于流程的信息。

查看此示例代码或观看下面的视频:

查看此示例代码或观看下面的视频:

[查看此示例代码](https://github.com/jo
aomdmoura/crewAI-examples/tree/main/stock_analysis)或观看下面的视频:

CrewAI支持通过多种连接选项使用不同的LLM。默认情况下,你的代理会在查询模型时使用OpenAI API。然而,还有其他多种方式允许你的代理连接到模型。例如,你可以通过Ollama工具配置你的代理使用本地模型。
请参考连接crewAI到LLMs页面,了解如何配置代理连接到模型。
CrewAI的优势:CrewAI是以生产为目的构建的。它结合了Autogen的对话代理的灵活性和ChatDev的结构化流程方法,但没有僵化性。CrewAI的流程设计动态且适应性强,能够无缝融入开发和生产工作流中。
CrewAI是开源的,我们欢迎贡献。如果你想贡献,请:
poetry lock
poetry installpoetry shellpre-commit installpoetry run pytestpoetry run mypypoetry buildpip install dist/*.tar.gz参考链接: [安装教程]https://www.youtube.com/watch?v=Kbq9m-x7gYU
知音难求,自我修炼亦艰
抓住前沿技术的机遇,与我们一起成为创新的超级个体
(把握AIGC时代的个人力量)
点这里👇关注我,记得标星哦~
一键三连「分享」、「点赞」和「在看」
科技前沿进展日日相见 ~