
2025年值得入坑AI Agent的五大框架
Multi-Agent 框架允许我们为 AI Agent 添加自定义工具,并与外部系统进行无缝集成,执行如在线支付、网页搜索、API 调用、数据库查询、视频观看、邮件发送等操作。
Agent 目前我见到的最多的翻译是“智能体”,但是直译是“代理”。
那 Agentic 又要翻译成什么呢?我感觉“代理型”这样的词更合适。
所以为了不让读者混淆,我在本文直接用英文表示。
随着 LLM 的发展,AI 的能力已不再局限于简单的任务自动化,它们能够处理复杂且连续的工作流。例如,我们可以使用 LLM 来创建智能助手,自动代替用户在电商平台上订购商品,并安排配送。这些基于LLM的助手被称为 AI Agent。
说的具体一点,AI Agent 是一个由 LLM 驱动的智能助手,能够根据预设的任务和工具,帮助完成特定的工作。在最基础的形式下,AI Agent 具备以下几个关键特性:
-
内存管理:AI Agent 可以存储并管理与用户的交互记录。
-
外部数据源交互:能够与外部系统进行通信,获取数据或完成任务。
-
函数执行:通过调用函数来完成实际工作。
举个例子,AI Agent 可以执行以下任务:
-
餐厅预订:比如,在餐厅系统中的 AI Agent 可以帮助用户在线预订座位、比较不同餐厅,并通过语音互动帮用户直接呼叫餐厅。
-
虚拟协作同事:AI Agent 可以作为你项目中的“小秘”,与用户协作完成特定的任务。
-
自动化日常操作:AI Agent 能够处理多个步骤的操作,甚至完成日常电脑操作。比如,Replit Agent 可以模拟开发人员在开发环境中执行的操作,自动安装依赖和编辑代码;Anthropic 的 Computer Use Agent 可以指导 Claude 以用户常用的方式操作计算机,包括移动鼠标、点击按钮、输入文本等。
虽然我们可以使用 Python、React 等技术栈从零开始构建 AI Agent,但借助像 Phidata、OpenAI Swarm、LangGraph、Microsoft Autogen、CrewAI、Vertex AI 和 Langflow 等 Multi-Agent(多代理)框架,开发过程会变得更加高效。这些框架提供了预先打包的工具和功能,从而帮助我们快速构建 AI 助手。
那么,使用这些框架的优势在哪里呢?
-
选择合适的LLM:你可以根据具体的应用场景,使用 OpenAI、Anthropic、xAI、Mistral 等 LLM,或像 Ollama 和 LM Studio 等工具来构建 AI Agent。
-
添加知识库:这些框架允许你将特定文档(如 json、pdf 文件或网站)添加为知识库,帮助 AI Agent 获取并理解信息。
-
内置记忆功能:无需自己构建复杂的系统来存储和管理聊天记录或个性化对话。框架自带的记忆功能可以帮助 AI Agent 长时间记住并查阅先前的交互内容。
-
自定义工具:Multi-Agent 框架允许我们为 AI Agent 添加自定义工具,并与外部系统进行无缝集成,执行如在线支付、网页搜索、API 调用、数据库查询、视频观看、邮件发送等操作。
-
简化工程挑战:这些框架帮助我们简化复杂的工程任务,比如知识和记忆管理,从而在开发 AI 产品时减少技术难度。
-
加速开发与部署:框架提供了构建 AI 系统所需的工具和基础设施,帮助我们更快速地开发和将 AI 系统部署到云平台(如 AWS)。
通过这些框架,我们可以更轻松地开发出高效、智能的 AI Agent,提升产品开发的速度和质量。
接下来,我们将深入了解构建 AI Agent 的五大平台,帮助你快速上手,打造属于自己的 AI 助手!
Agent 的基本结构
下面的代码片段展示了一个最简单的 AI Agent。 AI Agent 通过使用语言模型来解决问题。AI Agent 的定义可能包括选择的大型或小型语言模型、内存、存储、外部知识源、向量数据库、指令、描述、名称等。
例如,像 Windsurf 这样的现代 AI Agent 可以帮助任何人快速生成、运行、编辑、构建和部署全栈 Web 应用程序。它支持多种 Web 技术和数据库的代码生成与应用构建,如 Astro、Vite、Next.js、Superbase 等。
企业中 Multi-Agent 的应用案例
Agentic AI 系统在企业环境中有着广泛的应用,尤其是在执行自动化和重复任务方面。以下是 AI Agent 在企业领域中有用的关键应用场景:
-
呼叫与其他分析:分析参与者的视频通话,获得人们的情感、意图和满意度等洞察。Multi-Agent 系统擅长分析和报告用户的意图、人口统计和互动。它们的分析/报告能力帮助企业锁定目标客户或市场。
-
呼叫分类:根据参与者的网络带宽和强度自动对呼叫进行分类,以便高效处理。
-
市场倾听:监控和分析市场应用中的客户情感。
-
调查与评论分析:利用客户反馈和调查数据获取洞察并改善客户体验。
-
差旅与费用管理:自动化费用报告、跟踪和审批。
-
对话式银行:通过 AI 驱动的聊天或语音助手帮助客户进行银行业务。
-
通用AI支持聊天机器人:客户支持 Agent 可以处理客户投诉、排除故障,并将复杂任务委派给其他 Agent。
-
金融:金融 Agent 可以用于预测经济、股票和市场趋势,并提供切实可行的投资建议。
-
营销:企业的营销团队可以利用 AI Agent 为不同目标受众创作个性化内容和广告文案,从而提高转化率。
-
销售:AI Agent 可以帮助分析系统中的客户互动模式,帮助销售团队聚焦于潜在客户的转化。
-
技术:在技术行业,AI 编码 Agent 可以帮助开发人员和工程师通过加速代码完成、生成、自动化、测试和修复错误来提高工作效率。
2024 五大 Agent 框架
你可以使用多个 Python 框架来创建并将 Agent 添加到应用程序和服务中。这些框架包括无代码(可视化 AI Agent 构建器)、低代码和中代码工具。现在我将向你介绍 2024 年五个顶尖的的基于 Python 的 Agent 构建器,你可以根据自己的业务需求进行自由选择。
1 Phidata
Phidata 是一个基于 Python 的框架,可将 LLM 转化为 AI 产品中的 Agent。它支持主流大厂的闭源和开源 LLM,如 OpenAI、Anthropic、Cohere、Ollama 和 Together AI 等。通过其对数据库和向量存储的支持,我们可以轻松地将 AI 系统连接到 Postgres、PgVector、Pinecone、LanceDb 等。使用 Phidata,我们可以构建基础 Agent,也可以通过函数调用、结构化输出和微调来创建高级 Agent。
Phidata 的主要功能
-
内置 Agent UI:Phidata 提供了一个现成的用户界面,用于本地或云端运行 Agent 项目,并在后台管理会话。
-
部署:你可以将 Agent 发布到 GitHub 或任何云服务,也可以连接 AWS 账户将其部署到生产环境。
-
监控关键指标:提供会话快照、API 调用、token 使用情况,并支持设置调整和 Agent 改进。
-
模板支持:通过预配置的代码库模板,加速 AI 代理的开发和生产过程。
-
支持 AWS:Phidata 与 AWS 无缝集成,可以在 AWS 账户上运行完整的应用程序。
-
模型独立性:支持使用来自 OpenAI、Anthropic、Groq 和 Mistral 等先进的模型和 API 密钥。
-
构建 Multi-Agent:使用 Phidata 可以创建一个 Agent 团队,让它们相互传递任务并协作完成复杂任务。Phidata 会在后台无缝处理 Agent 的协调工作。
现在我将向你展示如何使用 Phidata 框架和 OpenAI 的 LLM 在 Python 中构建一个查询 Yahoo Finance 的金融数据的基本 AI Agent。该 Agent 旨在通过 Yahoo Finance 汇总各公司分析师的推荐意见。
安装依赖项:
新建一个 financial_agent.py:
import openai``from phi.agent import Agent``from phi.model.openai import OpenAIChat``from phi.tools.yfinance import YFinanceTools``from dotenv import load_dotenv``import os`` ``# 从 .env 文件加载环境变量``load_dotenv()`` ``# 从环境中获取 API 密钥``openai.api_key = os.getenv("OPENAI_API_KEY")`` ``# 初始化 Agent` `finance_agent = Agent(` `name="Finance AI Agent",` `model=OpenAIChat(id="gpt-4o"),` `tools=[` `YFinanceTools(` `stock_price=True,` `analyst_recommendations=True,` `company_info=True,` `company_news=True,` `)` `],` `instructions=["Use tables to display data"],` `show_tool_calls=True,` `markdown=True,``)`` ``# 输出分析师对 NVDA 的推荐摘要``finance_agent.print_response("Summarize analyst recommendations for NVDA", stream=True)``
上述代码:
-
导入模块和加载 API 密钥
首先,导入所需的模块和包,并通过 .env 文件加载 OpenAI 的 API 密钥。这种加载 API 密钥的方式同样适用于其他模型提供商,如 Anthropic、Mistral 和 Groq。 -
创建代理
使用 Phidata 的 Agent 类创建一个新的 Agent,并指定其独特的功能和特性,包括模型、工具、指令等。 -
打印响应
调用 print_response 方法输出代理对问题的响应,并指定是否以流式方式显示(stream=True)。
2 Swarm
Swarm 是 OpenAI 最近发布的一种开源实验性 Agent 框架,是一种轻量级的 Multi-Agent 编排框架。
注意:Swarm 仍处于实验阶段。可用于开发和教育目的,但不建议用于生产环境。最新的信息可以去参考官方仓库:
https://github.com/openai/swarm
Swarm 使用 Agents 和 Handoffs(交接) 作为抽象概念,用于 Agent 的编排和协调。它是一种轻量级框架,便于测试和管理。Swarm 的 Agent 可以配置工具、指令和其他参数,以执行特定任务。
除了其轻量和简单的架构,Swarm 还具备以下关键特性:
-
对话交接:Swarm 支持构建 Multi-Agent 系统,一个 Agent 可以在任意时间将对话交接给其他 Agent。
-
可扩展性:凭借其简化的交接架构,Swarm 易于构建能够支持数百万用户的 Agent 系统。
-
可扩展性:Swarm 设计上具有很高的可定制性,可用于创建完全定制化的 Agent 体验。
-
内置检索系统和内存处理:Swarm 内置了存储和处理对话内容的功能。
-
隐私保护:Swarm 主要在客户端运行,并且不会在调用之间保留状态,极大地提高了数据隐私性。
-
教育资源:Swarm 提供了一系列基础到高级的 Multi-Agent 应用示例,可供开发者测试和学习。
接下来,我给你演示一下如何使用 Swarm:
from swarm import Swarm, Agent`` ``# 初始化 Swarm 客户端``client = Swarm()``mini_model = "gpt-4o-mini"`` ``# 定义协调函数,用于将任务交接给 Agent B``def transfer_to_agent_b():` `return agent_b`` ``# 定义 Agent A``agent_a = Agent(` `name="Agent A",` `instructions="You are a helpful assistant.",` `functions=[transfer_to_agent_b],``)`` ``# 定义 Agent B``agent_b = Agent(` `name="Agent B",` `model=mini_model,` `instructions="You speak only in Finnish.",``)`` ``# 运行 Agent 系统并获取响应``response = client.run(` `agent=agent_a,` `messages=[{"role": "user", "content": "I want to talk to Agent B."}],` `debug=False,``)`` ``# 打印 Agent B 的响应``print(response.messages[-1]["content"])
上述代码
- 初始化
-
Swarm 用于创建一个客户端实例。
-
Agent 定义了 Agent 的名称、功能和语言模型(如 gpt-4o-mini)。
- 交接逻辑
transfer_to_agent_b 是一个协调器函数,将任务从 agent_a 转移到 agent_b。
- 运行代理系统
client.run() 执行代理系统,传入 messages 和 debug 参数,用于跟踪任务执行过程。
如果将 agent_b 的指令中语言更改为其他语言(如英语、瑞典语、芬兰语),将会得到相应语言的响应结果。
3 CrewAI
CrewAI 是最受欢迎的基于 Agent 的 AI 框架之一,可快速构建 AI Agent 并将其集成到最新的 LLM 和代码库中。像 Oracle、Deloitte、Accenture 等大公司都在使用并信任 CrewAI。
与其他基于 Agent 的框架相比,CrewAI 功能更加丰富,特性更加多样。
-
可扩展性
支持集成 700 多种应用程序,包括 Notion、Zoom、Stripe、Mailchimp、Airtable 等。
-
工具
-
开发者可以使用 CrewAI 框架从零开始构建 Multi-Agent 自动化系统。
-
设计师可以通过其 UI Studio 和模板工具,在无代码环境中创建功能齐全的 Agent。
-
部署
你可以使用自己喜欢的部署方式,将开发的 Agent 快速迁移到生产环境。
-
Agent 监控
像 Phidata 一样,CrewAI 提供直观的仪表盘,用于监控 Agent 的进度和性能。
-
内置训练工具
使用 CrewAI 的内置训练和测试工具,提高 Agent 的性能和效率,并确保其响应质量。
首先我们需要安装 CrewAI:
上述命令会安装 CrewAI 及其工具,并验证安装是否成功。
安装完成后,可运行以下命令创建一个新的 CrewAI 项目:
运行该命令后,系统会提示我们从以下模型提供商列表中选择一个,例如 OpenAI、Anthropic、xAI、Mistral 等。选择提供商后,还可以从列表中选择具体模型,例如 gpt-4o-mini。
以下命令可用于创建 Multi-Agent 系统:
完整的 CrewAI 应用已上传到 GitHub 仓库,可通过以下命令下载并运行:
https://github.com/GetStream/stream-tutorial-projects/tree/main/AI/Multi-Agent-AI
运行后,你将看到类似以下的响应结果:
4 Autogen
Autogen 是一个开源框架,用于构建 Agent 系统。借助该框架,可以创建 Multi-Agent 协作和 LLM 工作流。
Autogen 具备以下关键功能:
-
跨语言支持
使用 Python 和 .NET 等编程语言构建 Agent。
-
本地 Agent
可在本地运行和实验 Agent,以确保更高的隐私性。
-
异步消息通信
使用异步消息进行 Agent 之间的通信。
-
可扩展性
支持开发者构建分布式 Agent 网络,适用于不同组织之间的协作。
-
可定制性
通过其可插拔组件,自定义构建完全个性化的 Agent 系统体验。
下面的代码块构建了一个简单的 AI 天气 Agent 系统:
import asyncio``from autogen_agentchat.agents import AssistantAgent``from autogen_agentchat.task import Console, TextMentionTermination``from autogen_agentchat.teams import RoundRobinGroupChat``from autogen_ext.models import OpenAIChatCompletionClient`` ``import os``from dotenv import load_dotenv`` ``load_dotenv()`` ``# 定义工具``async def get_weather(city: str) -> str:` `return f"The weather in {city} is 73 degrees and Sunny."`` ``async def main() -> None:` `# 定义 Agent` `weather_agent = AssistantAgent(` `name="weather_agent",` `model_client=OpenAIChatCompletionClient(` `model="gpt-4o-mini",` `api_key=os.getenv("OPENAI_API_KEY"),` `),` `tools=[get_weather],` `)`` ` `# 定义终止条件` `termination = TextMentionTermination("TERMINATE")`` ` `# 定义 Agent 团队` `agent_team = RoundRobinGroupChat([weather_agent], termination_condition=termination)`` ` `# 运行团队并将消息流至控制台` `stream = agent_team.run_stream(task="What is the weather in New York?")` `await Console(stream)`` ``asyncio.run(main())``
上述代码
-
工具定义:get_weather 是一个示例工具函数,返回城市天气信息。
-
代理定义:使用 AssistantAgent 定义 Agent,并设置模型客户端为 OpenAI 的 GPT-4o-mini。API 密钥从 .env 文件中加载。
-
终止条件:通过 TextMentionTermination 定义终止条件,当提及 “TERMINATE” 时终止任务。
-
Agent 团队:使用 RoundRobinGroupChat 创建一个 Agent 团队,以轮询方式分配任务。
运行此代码后,控制台将显示类似于以下的输出结果:
5 LangGraph
LangGraph 是基于节点的 AI 框架,专为构建处理复杂任务的 Multi-Agent 系统而设计。作为 LangChain 生态系统的一部分,LangGraph 是一种图结构的 Agent 框架。用户可以通过节点和边来构建线性、层次化和顺序化的工作流。其中,**节点(node)**表示 Agent 的动作,**边(edge)**表示动作之间的转换,**状态(state)**则是 LangGraph Agent 的另一重要组成部分。
LangGraph 的优势和主要功能
-
免费开源
LangGraph 是一个免费的库,遵循 MIT 开源许可证。
-
流式支持
提供逐字流式支持,展示 Agent 的中间步骤和思考过程。
-
部署选项
支持多种大规模部署方式,可通过 LangSmith 监控 Agent 性能。企业版选项允许完全在用户自有基础设施上部署 LangGraph。
-
企业适配
Replit 使用 LangGraph 为其 AI 编码 Agent 提供支持,证明了 LangGraph 的企业适用性。
-
高性能
在处理复杂的 Agent 工作流时,不会增加代码负担。
-
循环与可控性
可以轻松定义包含循环的 Multi-Agent 工作流,并对 Agent 的状态进行完全控制。
-
持久化
LangGraph 会在图中每一步操作后自动保存 Agent 状态,还支持在任意点暂停和恢复图的执行。
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。
这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费
】
更多推荐
所有评论(0)